Articles of андроидная

Функция расширения kotlin не понимает, как эта вещь работает

Я очень новичок в обучении Котлина. До сих пор все было вполне понятно: «Сегодня я натолкнулся на кусок кода, который запугивал меня. Я много искал и провел некоторое исследование этого фрагмента кода. вот эта две функции расширения, которые мне нужно понять private fun T ?.useOrDefault(default: R, usage: T.(R) -> R) = this?.usage(default) ?:default второй inline […]

Kotlin + Кинжал 2: Кинжал * файлы не будут генерировать

Я впервые начал использовать Kotlin и Dagger 2. Я предполагал, что все такое же, как на Java, но, видимо, не совсем. Кинжал не будет генерировать файлы Dagger * для меня. Вот мой код: Компоненты: @PerActivity @Subcomponent(modules = arrayOf(ApplicationModule::class)) interface ActivityComponent { fun inject(app: OneAccountApplication) } @Singleton @Component(modules = arrayOf(ApplicationModule::class)) interface ApplicationComponent { fun inject(syncService: SyncService) […]

Кинжал + Котлин не вводит

Я изучаю Dagger 2 для DI, и я просто сделал этот код, чтобы внедрить Retrofit: NetModule.kt @Module class AppModule(val mApplication: Application) { @Provides @Singleton fun provideApplication() : Application{ return mApplication } } AppModule.kt @Module class AppModule(val mApplication: Application) { @Provides @Singleton fun provideApplication() : Application{ return mApplication } } NetComponent.kt: @Singleton @Component(modules = arrayOf(AppModule::class, NetModule::class)) […]

Kotlin и Jack не поддерживаются (Android Studio 2.3.2)

Я получаю эту ошибку при настройке плагина kotlin с Jack. В настоящее время я использую Android studio 2.3.2. Ошибка: плагин Kotlin Gradle не поддерживает устаревшую инструментальную цепочку Jack. Отключите Jack или вернитесь к плагину Kotlin Gradle версии 1.1.1.

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

В последнее время я переезжаю в Kotlin для своих Android-проектов и испытываю проблемы с Lambdas. Когда мы конвертируем файл Java в файл Kotlin, мы видим много лямбда-выражений. Когда и как следует использовать функцию лямбда? Кроме того, в чем разница между функцией более высокого порядка и лямбда-функцией / выражением? Ответы, специально предназначенные для Android, будут полезны.

Почему кинжал не обрабатывает эти котлинские дженерики?

У меня есть некоторые странные общие проблемы с котлином с кинжалом, которые я как бы исправил, но решение не звучит. Вот классы кинжалов: @Module class P5Module { @Provides fun pool(): RecyclerView.RecycledViewPool = RecyclerView.RecycledViewPool() @Provides fun adapters(fusion: P5FusionAdapter, personas: P5ListAdapter, skills: P5SkillsAdapter, info: InfoAdapter) : List<Pageable> = listOf(fusion, personas, skills, info) } @ActivityScope @Subcomponent(modules = arrayOf(P5Module::class)) […]

Кинжал вводят на суперкласс и подкласс

Класс BaseFragment open class BaseFragment : Fragment() { @Inject lateinit var apiManager: ApiManager @Inject lateinit var eventBus: EventBus override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) App.getInstance().component.inject(this) } override fun onStop() { eventBus.unreg(this) super.onStop() } override fun onStart() { super.onStart() eventBus.reg(this) } } RoomsFragment class class RoomsFragment : BaseFragment() { @Inject lateinit var roomAdapter: RoomsAdapter override fun […]

Кинжал2 не вводит

Я новичок в android и пытаюсь использовать Dagger2. Я провожу всю ночь и до сих пор не знаю, почему мой кинжал не дает докладчика. Вот мой код (я использую Kotlin) AppComponent @Singleton @Component(modules = arrayOf(PresenterModule::class)) interface AppComponent { fun inject(target: SplashActivity) } PresenterModule @Module class PresenterModule { @Provides @Singleton fun provideSplashPresenter(): SplashPresenter { return SplashPresenter() […]

Dagger2 + Kotlin, инъекция не работает

К сожалению, Dagger2 не создает экземпляр моих объектов, которые нужно вставить. Кинжал: 2.0.2 Котлин: 1.0.1-2 Исходный код? Вот Компонент: @ActivityScope @Component(dependencies = ApplicationComponent.class, modules = { HomeModule.class }) public interface HomeComponent { void inject(HomeActivity homeActivity); HomePresenter homePresenter(); } Модуль: @Module public class HomeModule { @Provides @ActivityScope HomePresenter provideHomePresenter( HomePresenterImpl presenter) { return presenter; } }

Накладные расходы расширения Kotlin для Android

Это хорошая идея использовать расширения котлина по всему коду? Я очень скучаю по расширениям от iOS, но это хороший способ использовать подобные вещи в Android. См. Http://antonioleiva.com/kotlin-android-extension-functions/ Есть ли лучшее решение для этого?

Intereting Posts
Котлин, выполняемый в потоке, использует другое значение, чем прошедшее Потребитель, играющий странно в Котлине IntelliJ Idea при тестировании сразу нескольких модулей включаются только артефакты из одного модуля Вывод только некоторых параметров типа в Котлин Почему kotlin ошибочно: val minT: Long = -9223372036854775808L //Long.MIN_VALUE Удаление из списка вызывает IndexOutOfBoundsException при повторении: Java-> Kotlin Внедрение TypeAdapterFactory с помощью TypeAdapter в Котлине Гессон Deserialization с Kotlin, блок инициализатора не называется Невозможно ли установить ожидания на ленивом свойстве? Являются ли числовые операции с использованием Kotlin столь же быстрыми, как эквивалент с Java-примитивами? Требуется ли знание Groovy для понимания Gradle? Оператор «Когда» и «switch» оператора Java Управление жизненным циклом файлов cookie в сервлете Ktor 0.9.0 Spring FacebookTemplate вызывает исключение разрешения для профиля пользователя Встроенные функции Kotlin и методы Android