Articles of методы

Как сделать локальный метод расширения доступным в функции с приемником?

Я нашел интересную вещь, но я не мог этого сделать. Есть ли способ сделать локальный метод расширения доступным в функции с приемником. val list = ArrayList<Any>(); fun <T> Array<T>.bind(context: MutableList<in T>, block: Array<T>.() -> Unit) { fun Array<T>.save() { context.addAll(this); } block(); } arrayOf(1, 2, 3).bind(list) { save(); //todo: how to bind extension in execution […]

Вызов countDownTimer

Как я могу назвать свой CountDownTimer в onResume ()? private fun countDownTime(timeOut: Long) { object : CountDownTimer(timeOut, 1000) { override fun onTick(millisUntilFinished: Long) { actionWarning.text = "Please wait: " + millisUntilFinished / 1000 } override fun onFinish() { } }.start() }

Модифицированный метод с новым условием

У меня есть следующий метод: fun getTimeFromLastPinInput(): Long { return DateTime.now().millis – PreferenceRepository.getLastPinInputTime() } Я хочу добавить следующее условие: if (DateTime.now().millis >= PreferenceRepository.getLastPinInputTime()) Как я могу изменить свой метод правильно?

Может ли kotlin определить динамический метод, когда class init?

Мои занятия: class Demo { init { // define method here my some array:[a,b,c] // such as fun Demo.a,Demo.b… } } Названия функций динамические. Может ли Котлин это сделать?

Когда использовать методы расширения?

Я пишу код Котлина, и у него есть методы расширения, которые фактически аналогичны нормальным функциям, за исключением того, что используемый вами синтаксис выглядит как вызов метода экземпляра. Нормальная функция fun blah(x: Int) { println(x) } val f = blah(1) Метод расширения fun Int.blah() { println(this) } val f = 1.blah() Насколько я понимаю, методы расширения […]

Не удалось обновить значение параметра параметра метода Котлин

Я следую методу Котлина fun getpower(base:Int,power:Int):Int { var result = 1 while(power > 0){ result = result * base power– // <—- error in this line } return result } Компилятор Kotlin дает следующую ошибку Error:(6, 8) Val cannot be reassigned Что случилось с обновлением переменной?

Совместное использование функций расширения между Float и Double в Котлине

ПРИМЕЧАНИЕ. Этот вопрос касается не общих классов, а общих функций. (Я не верю, что это дубликат этого : это более конкретный вариант). В нашем проекте у нас есть несколько полезных функций для расширения Double и Float , таких как toFixed (на основе Javascript's Number.toFixed ) fun Double.toFixed(digits: Int):String = java.lang.String.format("%.${digits}f", this) fun Float.toFixed(digits: Int):String = […]

Возможность вызова статического метода Java в Котлине

Предположим, что у нас есть статический метод Java: //Java code public static void printFoo() { System.out.println("foo"); } Этот метод можно назвать в Котлине?

Неразрешенная ссылка функции расширения Котлина в сборке Gradle

У меня есть несколько проектов Gradle build со всем кодом, написанным в Котлине. В нем есть два проекта: общий и клиентский. Подпроекты находятся в промежуточной папке, например «demo». Таким образом, структура папок: project demo client build.gradle common build.gradle build.gradle gradle.properties settings.gradle Настройки.gradle: rootProject.name = 'demo' include 'demo/client' include 'demo/common' Клиент зависит от общего проекта compile […]

Альтернативы полем бокса или расширению ВСЕХ строк в Котлине?

Учитывая, что в Kotlin нельзя создавать подклассы встроенных типов, я ищу способ добавить специальные функции метода к определенным типам строковых полей в записи, не применяя эти функции расширения ко всем строкам (даже в пределах этого типа записи). Скажем, например, у меня есть некоторые изменяемые строковые поля внутри записи, для которых я хочу определить поведение с […]

Intereting Posts
Я хочу показать DialogFragment в Android с помощью Kotlin error: generics не поддерживаются в -source 1.3 при компиляции кода Java с Kotlin Kotlin сортирует массив по значению в диапазоне «Объект» не является частью схемы для этого Царства Разрешение конфигурации «debugCompile» напрямую запрещено Можно выбрать версию Android Studio kotlin? Делегация класса Колтина, передавая это делегату Как сортировать на основе / сравнивать несколько значений в Котлин? Пользовательский TypeFace в Kotlin Программно Спецификация Jpa, чтобы найти подмножество значения поля Kotlin – Как я могу получить доступ к моей новой функции расширения класса из другого файла Почему нажатие на элементы RecyclerView возвращает неверный идентификатор элемента? TextView Null после раздувания родительского макета Создание публичного экземпляра частного внутреннего класса в Котлине Как добавить пользовательские группы просмотра в Anko DSL?