Android-------ListView列表中获取EditText输入的值
最近项目的购物车中用列表中包含了留言功能, 需要获取EditText输入的内容,当购买多件商品时,就有点棘手了。
经过查资料解决了这个功能,并写了一个案例;
效果图:

可以在商品数据用一个字段来管理留言数据,这样就可以方便的操作了。
代码:
public class MainActivity extends AppCompatActivity {
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView(){
listView=(ListView)findViewById(R.id.listview);
listView.setAdapter(new ListAdapter(this));
}
public void saveEditData(int position, String str) {
Toast.makeText(this,str+"----"+position,Toast.LENGTH_LONG).show();
}
}
Adapter
public class ListAdapter extends BaseAdapter {
Context context;
LayoutInflater inflater;
String[] strings=new String[]{"商品1","商品2","商品3"};
public ListAdapter(Context context) {
this.inflater=LayoutInflater.from(context);
this.context=context;
}
@Override
public int getCount() {
return 3;
}
@Override
public Object getItem(int position) {
return strings[position];
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (null == convertView){
convertView = inflater.inflate(R.layout.item_multiple_confirm,null);
holder =new ViewHolder(convertView,position);
convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}
holder.tv_name.setText(getItem(position).toString());
return convertView;
}
class ViewHolder{
TextView tv_name;
EditText editText;
public ViewHolder(View view,int pisition){
tv_name = (TextView) view.findViewById(R.id.fill_order_name);
editText= (EditText) view.findViewById(R.id.fill_order_ltext);
editText.setTag(pisition);//存tag值
editText.addTextChangedListener(new TextSwitcher(this));
}
}
class TextSwitcher implements TextWatcher {
private ViewHolder mHolder;
public TextSwitcher(ViewHolder mHolder) {
this.mHolder = mHolder;
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
int position = (int) mHolder.editText.getTag();//取tag值
((MainActivity)context).saveEditData(position, s.toString());
}
@Override
public void afterTextChanged(Editable s) {
}
}
}
代码是写的比较简单,源码点击下载
Android-------ListView列表中获取EditText输入的值的更多相关文章
- Android 有关在ListView RecycleView 中使用EditText Checkbox的坑
这是一篇文字超多的博客,哈哈哈,废话自行过滤··· 遇到问题 在开发中我们常会在ListView , RecycleView 列表中添加EditText输入框,或者checkbox复选框. 复选框 ...
- Java编程中获取键盘输入实现方法及注意事项
Java编程中获取键盘输入实现方法及注意事项 1. 键盘输入一个数组 package com.wen201807.sort; import java.util.Scanner; public clas ...
- 根据start和limit从已有的数据列表中获取从start开始的limit个数据
代码记录(需求:根据start和limit从已有的数据列表中获取从start开始的limit个数据) 已有的数据列表:这个数据列表是经过处理的,可能是在SQL查询时无法处理的如多条件排序,而排序条件需 ...
- asp.net mvc 在View中获取Url参数的值
如果url是 /home/index?id=3 直接Request就ok. 但是如果路由设定为:{controller}/{action}/{id} url是 /home/index/3 这时想在 ...
- 在android的spinner中,实现取VALUE值和TEXT值。 ZT
在android的spinner中,实现取VALUE值和TEXT值. 为了实现在android的 spinner实现取VALUE值和TEXT值,我尝试过好些办法,在网上查的资料,都是说修改适配器, ...
- js中获取css样式属性值
关于js中style,currentStyle和getComputedStyle几个注意的地方 (1)用js的style只能获取元素的内联样式,内部样式和外部样式使用style是获取不到的.针对css ...
- asp.net mvc 如何在View中获取Url参数的值
如果url是 /home/index?id=3 直接Request就ok. 但是如果路由设定为:{controller}/{action}/{id} url是 /home/index/3 这时想在 ...
- Py中去除列表中小于某个数的值
### Py去除列表中小于某个数的值 print('*'*10,'Py去除列表中小于某个数的值','*'*10) nums = [2,3,4,10,9,11,19,14] print('*'*10,' ...
- Android 在界面中显示以及输入文本信息 TextView和EditText
Android控件之TextView和EditTextTextView:显示文本框控件EditText:输入文本框TextView和EditText的常用属性TextView控件的常用属性androi ...
随机推荐
- jQuery异步加载数据并添加事件示例
当时项目是通过树形栏进行权限控制的,管理员可以对从数据库去的数据动态生成树形栏进行增删改查操作,可是用$(".XX").click();方法是不行的. 1.之前用的是jq1.4.3 ...
- Spring框架第四篇之基于注解的DI注入
一.说明 与@Component注解功能相同,但意义不同的注解还有三个: 1)@Repository:注解在Dao实现类上 2)@Service:注解在Service实现类上 3)@Controlle ...
- 在PL/SQL中如何让程序暂停几秒钟
在编写PL/SQL中,有时需要程序中暂停几秒钟再继续执行,查了一下,oracle内置有这个功能dbms_lock.sleep(10):不过dbms_lock包需要用户自己安装,演示如下: C:\Doc ...
- 在MFC中实现对象之间数据的传递。
方法一: 第一步:在VS2010里面新建一个单文档MFC程序. 第二步:在App类里面的头文件里面 定义性声明一个变量 ,见下面程序 public: CString ii; 第三步:在App类的实现文 ...
- boost implicit_cast
在stackoverflow上看到这个帖子, 于是发现了boost::implicit_cast这个小东西. 先来看看这段代码: struct top {}; struct mid_a : top { ...
- dubbo总结
一 .Dubbo产生背景 单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本.此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键. 垂直应用架构当访 ...
- 论文笔记:dropout
Improving neural networks by preventing co-adaptation of feature detectors arXiv preprint arXiv: 120 ...
- 如何高效的遍历HashMap 以及对key 进行排序
Map<Integer ,Object> map = new HashMap<Integer,Object>(); for(int i = 0; i<=100;i++){ ...
- Atom插件无法下载安装解决办法,Atom使用教程,Atom常用插件
使用教程http://wiki.jikexueyuan.com/project/atom/plug-in.html atom通过setting中无法下载插件,通过apm也无法下载插件,可能是网络.co ...
- window连接linux共享
前提说明:windows主机信息:192.168.1.100 帐号:abc 密码:123 共享文件夹:sharelinux主机信息:192.168.1.200 帐号:def 密码:456 共享文件夹: ...