Articles of Kotlin

Классы данных Kotlin и типы NULL

Я новичок в Kotlin, и я не знаю, почему компилятор жалуется на этот код: data class Test(var data : String = "data") fun test(){ var test: Test? = Test("") var size = test?.data.length } Компилятор жалуется на test?.data.length , он говорит, что я должен сделать: test?.data?.length . Но переменная данных – String , а не […]

Как использовать Kotlin coroutines wait () в главной теме

Я только начал изучать Kotlin coroutines и пытался имитировать некоторые длительные API-вызовы с отображением результата в пользовательском интерфейсе: class MainActivity : AppCompatActivity() { fun log(msg: String) = println("[${Thread.currentThread().name}] $msg") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.setContentView(R.layout.activity_main) val resultTV = findViewById(R.id.text) as TextView val a = async(CommonPool) { delay(1_000L) 6 } val b = async(CommonPool) { […]

Проблема Котлина

Я создал Jar проекта, написанного на языке Котлина. Jar содержит следующие папки: com jet kotlin meta-inf okio org Затем я создал проект Android и добавил Kotlin и Jar как зависимость. Когда я пытаюсь выполнить приложение hello world, оно вызывает следующее исключение. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/usr/lib/jvm/java-7-openjdk-amd64/bin/java'' finished with non-zero exit value 1 Модифицированный файл apply […]

Создание несвязанного сервиса в Котлине

Я пытаюсь создать простой несвязанный сервис в котлин, но я не могу. Когда я переопределяю onBind() в Java, я могу вернуть значение null , но в kotlin говорится, что мне разрешено возвращать IBinder а не IBinder? , Это означает, что он не может быть null . Любые идеи, как исправить это, кроме перезаписи класса MyService […]

В чем разница между фигурными фигурными скобками и нормальными скобками в RxJava с Kotlin

Я не понимаю реальной разницы между фигурными фигурными скобками и нормальными скобками в Котлине при использовании RxJava. Например, у меня есть следующий код, который работает как ожидалось: someMethodThatReturnsCompletable() .andThen(anotherMethodThatReturnsACompletable()) .subscribe(…) Но следующее НЕ работает: someMethodThatReturnsCompletable() .andThen { anotherMethodThatReturnsACompletable() } .subscribe(…) Обратите внимание на разницу в части andThen() цепочки с фигурными фигурными скобками. Я не понимаю, […]

«Недостаточно информации для вывода параметра T» с помощью Kotlin и Android

Я пытаюсь воспроизвести следующий ListView в своем приложении для Android с помощью Kotlin: https://github.com/bidrohi/KotlinListView . К сожалению, я получаю сообщение об ошибке, которое я не могу решить самостоятельно. Вот мой код: MainActivity.kt: override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val listView = findViewById(R.id.list) as ListView listView.adapter = ListExampleAdapter(this) } private class ListExampleAdapter(context: Context) : BaseAdapter() […]

Room Persistence @Relation работает на Java, но не в Колине

Основываясь на моем предыдущем вопросе ( Android Persistence room: «Не могу понять, как читать это поле из курсора» ), который я получил, чтобы работать благодаря обратной связи, я применил тот же пример в Kolin (см. Код ниже). Мне пришлось внести некоторые незначительные изменения, такие как параметры, которые теперь передаются в запрос, который должен быть передан […]

Текстовое изображение потока вокруг изображения

Я много часов искал ответа и понятия не имею, как его решить. Итак, давайте приступим к делу: Существует изображение и TextView и мне нужно TextView вокруг ImageView следующим образом: Первое возможное решение – использовать https://github.com/deano2390/FlowTextView, но оно не расширяет TextView поэтому эта библиотека не подходит для меня по ряду причин. Второе решение – использовать LeadingMarginSpan.LeadingMarginSpan2 […]

Как использовать привязку данных и Kotlin в Android Studio 3.0.0

Я только начал использовать Android Studio 3.0.0, но каждый раз, когда я пытаюсь построить свой проект, я получаю эту ошибку: Error:Circular dependency between the following tasks: :app:compileDebugKotlin +— :app:dataBindingExportBuildInfoDebug | \— :app:compileDebugKotlin (*) \— :app:kaptDebugKotlin \— :app:dataBindingExportBuildInfoDebug (*) (*) – details omitted (listed previously) я использую kapt "com.android.databinding:compiler:2.2.0" До того, как я использовал androidProcessor "com.android.databinding:compiler:2.2.0" […]

Varargs Kotlin Java interop не работает должным образом

Для makeSceneTransitionAnimation существуют две статические функции public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, View sharedElement, String sharedElementName) а также public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, Pair<View, String>… sharedElements) Первый вызов функции работает правильно в Котлине, но при вызове второго, оба этих вызова возвращают ошибки val imageTransition = Pair<View, String>(imageView, imageView.getTransitionName()); val textTransition = Pair<View, String>(textView, textView.getTransitionName()); val transitionList […]