升级到 Kotlin 后,我开始使用 Java 接口从自定义回收器适配器中获取数据。现在在 Kotlin 中我现在还不完全理解如何访问接口。这是我试图在我的 Kotlin 应用程序中使用的 Java 代码。btOK 是我的 XML 中的一个按钮,它收集用户在 ExpListView 中选择的所有选定项目(您可以在此处找到完整的代码),并且由于接口“SelectedDrink”,我能够访问数据。这里是带有 ClickListener 的按钮:btOk.setOnClickListener(view -> { Button button = (Button) view; msg = "Upload!\n"; ArrayList<SelectedDrink> selectedDrinks = expandableListAdapterDrinks.getOrderList(); Gson gson = new Gson(); for (SelectedDrink selectedDrink : selectedDrinks) { msg += "aid=" + selectedDrink.content + "+qty=" + selectedDrink.qty + "\n"; } final String jsonOrder = gson.toJson(selectedDrinks); sendToServer(jsonOrder,sessionId); }});这是界面:public class SelectedDrink { String content; Double qty;}现在在 Kotlin 中,这两个男孩给了我一个错误:selectedDrink.content selectedDrink.qty那“无法访问:‘内容/数量’:它是SelectedDrink 中的公共/包”我只是不明白错误是什么,也不明白如何修复它。
2 回答
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
在Java中,除了public之外,你不能直接访问成员变量,你需要getter/setter来访问它。只需创建 Getter 方法
public class SelectedDrink {
private String content;
private Double qty;
public String getContent() {
return content;
}
public Double getQty() {
return qty;
}
}
慕田峪9158850
TA贡献1794条经验 获得超7个赞
字段必须是公共的
public class SelectedDrink {
public String content;
public Double qty;
}
添加回答
举报
0/150
提交
取消