
Konstantins
06.09.2016
12:43:07

Иван
06.09.2016
12:43:10
Мне хватило ордеринг проблем с релативом в свое время

Konstantins
06.09.2016
12:44:01
вот, кто-то знает нормальный способ выровнить вьюху между двумя так, чтобы они друг на друга не наезжали, если места нету, а разъезжались, скажем, внутри сколлвью
?

Google

Иван
06.09.2016
12:45:15
Не очень понял что ты хотеть

Alexey
06.09.2016
12:45:23

Konstantins
06.09.2016
12:45:35
есть три вьюхи
1,2,3

Alexey
06.09.2016
12:45:45
и ты хочешь чтобы они по ровну поделили ширину?

Konstantins
06.09.2016
12:46:02
расположены в столбик
2ая находится по центру между двумя
по вертикали, а не горизонтали

Alexey
06.09.2016
12:46:31
а, то есть по высоте

Konstantins
06.09.2016
12:46:34
ага
всё нормально до тех пор, пока места во вьюпорте хватаем всем троим

Grigoriy
06.09.2016
12:46:48

Roman
06.09.2016
12:46:50

Google

Иван
06.09.2016
12:47:22
Почему когда начинает спрашивать один, сразу обвал ото всех

Alexey
06.09.2016
12:47:23
ну я пока тоже забил, юзаю по старинке ретролямбду

Иван
06.09.2016
12:47:31

Konstantins
06.09.2016
12:47:54
Дальше
если размера вьюхам не хватает, тогда 2ая наплывает на 3ю

Иван
06.09.2016
12:48:14

Alexey
06.09.2016
12:48:25
поставить центральную вьюху centerVertical

Roman
06.09.2016
12:48:43
нельзя)
вроде же можно для debug build type-а просто вытавить другой minSDK =21 и получить очень быструю сборку с мультидекс. я пробовал так. но у меня основной девайс для тестов на 4.4. поэтому отказался от этого варианта в итоге

Konstantins
06.09.2016
12:48:43

Alexey
06.09.2016
12:48:45
и другие одна над этой, другая под ней

Иван
06.09.2016
12:48:46
У него СкроллВью замешан
Со СкроллВью сложнее

Alexey
06.09.2016
12:49:03
только размеры придется задать в dp наверно

Konstantins
06.09.2016
12:49:06

Alexey
06.09.2016
12:49:24
не уверен, но попробуй

Иван
06.09.2016
12:49:27
По факту надо замерять нутро, и если оно меньше высоты, делать жесткий размер по высоте, иначе врап_контент

Konstantins
06.09.2016
12:49:46

Alexey
06.09.2016
12:49:49
а без дп?
если никак, то писать кастомный лаяут свой

Alexander
06.09.2016
12:49:54

Google

Иван
06.09.2016
12:50:02
Проблема в том, что СкроллВью всегда воспринимает контент как врап_контент

Alexander
06.09.2016
12:50:03

Иван
06.09.2016
12:50:35
Стоп
У СкроллВью есть помоему параметр fillViewport

Alexey
06.09.2016
12:50:54

Konstantins
06.09.2016
12:51:15

Иван
06.09.2016
12:51:23
Но ты пробовал?

Konstantins
06.09.2016
12:51:52
да

Alexander
06.09.2016
12:51:54

Konstantins
06.09.2016
12:52:19
сейчас я захардкодил паддингБоттом 2ой вьюхе, чтобы она не наплывала на 3ю

Иван
06.09.2016
12:52:38
Погоди я попробую поиграться в редакторе

Konstantins
06.09.2016
12:52:40
работает, но эта магия мне дико не нравится

Alexey
06.09.2016
12:54:41

Alexander
06.09.2016
12:55:24
только перед релизом на старых версиях потестить не забудь сборку, а то может привалить кучу интересностей
и линтовые правила чекай

Konstantins
06.09.2016
12:55:35

Alexey
06.09.2016
12:59:09

Иван
06.09.2016
12:59:25
В итоге Студия глюкнула. Пришлось рестартить

Alexey
06.09.2016
12:59:26
от ViewGroup наследоваться

Иван
06.09.2016
13:00:33
Про onMeasure не забудь

Google

Konstantins
06.09.2016
13:02:13
а внутрь типа всегда требовать три вьюхи?

Alexey
06.09.2016
13:03:28
место
например

Konstantins
06.09.2016
13:04:10
ага, идея неплохая

Alexey
06.09.2016
13:04:15
можно просто лаяут который по ровну делит место
на всех чайлдов

Konstantins
06.09.2016
13:04:21
а одну ровно в центр пихать

Admin
ERROR: S client not available

Konstantins
06.09.2016
13:04:46
вьюхи могут быть разных размеров
а надо, чтобы центральная была ровно между двумя

Alexey
06.09.2016
13:05:13
ну тогда заточи под 3 вьюхи
и меньше
типо не больше 3-х

Иван
06.09.2016
13:05:31
Да, я боюсь ему свой лейаут надо пилить

Alexey
06.09.2016
13:06:05

Konstantins
06.09.2016
13:06:09
Может, я не первый, кому подобная штуковина понадобилась. Попробую в интернетах поискать для начала

Иван
06.09.2016
13:06:44

Google

Alexey
06.09.2016
13:07:04

Иван
06.09.2016
13:07:31
Вот честно, очень не хватает в Андроиде референсных ссылок на размеры родителя для таких параметров как например minHeight
Уж все ресурсы кишат референсами, а тут нет

Alexey
06.09.2016
13:07:50
в далеком прошлом, эдак году в 2012, я боялся писать кастомные вьюхи думая что это сложно, я кастылял такие штуки в релатив лаяут и задавал чайлдов в dp

Иван
06.09.2016
13:08:05

Alexey
06.09.2016
13:08:23

Yura
06.09.2016
13:16:22
посоны, а можно как-то задетектить, что код выполняется в java/android тесте? без простого public static boolean

Илья
06.09.2016
13:17:48

Alexey
06.09.2016
13:18:23

Fedor
06.09.2016
13:18:49

Yura
06.09.2016
13:19:04
почему?
есть же для вьюх флаг, чтобы определять в runtime мы или в дизайне

Fedor
06.09.2016
13:19:55
смысл тогда тестрирования, если внутри будет накостылено для прохождения теста
превью все таки на jvm запускается, видать там есть нюансы
если нужно заткнуть какой-нить компонент - то для этого надо мокать

Yura
06.09.2016
13:22:36
я думал про это. Но смотри какая ситуация, делаю я тест UI, а у espresso с анимацией проблемы, т.е. если есть на активити progressbar, всё встаёт (слово которое ты любишь :) ) Одно из решений просто поставить для progressbar для непрерывного режима изображение не анимированное, в итоге это никак не влияет на логику, но при этом espresso начинает работать
про мок тоже думал, но не знаю как провернуть
а так был бы мой прогрессбак и в ctor я просто менял бы drawable в зависимости от ситуации
хотя тут тоже минус, во всех местах надо менять progressbar
я просто не вижу решения простого

Fedor
06.09.2016
13:29:09
гредлом в билдконфиг писать пропертю
от проперти animation_duration выставлять в 0

Yura
06.09.2016
13:31:31
Слушай, а такой вариант пройдет - по идее у View есть какой-то метод (не ctor) который вызывается однократно, можно ли применить как-то мокито, чтобы этот метод вызвался, плюс какой-то мой код?