在 java 代码中使用 kotlin 库
Using a kotlin library in java code
我有一个 kotlin 库 FlowLayout lib as aar,
并想在我的 java 代码中使用它 (android) 但无法解析 kotlin.Pair
.
FlowLayoutManager layoutManager=new FlowLayoutManager(3, RecyclerView.HORIZONTAL, new FlowLayoutManager.Interface() {
@Override
public kotlin.Pair<Integer, Integer> getProportionalSizeForChild(int i) {
return null;
}
});
我试过 android.support.v4.util.Pair
但不兼容。我如何在 java 代码中使用 kotlin 库及其对象依赖项?
Class kotlin.Pair
属于标准库org.jetbrains.kotlin:kotlin-stdlib:1.0.0
,所以你必须有这个库作为依赖。
不建议在 public API 中使用 Pair
。而不是那样,创建您自己的 data class
和 2 个属性,并给它们一个比 first
和 second
.
更清晰的命名
Pair
的目的是在任何中间操作中充当临时数据载体。如果你在你的 API 中使用它,你就会失去清晰度。
我有一个 kotlin 库 FlowLayout lib as aar,
并想在我的 java 代码中使用它 (android) 但无法解析 kotlin.Pair
.
FlowLayoutManager layoutManager=new FlowLayoutManager(3, RecyclerView.HORIZONTAL, new FlowLayoutManager.Interface() {
@Override
public kotlin.Pair<Integer, Integer> getProportionalSizeForChild(int i) {
return null;
}
});
我试过 android.support.v4.util.Pair
但不兼容。我如何在 java 代码中使用 kotlin 库及其对象依赖项?
Class kotlin.Pair
属于标准库org.jetbrains.kotlin:kotlin-stdlib:1.0.0
,所以你必须有这个库作为依赖。
不建议在 public API 中使用 Pair
。而不是那样,创建您自己的 data class
和 2 个属性,并给它们一个比 first
和 second
.
Pair
的目的是在任何中间操作中充当临时数据载体。如果你在你的 API 中使用它,你就会失去清晰度。