-
0 votesanswersviews
Kotlin - 为setSpans()声明start,end和flasg时,为SpannableStringBuilder创建自定义ext函数,不带重复参数
这是之前的MainActivity.kt var spannable = SpannableStringBuilder("$noColorText$coloredText") spannable.setSpan( ForegroundColorSpan(ContextCompat.getColor(textView.context, R.color.mainGreen)... -
9 votesanswersviews
Kotlin中泛型类的扩展函数
我的扩展功能在下面有什么问题 class Foo<T> { fun <T> Foo<T>.plus(that: Foo<T>): Foo<T> = throw Exception() init { Foo<Int>() + Foo<String>() // A receiver ... -
6 votesanswersviews
受保护的成员在扩展功能中无法访问?
Kotlin有几个visibility modifiers以及extension functions . 文档说明 Extensions are resolved statically . 但这对扩展函数中类成员的可见性意味着什么呢? 让我们考虑以下人为的例子: class A { protected val a = "Foo" } fun A.ext() { print(a... -
0 votesanswersviews
Kotlin Extensions属性与功能 - 冲突
我有以下两个定义 . 第一个作为扩展函数,允许设置可见的 View ,并使用第二个参数将其设置为不可见或不可见 . fun View.setVisible(visible: Boolean, goneWhenVisibleFalse: Boolean) { visibility = when { visible -> View.VISIBLE gone... -
4 votesanswersviews
Kotlin扩展功能按类型
基于类型向类添加函数的惯用方法是什么?以下示例使用List作为类,Type Parameter <T> 是列表中的对象类 . 假设您希望根据类型使用不同的比较器对每个列表进行排序 . data class A(val foo: String) data class B(val bar: Int) private val aComparator: Comparator<A>... -
3 votesanswersviews
kotlin:扩展方法和null接收器
在lombok扩展方法中, obj.method() 是 SomeUtil.method(obj) 的语法糖 . 它允许 obj 为null . Kotlin扩展方法是静态解决的,因此我认为它与我编写时的语法糖相同 fun Any.stringOrNull() = this?.toString() 我收到了关于非空接收器上不必要的安全呼叫的警告 . 这是否意味着我无法像使用lombok一样调用n... -
2 votesanswersviews
Kotlin扩展函数的可变属性
我正在尝试在可变属性上设置扩展函数,以便我可以在扩展函数中重新分配属性 . 我想知道是否有可能 . 我的目标是制作 Date 扩展名以便于访问 . 例如: fun Date.addDays(nrOfDays: Int): Date { val cal = Calendar.getInstance() cal.time = this cal.add(Calendar.DAY_... -
0 votesanswersviews
在Kotlin编程语言中循环
在我的kotlin代码中我得到类型不匹配(推断类型是Int但预期布尔值)错误 . fun main(args: Array<String>) { var i = args.size while (i--){ println(args[i]) } } -
25 votesanswersviews
如何组织Kotlin扩展方法
假设我有一些“MyClass”的扩展方法 . 我的问题是,组织/存储这些方法的最佳做法是什么?它们应该简单地放入“MyClassExtensions”Kotlin文件中吗? 我试图将这些方法封装在一个类中,但是在导入类之后我似乎无法弄清楚如何使用/访问扩展方法 . 编辑:为了澄清,我没有要求帮助调用包含扩展方法的文件 . 我在询问存储/组织此类方法的最佳实践/方法 . IE浏览器 . 它们应该简... -
12 votesanswersviews
Kotlin扩展函数访问Java私有字段
当使用Kotlin extension function 时,我'd like to access Java' s private field . 假设我有一个 Java 类 ABC . ABC 只有一个私有字段 mPrivateField . 我想在Kotlin中编写一个扩展函数,无论出于何种原因使用该字段 . public class ABC { private int ... -
0 votesanswersviews
如何使用Kotlin扩展Java类以使用静态乐趣? [重复]
这个问题在这里已有答案: Accessing Kotlin extension functions from Java 8个答案 How can one add static methods to Java classes in Kotlin 3个答案 public class TestA { public static void a() {} } fun TestA.b... -
0 votesanswersviews
Kotlin扩展通用函数,基本类型没有反射API
我有一个Java对象,它有方法 getLong , getBoolean 和 getString . 我试图创建一个具有函数作为最后一个参数的通用扩展函数 . 基本上包装try和catch并调用可能引发异常的 getString 等 . 我发现调用例如 getIt<Long>() { // do something with it } 时设置的 <reified T> 需... -
1 votesanswersviews
将我现有的andorid工作室项目转换为kotlin?
错误:找不到com.android.tools.build:gradle:3.0.0-alpha2 在以下位置搜索: 文件:/User/3.0/android-studio/gradle/m2repository/com/android/tools/build/gradle/3.0.0-alpha2/gradle-3.0.0-alpha2.pom https://jcenter.bintray.c...