Tag: android

用Kotlin关闭/隐藏Android软键盘

我正在尝试在Kotlin上编写一个简单的Android应用程序。 我在我的布局中有一个EditText和一个按钮。 在编辑字段中写入并单击按钮后,我想要隐藏虚拟键盘。 有一个流行的问题 关闭/隐藏Android软键盘在Java中做的,但据我所知,应该有一个替代版本的Kotlin。 我应该怎么做?

Kotlin:何时以及如何使用Lambda表达式

我最近一直在为我的Android项目转向Kotlin,并对Lambdas有所了解。 当我们将Java文件转换为Kotlin文件时,我们看到许多lambda表达式。 何时以及如何准确地使用lambda函数? 另外,高阶函数和lambda函数/表达式有什么区别? 在Android上下文中的具体答案将是有帮助的。

Kotlin是否支持100%的Ormlite? (数据类)

我是Kotlin的新手,我希望将我的java模型类与数据类进行转换,这有可能吗? 我的意思是Ormlite是否支持这个?

Kotlin:可转让的“它”?

我试图简化Kotlin中的Parcelable代码: public class C() : Parcelable { var b1: Boolean = false var b2: Boolean = false var b3: Boolean = false var i1: Int = 0 var i2: Int = 0 val parcelBooleans = listOf(b1, b2, b3) val parcelInts = listOf(i1, i2) override fun writeToParcel(p: Parcel, flags: Int) { parcelBooleans.forEach { p.writeBoolean(it) } parcelInts.forEach […]

在Kotlin的对象字段中带有上下文的Android类

在Kotlin的对象类中有一个属性,它有一个上下文吗? 在Android中,将上下文相关的对象放在静态字段中是一种不好的做法。 Android工作室甚至突出显示它,并给出了一个警告,不像Kotlin没有警告。 示例对象: object Example { lateinit var context: Context fun doStuff(){ //..work with context } }

从java活动* .java开始kotlin活动* .kt?

无效的缓存/重新启动…帮助我! 我在java类中的代码是: Intent intent = new Intent(view.getActivity(), AddPaymentActivity.class); view.getActivity().startActivity(intent); AddPaymentActivity有kotlin扩展.kt 有错误java.lang.NoClassDefFoundError

将JavaScript哈希函数复制到java / kotlin

我正在做一个多平台的应用程序,我已经完成了数据库和Web版本。 要检查网络版本上的代码,我从数据库中获得散列版本,并比较两者。 我使用这个JavaScript代码散列(我发现在另一个问题上 ): hashCode = function(s){ return s.split("").reduce(function(a,b){a=((a<<5)-a)+b.charCodeAt(0);return a&a},0); } 现在我需要在我的android应用程序中做同样的事情,但我不知道如何在java或kotlin中输出相同的函数。 有谁知道如何做到这一点,或有一个其他跨平台的香草解决方案? 提前致谢。 编辑:我很新的kotlin / java,所以我只知道我可以在网上找到什么,我知道什么其他语言。 我试图删除尽可能多的错误,但有些事情我只是不知道,它仍然给错误: fun go (a: Int, b: String): Int { var a = ((a shl 5) – a) + Character.codePointAt(b,0); return a and a } // this part doesn't give any errors now. fun hashCode(s: String): String { return […]

Kotlin 1.1.3-2无法在OnResume Android中实例化片段

我在这里有这个问题: FATAL EXCEPTION: main Process: com.mytest.app, PID: 20586 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mytest.app/com.mytest.app.activities.home.HomeActivity}: android.app.Fragment$InstantiationException: Unable to instantiate fragment com.mytest.app.activities.fragments.MyFragment: make sure class name exists, is public, and has an empty constructor that is public at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2371) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2423) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1342) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:5327) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at […]

如何在Kotlin中注入原始变量?

我在我的Android应用程序中使用Dagger2作为DI,并使用此代码注入类到我的活动罚款: @field:[Inject ApplicationContext] lateinit var context: Context 但是,在Kotlin的基本类型属性(例如Boolean )中不允许使用lateinit修饰符,我该如何做这样的事情? @field:[Inject Named("isDemo")] lateinit var isDemo: Boolean 当我从这个代码删除lateinit我得到这个错误Dagger does not support injection into private fields

清单合并失败:使用kotlin模块时

我有android工作室模块“域”有kotlin文件。 我试图使用它as library我的应用程序模块 as library像这样。 compile project(':domain') 我得到合并冲突错误 错误:任务“mobile:processDebugManifest”的执行失败。 清单合并失败,出现多个错误,请参阅日志 任何想法出了什么问题?