Size: a a a

Kotlin Community

2020 November 22

AN

Alexander Nozik in Kotlin Community
🇷🇺🦁📶 Wild One
А если мне нужно было сохранить старое значение, передать его куда-то вместе с новым?
Я не помню уже. А лезть лень.
источник

ЖТ

Жахангир Таиров... in Kotlin Community
В приложении для Android я загружаю данные из базы данных в TableView внутри фрагмента. Но когда я перезагружаю фрагмент, он отображает предыдущие данные. Могу ли я повторно заполнить фрагмент текущими данными вместо предыдущих?
источник

AN

Alexander Nozik in Kotlin Community
Жахангир Таиров
В приложении для Android я загружаю данные из базы данных в TableView внутри фрагмента. Но когда я перезагружаю фрагмент, он отображает предыдущие данные. Могу ли я повторно заполнить фрагмент текущими данными вместо предыдущих?
В @android_ru. Но подозреваю, с такой постановкой и там не помогут.
источник

с#

саша сок #KotlinGang... in Kotlin Community
насколько норм делать что-то такое

class Entity(sessionName: String) : LogFeature by LogFeature.create(sessionName), EventsFeature by EventsFeature

вопрос о том, нормально ли это делать через интерфейсы + companion object'ы
источник

WI

Wuke Igor in Kotlin Community
А можно в tornadofx наложить две тени на один объект с помощью css?
источник

WI

Wuke Igor in Kotlin Community
-fx-effect: dropshadow(gaussian, #BABECC, -12, 0.5, -1, -2, #fff, 12, 0.5, 1, 2); получилось вот так, но вторая часть кода с ошибкой
источник
2020 November 23

АО

Алексей Овсянников... in Kotlin Community
саша сок #KotlinGang
насколько норм делать что-то такое

class Entity(sessionName: String) : LogFeature by LogFeature.create(sessionName), EventsFeature by EventsFeature

вопрос о том, нормально ли это делать через интерфейсы + companion object'ы
Ну два интерфейса, обычно, уже не нормально:)
источник

FS

Fardin Shaikh in Kotlin Community
Hii
источник

с#

саша сок #KotlinGang... in Kotlin Community
Алексей Овсянников
Ну два интерфейса, обычно, уже не нормально:)
там просто набор фич и их реализации, которые могут быть разными у разных entity
источник

АО

Алексей Овсянников... in Kotlin Community
Миксины получаются:) ну я к тому, что понимаю, зачем, но не уверен, что так это делать хорошо. Насчет компаньонов - я бы делал через фабрики, но это может быть вкусовщина
источник

с#

саша сок #KotlinGang... in Kotlin Community
Алексей Овсянников
Миксины получаются:) ну я к тому, что понимаю, зачем, но не уверен, что так это делать хорошо. Насчет компаньонов - я бы делал через фабрики, но это может быть вкусовщина
вообще у меня есть что-то типо главного объекта (не год обджект), который при запуске консольной программы создаётся и дёргаются только его методы, типо

main() {
   for(data in ...)
       val entity = ...
       val job = entity.start(...)
       launch {
           job.join()
           entity.doSmth(...)
       }
   }
}


ну и у меня в этой энтити есть логи и ивенты, но они никак не вынесены и это на данный момент логика самой энтити. сейчас у меня появилась вторая программа и я делаю вторую энтити с совершенно другим поведением, но там мне тоже нужны фичи лога и ивентов.
и интерфейсы тут к сожалению не подойдут, потому что там нельзя делать приватные (или protected, или internal) методы, а ивенты это у меня

private val eventsChannel = ConflatedBroadcastChannel()
val events get() = eventsChannel.asFlow()


а я просто хотел добавить в контекст объекта методы log, sendEvent и пр., чтобы какие-то были приватные, а какие-то публичные.

но буду через helper-обджекты делать
источник

КБ

К Б in Kotlin Community
Всем привет, как сделать проверку расширения типом интерфейса?
источник

КБ

К Б in Kotlin Community
т.е. есть что-то типа: class Some<T> { if (T is IMy) {...} }
источник

с#

саша сок #KotlinGang... in Kotlin Community
можете лайк поставить
https://youtrack.jetbrains.com/issue/KT-43526
источник

AN

Alexander Nozik in Kotlin Community
Оно точно уже было. И это технически надо весь механизм делегатов переделывать. Делегат получает инстанс того, на чем он вызывается в момент делегирования. Я тоже несколько раз на это напарывался, но по-моему это нельзя просто сделать.
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Оно точно уже было. И это технически надо весь механизм делегатов переделывать. Делегат получает инстанс того, на чем он вызывается в момент делегирования. Я тоже несколько раз на это напарывался, но по-моему это нельзя просто сделать.
> Оно точно уже было

ну мне советовали давно сделать иссью, я ток сейчас до этого дошёл. но я попытался найти похожее и ничего не нашёл.
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Оно точно уже было. И это технически надо весь механизм делегатов переделывать. Делегат получает инстанс того, на чем он вызывается в момент делегирования. Я тоже несколько раз на это напарывался, но по-моему это нельзя просто сделать.
я не понял как это противоречит механизму делегатов, когда

val MyClass.delegated2 by MyDelegate()

работает хорошо
источник

с#

саша сок #KotlinGang... in Kotlin Community
а ну наверное он не может сразу создать делегат
источник

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
я не понял как это противоречит механизму делегатов, когда

val MyClass.delegated2 by MyDelegate()

работает хорошо
Для того, чтобы создать делегат, надо создать инстанс этого делегата как поле класса. Если это глобальный делегат - это глобальное поле.
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Для того, чтобы создать делегат, надо создать инстанс этого делегата как поле класса. Если это глобальный делегат - это глобальное поле.
угу я понял, неприятная ситуация. наверное ничего тут не поделать.
источник