java - 获取 ListView 中edittext的值

标签 java android listview android-listview

我想获取 ListView 中编辑文本的值。 这是我的 CustomAdapter.java

public class CustomAdapter extends BaseAdapter {

Context context;
List<RowItem> rowItem;

ImageView imgIcon, add_cart;
TextView txtTitle;

EditText colli, prezzo, quantita;
String colliStr, prezzoStr, quantitaStr;

ArrayList<String> ArrayPrezzo = new ArrayList<String>();
ArrayList<String> ArrayQuantita = new ArrayList<String>();
ArrayList<String> ArrayColli = new ArrayList<String>();

CustomAdapter(Context context, List<RowItem> rowItem) {
    this.context = context;
    this.rowItem = rowItem;

}

@Override
public int getCount() {

    return rowItem.size();
}

@Override
public Object getItem(int position) {

    return rowItem.get(position);
}

@Override
public long getItemId(int position) {

    return rowItem.indexOf(getItem(position));
}
@Override
public boolean  areAllItemsEnabled() {
    return false;
}

@Override
public boolean isEnabled(int position) {
    return false;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {

    if (convertView == null) {
        LayoutInflater mInflater = (LayoutInflater) context
                .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
        convertView = mInflater.inflate(R.layout.single_row, null);
    }

    imgIcon = (ImageView) convertView.findViewById(R.id.icon);
    txtTitle = (TextView) convertView.findViewById(R.id.title);
    add_cart = (ImageView) convertView.findViewById(R.id.icon);

    colli = (EditText) convertView.findViewById(R.id.editText3);
    prezzo = (EditText) convertView.findViewById(R.id.editText2);
    quantita = (EditText) convertView.findViewById(R.id.editText);

    add_cart.setFocusable(true);
    add_cart.setClickable(true);

    final RowItem row_pos = rowItem.get(position);
    // setting the image resource and title
    imgIcon.setImageResource(R.drawable.product);
    txtTitle.setText(row_pos.getTitle());

    add_cart.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
           // HERE I WANT GET THE VALUES OF EDITTEXT;

        }
    });

        return convertView;
}

有人可以帮我吗?在ly listview中有: TextView |编辑文本1 |编辑文本2 |编辑文本3 | ImageView 当我单击按钮时,我不知道如何获取当前位置的 edittext 值。 你能用我的代码做一个例子吗? 谢谢你

更新: 我已经编辑了监听器:

add_cart.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            prezzoStr = prezzo.getText().toString();
            Toast.makeText(context, prezzoStr, Toast.LENGTH_SHORT)
                    .show();

        }
    });

但是 prezzoStr 是空的。 toast 什么也没显示。 我认为需要使用 row_pos 变量来获取确定的编辑文本的值。 请帮忙

最佳答案

不难

add_cart.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
          String colliValue = colli.getText().toString());
          String prezzoValue = prezzo.getText().toString());
          String quantitaValue = quantita.getText().toString());
        }
});

关于java - 获取 ListView 中edittext的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31315405/

相关文章:

android - 在尝试发送 SMS 之前检查 Android 中的网络覆盖范围

android - 将 viewGroup 添加到 ListView?

android - 使用媒体播放器播放音乐时出现 LogCatError "setDataSource: outside path in JNI is ?x@"

java - double 是计算小数百分比的正确数据类型吗?

android - 确保在 android listview 上可见?

android - 如何从数组列表/ ListView 中删除选中的项目/特定项目

java - 使用数组实现链表

java - 找不到在 netbeans 8.0.2 中设置 Maven 本地存储库路径的位置

java - 如何设置JMX监控的net.sf.ehcache.CacheManager名称?

java - 关系 "table name"不存在 postgresql