问题标签 [kotlin-extension]

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.

0 投票
3 回答
2903 浏览

kotlin - 修改扩展函数中的“this”

我想编写修改“this”的扩展函数,例如:

或者

在科特林有可能吗?

我可以创建返回修改后的值的扩展函数,但不修改“this”,但我想要更方便!看起来 Swift 可以做到这一点。

0 投票
2 回答
1370 浏览

kotlin - 不可为空的可变映射

  • 爪哇:1.8.0_102
  • 科特林:1.0.4

我正在尝试创建一个地图,您可以在其中执行map["key"] += 5类似于 javascript 的操作。

Kotlin 已经withDefault解决了这个问题的一部分,但是 map 的 get 函数仍然返回一个可以为空的值,所以我开始做我自己的实现,灵感来自withDefault

我创建了以下单元测试来测试它

但是当我运行测试时出现以下错误:

知道如何解决这个问题吗?

0 投票
1 回答
132 浏览

enums - 枚举器上的扩展功能,`values()` 不可用?

如果我尝试输入:

编译器抱怨:

未解决的参考值

this.values()也无济于事

为什么我没有values()可用的?

0 投票
2 回答
13134 浏览

generics - Out-projected type 'ArrayList<*>' 禁止使用'public open fun add(index: Int, element: E): Unit defined in java.util.ArrayList'

我有这个片段:

然后我在这个上使用它:

但我收到此错误:

0 投票
3 回答
6069 浏览

kotlin - 扩展方法和扩展属性是不好的做法吗?

所以如果扩展方法和扩展属性真的是静态方法和属性。并且静态方法和属性和方法不是线程安全的,因此应该避免扩展方法和扩展属性是不好的。

我们只是被欺骗了,因为我们编写的代码看起来很漂亮或干净,但在性能方面却不是。

这是真的?

0 投票
1 回答
208 浏览

android - 将 ViewGroup 扩展为片段包装器

我正在扩展一个 RelativeLayout 来制作一个片段装饰器。

像这样:

好吧,我想在 RelativeLayout 中添加一些图像,以便它始终位于片段的顶部,所以我这样做了:

}

但是,当我的活动开始时,片段会出现在我添加的视图(mMarkImageView 和 mShadowView)之上......这与想要的完全相反。

那么如何以编程方式将视图放在视图组中的最后一个位置?

任何帮助表示赞赏!

0 投票
1 回答
717 浏览

kotlin - 设置 kotlin 扩展

我不确定是否可以像 java 对象一样设置 kotlin 扩展。

在我的程序中,我有一个名为的 java 类Submission,我想创建一个名为的 kotlin 扩展categories- 一个 ArrayList - 所以我把它变成了这样。

但是,每当我尝试设置一个类别时,程序就会崩溃,并出现这样的 stackOverflowError:

这似乎是声明 kotlin 扩展的正确语法。所以我真的不确定我应该在哪个方向解决这个问题。也许我真的应该只使用普通的旧继承?

谢谢。

0 投票
1 回答
142 浏览

android - findViewById ClassCastExcpetion

我正在使用 kotlin-extension 插件来查找视图。

但现在我得到了一个例外

它一直工作到现在,但现在它给出了一个

我做的最后一件事是向我的工厂添加一个 id 并设置一个OnClickListener.

但在我的 layout.xml 中:

android.support.v7.widget.Toolbar有 id"@+id/mainActivity_toolbar" 并且FrameLayout有 id "@+id/mainActivity_framelayout"

我首先认为 kotlin-extension 插件中有一个错误,但findViewById它也不起作用。

谢谢

0 投票
2 回答
830 浏览

java - Kotlin 扩展冲突

如果我在类路径上有一个 jar,我在其中创建了一个扩展函数,例如 String 类,并且我在 String 上有另一个具有相同扩展函​​数的 jar,Kotlin 将如何解决这两者?

我想如果两个函数都定义在同一个包中,那么会有冲突吗?

但是如果不同的包,我如何区分这两个扩展?

0 投票
1 回答
895 浏览

android - RecyclerView.Adapter Android 的泛型

我试图RecyclerView.Adapter在我的应用程序中为所有人使用一个通用的扩展功能,所以我创建了一个名为 notifyAdapter 的 ext fun,但它没有按预期工作。

当我使用

offlineListAdapter.notifyAdapter()或者onlineListAdapter.notifyAdapter()

它抛出

无法应用于接收者 OfflineListAdapter

离线列表适配器.kt

如何为所有RecyclerView.Adapter使用泛型的人创建一个通用的扩展函数。

提前致谢。