import android.app.Activity;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
public class RecyAdapter extends RecyclerView.Adapter {
private Activity activity;
private ArrayList<String> list=new ArrayList<>();
private int count;
public RecyAdapter(Activity activity) {
this.activity = activity;
addItem();
}
public ArrayList<String> getList() {
return list;
}
@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(activity).inflate(R.layout.item_option, parent, false);
return new RecyclerView.ViewHolder(view) {};
}
public void addItem(){
list.add("选项"+(++count)+"(1-25字)");
}
@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
EditText ed_option = holder.itemView.findViewById(R.id.ed_option);
if(list.get(position).equals("选项"+count+"(1-25字)")){
ed_option.setHint(list.get(position));
}else {
ed_option.setText(list.get(position));
}
ed_option.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
//保存输入数据
Toast.makeText(activity, "当前位置="+position, Toast.LENGTH_SHORT).show();
list.remove(position);
list.add(position,s.toString());
}
});
//关闭条目复用
holder.setIsRecyclable(false);
}
@Override
public int getItemCount() {
return list.size();
}
}