列出返回对象引用的列表



我正在制作一个应用程序,其中我有一个中央回收视图,其中列出了用户将键入的项目,位于两个按钮下方,一个用于添加项目,另一个用于完成。我遇到的问题是,当用户完成任务并点击finish时,我想获取列表中屏幕上列出的所有数据,并将其存储在firebase中,但我无法在shape数组中获取这些数据,它总是返回对象引用。

在互联网上搜索,我发现了如何使用数组中的.toString,但它给我返回了相同的东西。以下是我收到的退货示例。

返回

我的对象的代码

public class ListItem {
private float measure;
public ListItem(float measure) {
this.measure = measure;
}
public float getMeasure() {
return measure;
}
public void setMeasure(float measure) {
this.measure = measure;
}
}

我的按钮的代码添加

private View.OnClickListener addItem = new View.OnClickListener() {
@Override
public void onClick(View v) {
DialogForm();
mAdapter.notifyItemInserted(listItems.size());
}
};
void DialogForm() {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
final View customLayout = getLayoutInflater().inflate(R.layout.layout_dialog, null);
alert.setView(customLayout);
alert.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
EditText measure = customLayout.findViewById(R.id.edit_measure);
String response = measure.getText().toString();
if (response.isEmpty() || response.equals("0")) {
Toast.makeText(MainActivity.this, "A medida não pode ser vazia",
Toast.LENGTH_SHORT).show();
} else {
listItems.add(new ListItem(Float.parseFloat(response)));
btnFinish.setEnabled(true);
btnFinish.setBackgroundResource(R.drawable.bg_button_enabled);
}
}
});
AlertDialog dialog = alert.create();
dialog.show();
}

当我列出时,我的按钮完成代码

private View.OnClickListener finishListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
for (int i=0; i<listItems.size(); i++){
Log.d("teste", listItems.get(i).toString());
}
}
};

toString((如果不重写,将始终返回对象的哈希,因为它是从java.lang.object继承的方法,而不是特定于对象

如果您希望toString返回measure变量,则将以下内容添加到ListItem类中

@Override
public String toString() {
return Integer.toString(measure);
}

为了向该方法添加更多条目,只需添加另一个+ myData,但可能要确保有某种分隔符使其具有莫尔可读性,例如+ " || " +

祝项目好运

相关内容

最新更新