问题标签 [kotlin-delegate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 21 岁以下的 Android 上使用 MultiDex 的 Kotlin 代表
我有以下代表...
该代表旨在处理股份偏好。当我的应用程序变为 MultiDex 时,就会出现问题。当我在活动中使用下面的代码时,应用程序崩溃。
但是,如果我将代码更改为这个。应用程序不崩溃
我已经阅读了这个文件,它有一些通知..
https://developer.android.com/studio/build/multidex.html
注意:在 MultiDex.install() 完成之前,不要通过反射或 JNI 执行 MultiDex.install() 或任何其他代码。Multidex 跟踪不会跟随这些调用,导致 ClassNotFoundException 或由于 DEX 文件之间的错误类分区而导致验证错误。
总之,我想知道在这种情况下会发生什么。
- 应用程序崩溃发生在低于 21 的 Android 上
- kotlin 委托使用反射
- 为什么从字段变量更改为局部变量可以解决问题?
- Logcat 没有帮助
日志猫
kotlin - 如何在 Kotlin 中实现需要另一个属性的惰性属性?
我需要一个需要在调用时初始化的矩形。
这是我的代码;
我得到的那行错误private val rectangle :Rectangle by lazy { Rectangle(x, y, textWidth, textHeight) }
;
必须初始化变量“textWidth” 必须初始化变量“textHeight”
但我已经在init{}
代码块上初始化它们。
我究竟做错了什么?
kotlin - Android 数据绑定不适用于 Kotlin 的类委托
我的视图模型:
我的布局:
在currencyCode
数据模型中更新时,TextView
不会自动更改文本。
我试图摆脱继承AndroidViewModel
并定义MyVM
如下:
它奏效了。问题是我不能丢弃AndroidViewModel
生产代码中的继承。
不过有一个解决方法:
但我不习惯在我的 ViewModel 中使用 ObservableFields。你有什么建议吗?
android - 是否可以为单个类提供多个委托类型?
我想从一个类中提供多个不同类型的不同代表。例如:
此示例给出以下编译器错误:
'operator' modifier is inapplicable on this function: second parameter must be of type KProperty<*> or its supertype
有没有办法指定泛型类型参数以便我可以实现这一点?
kotlin - 如何结合 kotlin 委托属性:可观察、可否决和“按地图”?
我正在尝试将delegates/observable与vetoable结合起来(在查看源代码 kotlin.properties.Delegates.kt 后这不是问题),但是在尝试将属性也存储在 map时事情变得很棘手。
或者换句话说,如何将这三者结合起来:
kotlin - Kotlin 中的嵌套属性委托
正如官方教程中提到的,我们可以将属性存储在一个 Map 中,并将一个类委托给它:
然而,有时我们在映射中存储非平凡的结构,比如另一个类(这在处理复杂的 json 时很常见)。为了更好地阐述我的想法,我想出了这样的伪代码:
是否可以委托这种嵌套结构?
android - Android Studio 无法解析导入
我正在尝试一个示例项目来学习MvRx。然而,似乎有些不对劲。Android Studio 无法activityViewModel
自动查找和导入。
1)我试图通过写它的包名来手动导入它,但它仍然是灰色的。
2) 从 Gradle 选项卡中,我选择了我的根项目并单击Refresh Gradle Project
以刷新所有依赖项。它也没有帮助。
问题是什么?
json - (de) 使用 jackson 序列化 kotlin 委托属性
如何使用杰克逊(反)序列化 kotlin 委托属性。我有这样的课
我想通过使用来简化它
但是杰克逊会忽略该属性。
我怎么能告诉杰克逊序列化和反序列化该属性呢?然后我如何应用 @JsonIgnore 注释(或类似的东西)?