android - 如何将回收站视图上的 Edittext 值保存到后端
问题描述
我正在开发一个使用大量二维码扫描的应用程序。在我的一个模块中,我扫描代码,并在 recyclerView 上获取与扫描结果相关的相应标签。
现在我的这个recyclerview 列表的布局包含一个TextView 和一个editText。在我的适配器类的帮助下,列表中的每个标签都获取并带有一个 editText。
现在我想做的是我想通过每个标签前面的那些editext保存有关每个标签的数据。我在这里关心的是我将如何做到这一点。
从适配器或我的适配器的父片段获取每个 EditText 的数据并将其发送到服务(这里我使用改造)。
我查看了网络,但没有发现任何有用的东西。如果你们中的任何人都可以在这方面提供帮助或建议我做其他事情,那就太好了。
任何帮助将不胜感激!!!!
::编辑::
标签适配器.java
public class labelsAdapter extends RecyclerView.Adapter<labelsAdapter.UsersViewHolder> {
Context context;
List<LabelModel> userListResponseData;
ArrayList<String> labeldatalist = new ArrayList<String>();
public labelsAdapter(Context context, List<LabelModel> userListResponseData) {
this.userListResponseData = userListResponseData;
this.context = context;
}
@Override
public UsersViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.label_list_items, parent,false);
UsersViewHolder usersViewHolder = new UsersViewHolder(view);
return usersViewHolder;
}
@Override
public void onBindViewHolder(@NonNull UsersViewHolder usersViewHolder, int i) {
String label_item = userListResponseData.get(i).getLabel_name();
usersViewHolder.tv_labelName.setText(label_item);
usersViewHolder.ed_labelValue.getText().toString();
}
@Override
public int getItemCount() {
return userListResponseData.size(); // size of the list items
}
class UsersViewHolder extends RecyclerView.ViewHolder {
// init the item view's
private TextView tv_labelName;
private EditText ed_labelValue;
public UsersViewHolder(View itemView) {
super(itemView);
// get the reference of item view's
tv_labelName = (TextView)itemView.findViewById(R.id.label_list_tv);
ed_labelValue = (EditText)itemView.findViewById(R.id.label_list_edt);
}
}
}
解决方案
将 textchangelistener 用于适配器 edittext 并侦听适配器类中的文本更改,然后将值存储在后端。
usersViewHolder.ed_labelValue. 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) {
// add your code here
}
});
推荐阅读
- r - 按最近的日期和 ID 合并两个数据框
- c++ - 将值从指针复制到常量对象参数
- java - 将字节传递给采用 UInt8 (Java) 的方法
- php - ASCII 转换器显示空白,输入错误 - PHP
- cvxpy - 使用 CVXPY 和 DCCP 进行斜坡最小二乘估计
- javascript - discord.js 机器人在本地工作,但不在 Heroku 上
- c - 为什么 snprintf 复制不同的值,即使每次都将相同的变量复制到字符串数组
- c - 由于添加了一个小的二维数组而导致的分段错误
- javascript - 更改 .innerHTML 中的链接颜色
- python - 如何在 Python 中访问字符串中的某些值