Size: a a a

Android Developers

2021 March 02

PE

Pavel Erokhin in Android Developers
Jorik Fat
если не ошибаюсь, object все время висит в памяти как static
ну не совсем, точнее его экземпляр в статик поле INSTANCE
источник

JF

Jorik Fat in Android Developers
Pavel Erokhin
ну не совсем, точнее его экземпляр в статик поле INSTANCE
суть в том, что он никогда не выгружается
источник

D

Denis in Android Developers
Pavel Erokhin
в композе вообще пиздато с этим, тупа Dialog() { // content  }
пфф  
    AlertDialog.Builder(context).create().show()
источник

JF

Jorik Fat in Android Developers
т.е. по приложению 10 разных диалогов стартанули - они все 10 и остались в памяти висеть
источник

K

Kasem in Android Developers
Denis
пфф  
    AlertDialog.Builder(context).create().show()
зачем, лишний код на бумаге. А ну Если в классе то да, сорян. Подумал писать там где зовешь
источник

PE

Pavel Erokhin in Android Developers
Jorik Fat
суть в том, что он никогда не выгружается
ну можно свой сделать который сборщик мусора когда-нибудь выгрузит)

class WeakSingleton {
   companion object {
       val INSTANCE = WeakReference(WeakSingleton())
   }
}

ну или если не критично состояние диалога

class WeakSingleton {
   companion object {
       val INSTANCE: WeakReference<WeakSingleton> = WeakReference(WeakSingleton())
           get() = if (field.get() == null) WeakReference(WeakSingleton()) else field
   }
}
источник

JF

Jorik Fat in Android Developers
Pavel Erokhin
ну можно свой сделать который сборщик мусора когда-нибудь выгрузит)

class WeakSingleton {
   companion object {
       val INSTANCE = WeakReference(WeakSingleton())
   }
}

ну или если не критично состояние диалога

class WeakSingleton {
   companion object {
       val INSTANCE: WeakReference<WeakSingleton> = WeakReference(WeakSingleton())
           get() = if (field.get() == null) WeakReference(WeakSingleton()) else field
   }
}
это ну вот это в разы проще чем
new WarningDialog().show()
источник

D

Denis in Android Developers
Kasem
зачем, лишний код на бумаге. А ну Если в классе то да, сорян. Подумал писать там где зовешь
от задач же зависит. это откроет дефолтный диалог. хочешь кастом - создавай класс или мудри что-нибудь еще. вариантов тысячи. можешь повесить слушатель лайвДаты в базовом активити и показывать оттуда алерт, не пересоздавая его, а просто вызывая show/dismiss. На что фантазии хватит
источник

PE

Pavel Erokhin in Android Developers
Jorik Fat
т.е. по приложению 10 разных диалогов стартанули - они все 10 и остались в памяти висеть
у тебя больше экземпляров накопиться, чем копеечных обджектов)
источник

JF

Jorik Fat in Android Developers
Pavel Erokhin
у тебя больше экземпляров накопиться, чем копеечных обджектов)
экземпляров чего?
источник

K

Kasem in Android Developers
Denis
от задач же зависит. это откроет дефолтный диалог. хочешь кастом - создавай класс или мудри что-нибудь еще. вариантов тысячи. можешь повесить слушатель лайвДаты в базовом активити и показывать оттуда алерт, не пересоздавая его, а просто вызывая show/dismiss. На что фантазии хватит
последний чот кринж какой-то
источник

PE

Pavel Erokhin in Android Developers
Jorik Fat
экземпляров чего?
Экземпляров классов, вообще любых
источник

PE

Pavel Erokhin in Android Developers
Ничего такого если ты диалог в компаньон обджект реализуешь
источник

JF

Jorik Fat in Android Developers
Pavel Erokhin
Экземпляров классов, вообще любых
какая разница что писать object или custom?
источник

PE

Pavel Erokhin in Android Developers
не понял "какая разница?"
источник

K

Kasem in Android Developers
Jorik Fat
какая разница что писать object или custom?
зачем создавать новые экземпляры когда можно один раз создать и ею пользоваться
источник

D

Denis in Android Developers
Kasem
последний чот кринж какой-то
с чего вдруг?
источник

JF

Jorik Fat in Android Developers
Kasem
зачем создавать новые экземпляры когда можно один раз создать и ею пользоваться
может потому что object это синглтон, и соответственно каждый незакрытый диалог будет в себе еще дополнительно держать context?
источник

JF

Jorik Fat in Android Developers
или тоже мелочи?
источник

K

Kasem in Android Developers
Jorik Fat
может потому что object это синглтон, и соответственно каждый незакрытый диалог будет в себе еще дополнительно держать context?
а в чём проблема ? Так ведь же дешевле обходиться
источник