gpt4 book ai didi

android - 如何使用列表外的按钮获取 ListView 的内容

转载 作者:行者123 更新时间:2023-11-30 02:01:20 24 4
gpt4 key购买 nike

到目前为止我搜索的内容都是通过将按钮放在每一行中来获取 ListView 数据,但是我想要实现的是通过将按钮放在列表外部来选择 ListView 内容。

我创建了一个可编辑的 ListView ,用户将在其中输入值,该值将乘以列表中已有的列之一,结果将设置在另一个 TextView 中。

现在单击按钮(在列表下方给出)我想执行以下两件事。

  1. 我只想获取用户在文本框中输入值的那些行。和

  2. 在 ListView 上方给出的编辑文本(名称和地址)的值。并将它们保存到 sqlite。

我不知道该怎么做,任何帮助将不胜感激。对不起,如果我不清楚。下面是我的 ListView 适配器的代码

@Override
public View getView( final int position, View convertView, ViewGroup parent) {
final ViewHolder holder;
if (convertView == null) {
convertView = inflater.inflate(R.layout.productslistviewadapter, parent, false);

holder = new ViewHolder();
holder.tvdrCode = (TextView) convertView.findViewById(R.id.tvname);
holder.tvDrName = (TextView) convertView.findViewById(R.id.tvprodpack);
holder.tvterrcode= (TextView) convertView.findViewById(R.id.textView3);
holder.caption = (EditText)convertView.findViewById(R.id.editText1);
holder.tvValue = (TextView) convertView.findViewById(R.id.value);
holder.tvValue.setVisibility(View.GONE);
convertView.setTag(holder);

}
else {
holder = (ViewHolder) convertView.getTag();
}

Products p = prodList.get(position);
holder.tvdrCode.setText(p.getDocCode());
holder.tvDrName.setText(p.getDocName());
holder.tvterrcode.setText(p.getAdr());

//for editText
holder.caption.setTag(position);
holder.caption.setText(p.getCaption());
int tag_position=(Integer) holder.caption.getTag();
holder.caption.setId(tag_position);

holder.caption.setOnFocusChangeListener(new View.OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if (!hasFocus) {
/*
* When focus is lost save the entered value for
* later use
*/
int position2;
position2 = holder.caption.getId();
position2 = holder.tvValue.getId();
final EditText Caption = (EditText) holder.caption;
final TextView TvValue = (TextView) holder.tvValue;

if(Caption.getText().toString().length()>0)
{
prodList.get(position2).setCaption(Caption.getText().toString());

String prodpack = prodList.get(position).getDocName().toString();
String prodname = prodList.get(position).getDocCode().toString();
String quantity = prodList.get(position2).getCaption()

int value = Integer.parseInt(prodpack) * Integer.parseInt(quantity);
holder.tvValue.setText(Integer.toString(value));
holder.tvValue.setVisibility(View.VISIBLE);

}
else{
Log.e("enter some value", "yes");
}

}
}
});

最佳答案

试试下面的点击按钮的代码 fragment

for (int i = 0; i < listView.getAdapter().getCount(); i++) {
Products pold = (Products) listView.getAdapter().getItem(i);
Products pnew = prodlist.get(i);
if(pold.getCaption() !=null)
{
if(pold.getCaption() != pnew.getCaption().toString())
{
//Call sqlite save here
Log.d("yes", "yes");
}
else {
Log.d("no", "no");
}
}

希望对你有帮助

关于android - 如何使用列表外的按钮获取 ListView 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31414398/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com