Volodymyr
и не панацея
Konstantin
наследование имеет свои плюсы
Сергій
Например?
Timofey
привет всем) такой вопрос. Решили использовать в приложении с BottomNavigationView навигацию между фрагментами при помощи графа, В итоге все работает, но при переключении в боттомбаре между вкладками они переключаются с убогой фейдовой анимацией. кто-нибудь может подсказать, ее можно как то переопределить?
Dmytro
а как же парадигма "Правильно делай - правильно будет" ? Если твоя задача решается через наследование и ты это правильно сделаешь, то го делай.
Volodymyr
какие?
Например ты создаешь лишние обьекты, которых может быть дохера, а также связанность
Mike
Например ты создаешь лишние обьекты, которых может быть дохера, а также связанность
производительность — принимается, можно писать любой говнокод чтобы быстрее работало. А что со связанностью?
Konstantin
инкапсуляция алгоритма в суперклассе, template method
Konstantin
тот самый пресловутый viewholder - это он и есть
Volodymyr
производительность — принимается, можно писать любой говнокод чтобы быстрее работало. А что со связанностью?
При наследование у тебя отношение 1:1, при композиции 1:many, т.е один и тот же обьект может использоваться для композиции во многих местах, при любых изменениях обьекта все которые его используют будут страдать
Mike
инкапсуляция алгоритма в суперклассе, template method
template method — прикольный частный случай наследования, замена функциональной композиции
Volodymyr
так неизменяемость решает проблему
имеется в ввиду если тебе например в обьект которые используется для композиции, нужно передать новое поле в конструктор или в метод, и вот у тебя этот обьект используется в 5-6 местах, в трех из мест этот обьект нет возможности/или просто сложно, и тут начинается самое веселое
Konstantin
просто слово favor опустили
Konstantin
favor composition over inheritance, а не replace inheritance with composition
Andrew
Коллеги, где лучше хранить ключи для SSL (файл p12), в assets или res/raw?
Tishka17
Лучше их генерировать при старте
Tishka17
Кстати, чужие ресурсы можно читать, хз насчёт чужих ассетов
Tishka17
Но АПК всегда могут вытащить
Andrew
Лучше их генерировать при старте
Их нельзя генерировать при старте
Andrew
В контейнере P12 находится сертификат CA
Tishka17
А. Только публичный
Tishka17
Тогда хоть в коде
Andrew
Еще приватный клиентский ключ и сертификат.
Andrew
Просто где безопаснее в raw или assets. Или без разницы?
Tishka17
Предполагаю, что или в ассетах или без разницы
hex
господа, кто имеет опыт работы с материал дезайн? я его не знаю (пока что), но по тз "было бы желательно использовать". Вопрос, я могу написать приложение стандартными средствами, а потом подогнать? Или обязательно сразу?
Mike
Просто где безопаснее в raw или assets. Или без разницы?
нигде не безопаснее, распространителю и пользователю эти файлы доступны
Сергей
Кто нибудь знает, можно ли использовать @SerializedName("response.list") как то так, чтобы попадать в вложенные объекты сразу, без создавания промежуточных моделей?
Сергей
спасибо
Кирилл
Подскажите, пожалуйста: есть два эдиттекста, один под другим. При нажатии на энтер фокус от первого переходит ко второму, но курсор устанавливается в начало текста, а не в конец. Как исправить?
Кирилл
Сделал так onFocusChange { _, hasFocus -> if (hasFocus) { setSelection(text.toString().length) } } Нажимаю энтер, фокус переходит с 1 на 2, потом тыкаю вновь на 1 (в середину текста), но фокус автоматом смещается в конец... Не подскажете как пофиксить это?
Konstantin
всмысле чо пофиксить, код же сдвигает курсор в конец
Кирилл
ну так у тебя в коде стоит, (еслиФокус) то переместить курсор на длинну текста
Ну а как сделать лучше всего? Мне нужно чтобы курсор был в конце только при переходе с одного на другой.
Кирилл
Есть вариант добавить setOnKeyListener, который будет ждать нажатие enter-а, но кажется каким-то костылём.
Oleksandr
setOnEditorActionListener
Кирилл
Кирилл
setOnEditorActionListener
А, нет, не помогло.
Ivansuper
А, нет, не помогло.
Тебе нужно по энтеру переходить на другое поле ввода просто?
Ivansuper
Так это стандартный механизм. Просто сделай эдиттекст не мультистрочный
Ivansuper
А вот про положение курсора не очень понятно что ты по итогу хочешь получить
Кирилл
А вот про положение курсора не очень понятно что ты по итогу хочешь получить
Хочу чтобы при переходе с одного на другой при нажатии на энтер курсор был в конце
Nikita
если едит не пустой?
Ivansuper
https://developer.android.com/reference/android/view/View#setOnFocusChangeListener(android.view.View.OnFocusChangeListener)
Ivansuper
Если true, переведи курсор в конец
Ivansuper
Для компактности, можешь отнаследовать EditText и засунуть это внутрь, но без листенера, а переопределив метод View (onFocusChanged или как то так)
Кирилл
Ivansuper
Ну, оно работает ровно так, как ты и потребовал
Ivansuper
А почему с editorAction не работает?
Ivansuper
Там перехват только клавиатуры будет
Ivansuper
Расскажи
Кирилл
Расскажи
Работает не всегда. В первый раз он всё равно при переходе ставит в начало, а в следующие разы в конец.
Ivansuper
Там следует учитывать то, что onEditorAction отработает до перевода фокуса, а onFocusChanged работает после перевода фокуса на целевом контроле
Ivansuper
Можно в ловле фокуса проверить флаг режима сенсорной навигации попробовать
Ivansuper
Не уверен конечно, но можно попробовать
Ivansuper
isFocusableInTouchMode()
Ivansuper
У View
Ivansuper
Соотв. если (предположительно) вернет false, тогда перемещай курсор
Ivansuper
Выведи в лог результат isFocusableInTouchMode(). Интересно узнать его точное поведение на будущее в такой ситуации
Илья
как открыть дебаг сессию для для девайса в котором sdk 23, когда в гредле compileSdkVersion 26 и получаю в отладчике source code does not match bytecode ? если ставить compileSdkVersion 23 то не подгребаются зависимости
Сергій
Илья
сорцы вроде есть, а как заставить идею чтобы смотрела при дебаге в код сорцов 23ей если собирался с 26ой? пока выпилил директорию 26ой и сделал симлинк с 23ей на 26ую сдк но как-то это кажется не совсем правильно
CodeByZen
Подскажите плиз, что я делаю не так... https://pastebin.com/sZ1KEu8E Хочу сделать AlertDialog внутри которого будет ListView Диалог всплывает, но кроме тайтла и кнопки ничего нет.
Anonymous
гайз сорян за тупой вопрос. надо оттестить протектед метод (да, это плохо, но заказчик хочет) в абстрактном классу (фрагменте) соответсвенно пробую создать класс-посредник, где оверрайднуть этот метод
Anonymous
но что-то идёт не так))) где я туплю ?))
Anonymous
Anonymous
я понимаю