Tag: 安卓

Android Studio 3 canary&Kotlin

有没有人得到消息“Kotlin未配置” 我确定我错过了一些东西,但是大部分我下载了它,并且只是导入了我现有的2.x设置。 我尝试从java类复制/粘贴到一个新的Kotlin文件,这就是我在哪里。 这是我目前的顶级build.gradle buildscript { repositories { jcenter { url = "http://jcenter.bintray.com/" } maven { url = "https://maven.google.com" } mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:3.0.0-alpha1' } } allprojects { repositories { jcenter { url = "http://jcenter.bintray.com/" } maven { url = "https://maven.google.com" } mavenCentral() } } 然后在我的模块构建文件的顶部我有这两行 apply plugin: 'com.android.application' apply plugin: 'kotlin-android' 目前的错误是“插件与id'kotlin-android'未找到”

如何在Android中添加对普通Java Lib的Kotlin支持?

当我们想在Android Studio中使用Kotlin时,它非常简单。 添加kotlin依赖库,并添加如下Kotlin-Android插件 apply plugin: 'com.android.library' apply plugin: 'kotlin-android' 但是,如果我有一个正常的库(以前是Java),并且想要在Kotlin中编写,我应该添加任何插件吗? 以下绝对不能工作。 apply plugin: 'java-library' apply plugin: 'kotlin-android' 没有“kotlin库”,我发现添加。我应该添加到我的模块gradle让它能够编译Kotlin?

无法配置Kotlin

我无法在我的android studio中配置Kotlin。 出现错误错误:无法找到method'com.android.build.gradle.internal.variant.BaseVariantData.getOutputs()Ljava / util / List;'。

在Kotlin中使用Singleton的StackOverflowError

谁能告诉,为什么我得到一个java.lang.StackOverflowError使用这个Kotlin类? 第41行是if (instance == null) { class TokenHelper protected constructor() { var token: String? = null var appId: String? = null var installationId: String? = null var userId: String? = null companion object { var instance: TokenHelper? = null get() { if (instance == null) { instance = TokenHelper() } return instance } } } […]

适用于Android的Kotlin。 烤面包

在Android的不同的Kotlin示例中,我看到烤面包(“Some message …”)或toastLong(“Some long message”)。 例如: view.setOnClickListener { toast("Click") } 据我所知,这是一个活动的扩展功能。 如何定义这个toast()函数和哪里(在什么地方)能够通过项目使用它?

如何将Java文件转换为Kotlin文件?

我正在通过Kotlin为Android开发者探索Kotlin。 其中一个步骤是使用Convert Java File to Kotlin File来查看Java和Kotlin文件的比较。 我很好奇这个功能是如何工作的。 该工具是从Java输入创建一个抽象语法树,然后转换到Kotlin? 还是在做更简单的事情?

与Kotlin重载的构造函数

因为我有一个User类有2个参数:名字,姓氏。 所以我的kotlin类是: data class User(val first_name:String, val last_name:String) 现在我想要一个只接受first_name的构造函数,或者你可以只说一个参数。 我怎样才能用Kotlin来定义它? 我知道我们可以通过默认值,这样我们可以忽略第二个参数,但是我们怎样才能写出多个构造函数呢?

Kotlin配置几个口味

我得到了我的项目配置几个口味的问题。 我有2个env-s,用于分期制作。 它的配置设置为flavor-stage/Env.java和flavor-prod/Env.java ,它的工作原理与Java代码一样,也可以从Kotlin类中看到,但是在编译时会崩溃 Error:(19, 23) Unresolved reference: Env 看来Kotlin可以从另一个风格的文件夹中解析类。 请帮助配置它。 我的gradle.build是: sourceSets { main.java.srcDirs += 'src/main/kotlin' } buildscript { ext.kotlin_version = '1.0.4' repositories { jcenter() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.0.6" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" } }

不能实现接口kotlin

突然,我的android工作室不允许我实现接口,当我使用Kotlin,我不能导入接口 任何人都遭受与kotlin相同的问题? 问题是真实的,我无能为力解决这个问题 interface AppPrefManager { fun isUserLoggedIn: Boolean }

如何在Kotlin中声明原始类型?

在Java中,我可以声明这一点 private List a; //onCreate a = new ArrayList() 但在Kotlin它显示错误,这迫使我具体的类型 private List<String> a 有时我不想提供一个类型(我不需要),但它显示Kotlin中的错误例如在Java中 public abstract class BaseActivity<T extends ViewDataBinding> extends AppCompatActivity { //something } public abstract class BaseFragment { private BaseActivity activity; //something } //in kotkin I can't write lateinit var activity: BaseAtivity //show error here (I have to specific a type but this […]