我已经使用布局填充器构建了这个(See the Image)。当我按下加号按钮时,它将创建带有文本视图和按钮的另一个布局。 TextView从EditText获取文本。尽管创建的值不止一个,并且textview的唯一ID是相同的。我尝试将其添加到Firebase,但是只有最后一个值上载到Firebase数据库。问题是如何在Firebase数据库中添加所有这些值? TextView从EditText获取文本。尽管创建的值不止一个,并且textview的唯一ID是相同的。我尝试将其添加到Firebase,但是只有Lase值上载到Firebase数据库。如何在Firebase数据库中添加所有这些值?
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String author=edAuthorName.getText().toString();
LayoutInflater layoutInflater = (LayoutInflater) getBaseContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View addView = layoutInflater.inflate(R.layout.edit_row, null);
textOut = addView.findViewById(R.id.dyn_tv_author_out);
textOut.setText(edAuthorName.getText().toString());
ImageView buttonRemove = addView.findViewById(R.id.dyn_btn_remove);
buttonRemove.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((LinearLayout) addView.getParent()).removeView(addView);
}
});
if (author.isEmpty()){
edAuthorName.setError("Enter Author Please");
}
else {
container.addView(addView);
edAuthorName.setText("");
}
}
});
布局:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_margin="8dp"
android:layout_height="wrap_content">
<TextView
android:id="@+id/dyn_tv_author_out"
android:layout_width="0dp"
android:layout_height="48dp"
app:layout_constraintEnd_toStartOf="@+id/dyn_btn_remove"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/dyn_btn_remove"
android:layout_width="36dp"
android:layout_height="36dp"
android:src="@drawable/error"
app:layout_constraintBottom_toBottomOf="@+id/dyn_tv_author_out"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/dyn_tv_author_out" />
</android.support.constraint.ConstraintLayout>