Tag: 安卓

将加载animation添加到kotlin中的自定义对话框

我想添加加载animation自定义对话框,我能够做到这一点在Java中,但我有问题做同样的kotlin它给了我下面的错误 E/AndroidRuntime: FATAL EXCEPTION: main android.util.AndroidRuntimeException: requestFeature() must be called before adding content at com.android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.java:229) at com.android.internal.app.AlertController.installContent(AlertController.java:234) at android.app.AlertDialog.onCreate(AlertDialog.java:337) at android.app.Dialog.dispatchOnCreate(Dialog.java:355) at android.app.Dialog.show(Dialog.java:260) at com.autodroid.demo.MainActivity.show(MainActivity.kt:66) at com.autodroid.demo.MainActivity$onCreate$1.onClick(MainActivity.kt:32) at android.view.View.performClick(View.java:4204) at android.view.View$PerformClick.run(View.java:17355) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) 以下是我在kotlin中创建对话框的代码 val dialogBuilder = AlertDialog.Builder(activity) val inflater = activity?.layoutInflater val dialogView = inflater?.inflate(R.layout.newly_dialog, null) dialogBuilder.setView(dialogView) val tvPopText = dialogView?.findViewById(R.id.tvPopText) as […]

Kotlin edittext editable to string returns nothing

有没有人经历过这个? 我正在尝试从editText获取输入值。 我做了以下。 val input = edittext_input.text.toString() 但结果是没有什么。 我试着记录edittext_input.text,它有一个值。 你们知道为什么会发生这种情况吗? 这是kotlin的错误吗? 我find的一个解决方法是这样的。 val input = “${edittext_input.text}” 更新:实际完整代码: private fun setupUI() { val inputTestText = (findViewById(R.id.edittext_username)).text val inputTestTextToString: String = 100.toString() val userInput: String = edittext_username.text.toString() val passInput = “${edittext_password.text}” findViewById(R.id.button_login).setOnClickListener { Log.i(TAG, “inputTestText is null? ${inputTestText == null}”) Log.i(TAG, “inputTestTextToString: $inputTestTextToString”) Log.i(TAG, “A user: $userInput […]

Kotlin 60秒后停止录音

我在kotlin最多60秒内尝试一个记录 object : CountDownTimer(60000,1000) { override fun onFinish(){ timeText.text = “Time’s Fİnish!” handler.removeCallbacks(runnbale) for (button2 in runnable ){ button2.stop() } } } 我得到对象和可运行的错误 Error:(70, 13) Object is not abstract and does not implement abstract base class member public abstract fun onTick(p0: Long): Unit defined in android.os.CountDownTimer Error:(75, 37) Unresolved reference: runnable

是否有必要知道kotlin获得AAD(Associate Android Developer)认证?

由于谷歌推出了作为Android的官方编程语言kotlin。 所以很容易切换到kotlin …特别适合初学者

Android Studio和Kotlin:未解决的参考:也

也从Android Studio编译并运行: val greeted = “World”.also { println(“Hello $it”) } 然而,编辑also强调, it是错误的,不给任何帮助intellisense。 申请仍然有效,当我去源时,我可以看到既apply also定义。 我如何让Android Studio also能识别? Android Studio 2.3.3 kotlin_version =’1.1.3-2′ Kotlin插件1.1.3-release-Studio2.3-2 我也有早期版本的这个问题。

Kotlin通用参数在函数中使用

我得到了这个问题的解决方案: 通配符在Kotlin通用的参数 ,但现在我有其他问题,仍然有关kotlin通用 我有一个抽象的类使用像下面的听api回调。 ApiRs是每个API响应对象从中inheritance的父对象 abstract class ApiCallback { open fun onSucceed(apiRsModel: T) {} open fun onFailed(code: Int, message: String) { } } 这次我写了一个函数来处理api成功与Retrofit2,比检查的东西和回调到UI,这里是我的function: fun callbackWithSucceed(apiCallback: ApiCallback?, context: Context, response: Response?) { // unexpected error if (response == null) { encounterUnexpectedError(apiCallback, context, null) return } // check http val httpSucceed = response.code() == CODE_HTTP_SUCCEED && […]

Android Studio 3.0 Kotlin无法正常工作

我最近安装了Android Studio 3.0,并使用Kotlin开始了一个新项目。 自开始项目以来,突出显示和代码完成的kotlin插件一直在正常工作。 不过,几天前我从开始这个项目开始就第一次关闭了Android Studio,现在当我重新打开它时,代码完成和突出显示已经停止工作,Android Studio向我显示以下exception: 2017-11-05 19:38:03,424 [ thread 19] ERROR – on.CompletionProgressIndicator – Resolver for ‘completion/highlighting in org.jetbrains.kotlin.idea.caches.resolve.NotUnderContentRootModuleInfo@3a2816ac for files GameMainActivity.kt for platform JVM’ does not know how to resolve ModuleProductionSourceInfo(module=Module: ‘app’) java.lang.AssertionError: Resolver for ‘completion/highlighting in org.jetbrains.kotlin.idea.caches.resolve.NotUnderContentRootModuleInfo@3a2816ac for files GameMainActivity.kt for platform JVM’ does not know how to resolve ModuleProductionSourceInfo(module=Module: ‘app’) […]

与Android和桌面项目共享一个Kotlin模块

我有一个使用LibGDX游戏框架的游戏。 目前我所针对的平台是Desktop(PC,Mac,Linux),通过独立于平台的jar和Android。 该项目托管在https://github.com/NoxHarmonium/project-whiplash如果您需要,请随时查看。 大部分代码位于一个名为core的模块中,完全由Kotlin编写。 该模块已链接到桌面和Android项目中。 这适用于Android版本7.1+和桌面。 对于所有其他版本的Android,我在匿名函数上得到一堆java.lang.NoClassDefFoundErrorexception: val objectObservable = this.observableCache.computeIfAbsent(assetRef, fun(assetRef: AssetRef): Observable { return Async.start(fun(): T { … }).observeOn(this.eventLoopScheduler) }) exception示例: java.lang.NoClassDefFoundError: com.projectwhiplash.utils.assets.LibGdxDataManager$objectMapFromYaml$objectMapObservable$1 这似乎是由于Kotlin默认的目标(1.8)与旧版Android支持的JVM级别(1.6)不兼容。 我可能是错的,但这解释了为什么最新版本的Android工作,因为它支持更高版本的JVM。 解决方案应该像强制Kotlin发射1.6版本的JVM字节码一样简单,但我似乎无法解决。 如果你直接将Kotlin编译成Android,这似乎是通过使用kotlin-android Gradle插件来处理的。 不幸的是,我不能使用这个插件的核心模块,因为它不应该有任何Android的依赖。 我尝试使用https://kotlinlang.org/docs/reference/using-gradle.html#compiler-options中提到的构建设置来覆盖JVM版本,如下所示: compileKotlin { kotlinOptions { jvmTarget = “1.6” } } 然而,无论我把哪个Gradle文件放进去,它似乎都不起作用。事实上,当我尝试使用Intellij时,显示出“Can not resolve symbol’kotlinOptions’”错误。 Kotlin团队可能已经改变了一些东西,文档还没有更新。 我可以在Intellij模块设置中手动覆盖Kotlin设置,但每次同步gradle项目时都会覆盖Kotlin设置,这不是一个好的长期解决方案。 该项目旨在独立于IDE。 有谁知道如何设置核心模块,以最大限度地兼容老版本的Android? 我目前有最低的API级别设置为9,因为这是目前的LibGDX默认,但我愿意设置这个更高,如果太难以目标如此低的API级别。 编辑1: 我只是提取由核心模块生成的jar文件,并使用javap工具检查类文件。 我在随机类文件上运行以下命令 java -verbose […]

Android Kotlin创建自定义popup菜单

我试图创建类似这样的popup式菜单,单击Android中使用Koltin的按钮视图。 我搜索了SOF,Google没有find任何建议。 任何人都可以提供一个示例代码来实现它使用kotlin。

Firebase连接在Kotlin上创建用户错误

ı尝试与kotlin的firebase创建用户。 但是我总是得到错误敬酒Theese是我的import: import android.content.Intent import android.support.v7.app.AppCompatActivity import android.os.Bundle import android.text.TextUtils import android.view.View import android.widget.Toast import com.google.firebase.auth.FirebaseAuth import kotlinx.android.synthetic.main.activity_create_user.* 这里剩下的我的代码类createUser:AppCompatActivity(){private var fbsignup:FirebaseAuth = FirebaseAuth.getInstance() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_create_user) submitButton.setOnClickListener { val email = userSaveText.text.toString().trim() val password = passSaveText.text.toString().trim() if (TextUtils.isEmpty(email)) { Toast.makeText(this, “enter a mail “, Toast.LENGTH_SHORT).show() return@setOnClickListener } if (TextUtils.isEmpty(password)) { Toast.makeText(this, […]