Я заметил, что синтетические свойства Kotlin не работают на CustomViews. Я не знаю, если это предназначено или нет. При чтении сгенерированного класса java я вижу, что кеш присутствует:Kotlin Синтетические свойства
private HashMap _$_findViewCache;
, но он никогда не используется. Вместо этого, когда требуется просмотр, вызывается findViewById
. Это поведение по умолчанию? Синтетические свойства действуют только на действия и фрагменты?
Поля '_ $ _ findViewCache' автоматически генерируются в' Activity' и 'Fr agment'. У вас есть '_ $ _ findViewCache' внутри пользовательского класса View? – yanex
есть. генерируется код (есть карта и функция кеша). Но доступ к свойству через syntehetic переводится в байтовый код findViewById (я вижу его через опцию «Kotlin Bytecode») –
это очень важно, если это ошибка. особенно в представлениях, которые выполняют анимацию, в которой findViewbyId вызывается так много раз. Дайте мне знать, если вам нужна дополнительная информация –