0
私のリストビューでは、私はEdittext
といくつかはtextviews
です。 listview
を反復してedittext
の値を取得しようとしているときに、私はいくつかの問題を抱えています。listview
のedittext
が空でない場合にのみアクションを実行します。それ以外の場合は、反復処理を続行します。listview
を反復処理する場合は、edittexts
の空でない値のみが必要です。私のlistview
の名前はここでは "リスト"です。 私のコードがあるリストビューのテキストを空にする
if (list != null) {
for (int i = 0; i < list.getChildCount(); i++) {
ed2 = (EditText) list.getChildAt(i).findViewById(R.id.pcs);
if (ed2.getText().toString().trim().length() != 0) {
TextView im_codetext = (TextView) vie.findViewById(R.id.code);
imcode = im_codetext.getText().toString();
try {
DatabaseHelper dbHelper = new DatabaseHelper(this.getApplicationContext());
newDB = dbHelper.getWritableDatabase();
Cursor cr = newDB.rawQuery("select distinct im_srp_pc, im_subgroup_code from itemmaster where im_code =" + imcode, null);
while (cr.moveToNext()) {
srppc = cr.getString(cr.getColumnIndex("im_srp_pc"));
String subcode = cr.getString(cr.getColumnIndex("im_subgroup_code"));
databas.put("subgp", subcode);
}
srps = Float.valueOf(srpval);
qtys = Integer.valueOf(ed2.getText().toString());
} catch (NumberFormatException e) {
srps = 0;
}
float amnts = srps * qtys;
sumnet = sumnet + amnts;
else{
Log.v(" empty", " empty");
}
}
}
}
マイアダプタクラスは、事前に
public class MyListAdapter extends BaseAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
if(datas != null && datas.size() != 0){
return datas.size();
}
return 0;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return datas.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
//ViewHolder holder = null;
final ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
LayoutInflater inflater = Orders.this.getLayoutInflater();
convertView = inflater.inflate(R.layout.order_simple_row, null);
holder.textView1 = (TextView) convertView.findViewById(R.id.name);
holder.textView2 = (TextView) convertView.findViewById(R.id.srp);
holder.textview3 = (TextView) convertView.findViewById(R.id.code);
holder.editText2 = (EditText) convertView.findViewById(R.id.pcs);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.ref = position;
String [] names = new String[550];
String [] codes = new String[550];
String [] prize = new String[550];
DatabaseHelper dbHelper = new DatabaseHelper(Orders.this.getApplicationContext());
newDB = dbHelper.getWritableDatabase();
Cursor c = newDB.rawQuery("select distinct im_code ,im_desc ,im_srp "
+ " from itemmaster", null);
c.moveToFirst();
while (c.moveToNext()){
Log.v("item detailss", c.toString());
String cod = c.getString(c.getColumnIndex("im_code"));
codes[c.getPosition()] =cod;
String desc1 = c.getString(c.getColumnIndex("im_desc"));
names[c.getPosition()] = desc1;
String price = c.getString(c.getColumnIndex("im_srp"));
prize[c.getPosition()] = price;
}
holder.textView1.setText(names[position+1]);
holder.textview3.setText(codes[position+1]);
holder.textView2.setText(prize[position+1]);
holder.editText2.setText(arrTemp[position]);
holder.editText2.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
// arrTemp[holder.ref] = arg0.toString();
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
arrTemp[holder.ref] = arg0.toString();
}
});
return convertView;
}
private class ViewHolder {
public Object list;
TextView textView1,textView2,textview3;
EditText editText1,editText2;
int ref;
}
}
くださいhelp.thanksです。
あなたのアダプタクラスを投稿してください... – Ancee
@Ancee私はちょうどあなたが欲しいものを見 – ellie
を取るしなさい私のアダプタクラスを投稿しましたか?すべてのedittextが空であるかどうかチェックしますか? –