Articles of kotlin extension

Android Studio 3 не может построить фрагмент kotlin

Я пытаюсь использовать Kotlin с Android Studio 3.0 с моим существующим проектом. Я создал фрагмент, используя kotlin. Я пытаюсь использовать фрагмент kotlin в своей Java-активности. Но каждый раз, когда я пытаюсь запустить его, я получаю Error:(209, 5) error: cannot find symbol class BlankFragment BlankFragment.kt import android.content.Context import android.net.Uri import android.os.Bundle import android.support.v4.app.Fragment import android.view.LayoutInflater import […]

Нажатие текстового поля для изменения фрагмента

Я пытаюсь создать свое первое приложение для Android с помощью Kotlin, но я застрял в очень простой ситуации. Я использую расширения Kotlin android и получаю исключение Null pointer. <TextView android:id="@+id/tvGoToRegisterFrag" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/btn_sign_in" android:text="@string/haven_t_registered_yet" android:paddingTop="10dp" android:textColor="@color/colorAccent" android:layout_centerHorizontal="true"/> С этим я использовал tvGoToRegisterFrag.setOnClickListener { goToRegister() } Я знаю, что могу использовать tvGoToRegisterFrag?.setOnClickListener { goToRegister() } Чтобы […]

Как правильно использовать URL-адрес с Kotlin Android

Я хочу использовать override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val json = URL("https://my-api-url.com/something").readText() simpleTextView.setText(json) } но эта фатальная ошибка возникает FATAL EXCEPTION: main Process: com.mypackage.randompackage, PID: 812 java.lang.RuntimeException: Unable to start activity ComponentInfo{ ***.MainActivity}: android.os.NetworkOnMainThreadException Как я могу просто прочитать JSON по ссылке URL? Пакет функции async не существует.

Функции расширения Котлина внезапно требуют уровня api 24

Я только что заметил эту ошибку lint: для вызова требуется Api Level 24 (текущий min равен 19) java.util.map # foreach, когда я использую функцию расширения для каждого на MutableMap в Котлине. Этого не произошло, когда я написал строку, но теперь ее там. И я не вижу эту ошибку на другой машине.

Как сохранить тип объекта для интеллектуального каста при возврате Any

Извиняюсь, если это глупый вопрос, Котлин по-прежнему новичок в моей жизни, и я не знаком с синтаксисом «типы», поэтому нашел, что ему трудно найти решение. fun Any?.test(): Any? { return this } "test string".test() // implicit string is now type of "Any" "test string".test().substring() // what i'm trying to achieve Я в основном хочу, чтобы […]

Kotlin: Как запустить методы обслуживания в контексте класса транзакций?

Я хотел бы определить вызовы базы данных в методах службы, но их выполнить в контексте класса Transaction не открывая соединение в самой службе, чтобы я мог включать несколько вызовов службы в одну транзакцию. Я ищу что-то подобное, но не могу понять. class Transaction { init { /** Grab connection **/ } fun doSelect() { … […]

Функция расширения не создает новый объект Observable

У меня неожиданное поведение с котлин и rxjava. Я создаю функцию расширения для загрузки изображения с помощью пикассо fun Picasso.loadBitmap(url: String) : Observable<Bitmap> = Observable.create<Bitmap> { emitter -> Log.d("picasso load bitmap", "me ${this}") try { val bitmap = load(url).centerCrop() .resize(100, 100) .transform(CircleTransformer()) .get() emitter.onNext(bitmap) emitter.onComplete() } catch (e: IOException) { emitter.onError(e) } } Я называю […]

Есть ли разница между «объектом-получателем» и «приемником расширения»,

Трудно сказать по документам https://kotlinlang.org/docs/reference/extensions.html так что я задаюсь вопросом, являются ли получателем и ресивером то же самое? или имя зависит от контекста?

Требуется функция Котлина Нет, но определяется как другой тип

Я определил такой класс abstract class MvpViewHolder<P>(itemView: View) : RecyclerView.ViewHolder(itemView) where P : BasePresenter<out Any?, out Any?> { protected var presenter: P? = null fun bindPresenter(presenter: P): Unit { this.presenter = presenter presenter.bindView(itemView) } } где presenter.bindView(itemView) дает мне ошибку, presenter.bindView(itemView) Type mismatch, required: Nothing, found: View! , Я определил bindView внутри класса presenter следующим […]

Генераторы Котлина, ожидающие неожиданного типа

Я определил следующий базовый класс с двумя родовыми типами и использовал его на два уровня в глубину (из-за отсутствия лучшей фразы). Вот мой прецедент. abstract class BasePresenter<out M, out V> { var model: M? = null var view: WeakReference<V>? = null fun setM(model: M?): Unit { this.model = model if (setupDone()) { updateView() } } […]

Intereting Posts
Есть ли способ войти в PayPal с помощью htmlunit? Котлинское умножение между обнуляемыми и невалютными ошибками float даже с нулевой проверкой Использование цветов, определенных в базовом модуле из функционального модуля, не выполняется после восстановления Android Instant App Почему Smartcast не работает после nullcheck Значок переполнения Фрагмента по умолчанию Проект Android Kotlin не смог синхронизировать проект Gradle Как вызвать внешнюю команду из кода Котлина? объекты закрытого класса, загадочно становящиеся нулевыми, если ссылаются на другие объекты-компаньоны Как запустить тесты Spek из командной строки? Есть ли способ передать ссылку на функцию между действиями? Каково место в иерархии типов типов с возможностью NULL? Не удалось «findViewById» в Котлине. Получение ошибки «Ошибка ввода типа» Как правильно обрабатывать значения байтов, превышающие 127 в Котлине? Построение проекта Kotlin + Java 9 с помощью Gradle Проблема с DJI SDK gradle 4.4.0, если ключевое слово в градле не работает