@kotlin_lang

Страница 368 из 982
Quantum Harmonizer
11.10.2017
07:13:15
В примерах прописан : RealmObject()
> A limitation of the Kotlin annotation processor indicates that adding the annotation @RealmClass is required in some cases. https://realm.io/docs/java/latest/#kotlin

Alon
11.10.2017
07:39:25
спасибо, буду пробывать

Anton
11.10.2017
07:49:57
как решать кросс зависимоть у классов с дженериками

без роу типов

Google
Anton
11.10.2017
07:50:05
звездочку ставить чтоли

Andrey
11.10.2017
07:50:28
покажи код

Anton
11.10.2017
07:51:16
class BaseCardPresenter<V> : IPresenter<V> where V : IView<*> {

https://stackoverflow.com/questions/43786012/cross-references-in-type-parameters вот вопрос на стаке. есть решение лучше?

Alon
11.10.2017
07:59:23
> A limitation of the Kotlin annotation processor indicates that adding the annotation @RealmClass is required in some cases. https://realm.io/docs/java/latest/#kotlin
такая же петрушка. Чего то я походу фундаменатьльно не понимаю

Vic
11.10.2017
08:05:22
https://github.com/Kotlin/KEEP/pull/87 вот интересно, какая будет судьба у этого предложения
Нужно больше функциональщины! Надеюсь, в дизайн языка встроится без шероховатостей.

Quantum Harmonizer
11.10.2017
08:06:43
бллин, придётся почитать про моноиды!)

Sergey
11.10.2017
08:08:07
Нужно больше функциональщины! Надеюсь, в дизайн языка встроится без шероховатостей.
двоякие чувства возникают, с одной стороны этот KEEP простой и понятный, как экстеншены, а с другой хз даже. и как это с джавой будет работать

Igor
11.10.2017
08:19:20
Igor
11.10.2017
09:19:34


Quantum Harmonizer
11.10.2017
09:19:51
filterNotNull()

компилятор же не знает, что тип поменялся

Igor
11.10.2017
09:20:10
merci

Google
Vic
11.10.2017
09:20:38
В ту же копилку fiterIsInstance

Igor
11.10.2017
09:21:22
Yura
11.10.2017
09:21:36
Доброго времени, подскажите почему для простого андроид клік листенера можна написать view.setOnClickListener { } а для кастомного нужно полностю dialogFragment.setOnItemClickListener(object : AppBottomSheetDialogFragment.ItemClickListener { override fun onClick(position: Int) { } }) ?

Konstantine
11.10.2017
09:21:56
filterDlyaVodi

Vic
11.10.2017
09:24:08
А тут нельзя было обойтись сразу mapNotNull?

Еще рекомендуется во вложенных лямбдах не использовать it в разном скоупе, а давать нормальные имена параметрам

Igor
11.10.2017
09:25:31
Еще рекомендуется во вложенных лямбдах не использовать it в разном скоупе, а давать нормальные имена параметрам
Об этом в курсе, здесь вложенность не особо сильная, да и код простой, поэтому решил забить. Когда 4-5 уровней - именую

Yura
11.10.2017
09:48:49
кастомная реализацыя диалога

в диалоге сохраняю инстанс листенера fun setOnItemClickListener(listener: ItemClickListener) { itemClickListener = listener }

Yura
11.10.2017
09:54:25
interface ItemClickListener { fun onClick(position: Int) }

Igor
11.10.2017
09:56:55
interface ItemClickListener { fun onClick(position: Int) }
Если ты объявлешь интерфейс на стороне котлина - ты обязан юзать интерфейс. Конверсия лямб-> SAM интерфейсы работает только для Java интерфейсов.

DarkMentat
11.10.2017
09:57:44
Доброго времени, подскажите почему для простого андроид клік листенера можна написать view.setOnClickListener { } а для кастомного нужно полностю dialogFragment.setOnItemClickListener(object : AppBottomSheetDialogFragment.ItemClickListener { override fun onClick(position: Int) { } }) ?
просто котлин превращает джавовые интерфейсы с одним методом в лямбды, но не котлиновские. он считает, что раз уж человек пишет на котлине, то просто заюзает обычные котлиновские лямбды.

1 вариант - юзать лямбды

2 вариант - юзать джавовый интерфейс

Igor
11.10.2017
09:58:01
Yura
11.10.2017
09:58:09
Cпасибо :)

я дальше понял

мне быбо не понятно почеру в java варианте роботает а для котлина не роботало.

Google
Quantum Harmonizer
11.10.2017
13:28:53


Ruslan
11.10.2017
13:37:10


а я понял

Dibro
11.10.2017
13:37:59
потому что это экстеншн

Sergey
11.10.2017
13:38:24
isNullOrEmpty регулярно напрягает этим :(

Quantum Harmonizer
11.10.2017
13:39:43
?.isNotEmpty() == true

Igor
11.10.2017
13:45:25
Cannot mock/spy class ... потому что final. Может есть какой-то плагинчик, который позволяет Mockito нормально работать с котлиновскими не-open классами?

Ruslan
11.10.2017
13:49:08
?.isNotEmpty() == true
вот так работает

Anton
11.10.2017
13:49:15
разве мокито уже не умеет мокать файналы

Михаил
11.10.2017
13:58:10
Allopen. И, наверное, Powermock.
Powermock лично у меня не получилось подружить с котлтном

Anton
11.10.2017
13:58:53
ну вот у меня тоже вроде норм было. помню какая то проблема была и пришлось подключать либу какую то мелкую

мокито для котлина какая то)

но точн оне павермок

Igor
11.10.2017
14:10:53
Второй мокито из коробки могет
Странно, ибо вроде как у меня второй. Секунду.

угу, 2.10.0

Vic
11.10.2017
14:31:47
А any нормально работает? Мне пришлось обернуть

Google
Igor
11.10.2017
14:59:14
Странно, ибо вроде как у меня второй. Секунду.
UPD: пришлось файлик добавить дополнительный в ресурсы. Даешь читать доки.

Руслан
11.10.2017
14:59:22
угу, 2.10.0
http://static.javadoc.io/org.mockito/mockito-core/2.9.0/org/mockito/Mockito.html#39

UPD: пришлось файлик добавить дополнительный в ресурсы. Даешь читать доки.
Да, если достаточно долго не отвечать на вопрос, то он может сам решиться)

Illia
11.10.2017
17:16:51
Dibro
11.10.2017
17:18:21
Что значит <> ?
на сообщение выше глянь

Illia
11.10.2017
17:20:02
на сообщение выше глянь
Просмотрел несколько, все равно не понял

Dibro
11.10.2017
17:21:12
Просмотрел несколько, все равно не понял
имелась ввиду фича/возможность

Denis
11.10.2017
17:27:19
Как запарил твой ник

Illia
11.10.2017
17:30:17
Alex
11.10.2017
18:23:47
#learn_kotlin как правильно найти в котлин? Java Class clazz = Class.class; простите за гугл вопрос, но еще неного дописать осталось. Спасибо, и плюс вам в карму

Konstantine
11.10.2017
18:24:58
Class::class?

Alex
11.10.2017
18:25:48


Konstantine
11.10.2017
18:26:08
Тогда Class::class.java

Alex
11.10.2017
18:26:17
переписываю с ява

Тогда Class::class.java
спасибо огромное

а можно еще узнать для общего развития почему так? из Kotlin in Action я не помню такого трюка

Mi
11.10.2017
18:28:09
котлин мета классы это не то же самое, что и джава классы

там больше информации лежит

и во время интеропа могут быть проблемы

поэтому есть возможность получить джава класс из котлин класса

Google
Alex
11.10.2017
18:29:39
@meosit спасибо, завтра обязательно займусь глубоким копанием, но очень интересно

такие проблемы часто можно решить конвертером из Java в Kotlin
я 8й день в котлине, какой мне конвектор! да и он предложил Class:class

Quantum Harmonizer
11.10.2017
18:31:03
Anton
11.10.2017
18:31:05
конвертер как раз сама изи штука)

Alex
11.10.2017
18:31:13
я еще раз извеняюсь за гугл вопрос

Mi
11.10.2017
18:31:26
копипасту думаю можно осилить на восьмой день

он и сам будет переписывать

Alex
11.10.2017
18:33:40
посыпаю голову пеплом, котлин-конвектор мне принес 1 в 1 вариант

Страница 368 из 982