ここでは、リストビューがあり、xml文字列から入力しているアクティビティを使用しています。入力は問題ありません。リストビューには、2つのボタンがあります。
noが増減しているクリックをクリックします。onsubmitボタン変更されたデータを含むすべてのデータが送信に表示されるようにします。たとえば、2人の座席が選択されます2。
コードスニップは次のとおりです。
my xml
private static String seatXml="<?xml version=\"1.0\" encoding=\"UTF-8\"?><seatlist>"
+"<seatselection><seater>two</seater></seatselection>"
+"<seatselection><seater>four</seater></seatselection>"
+"<seatselection><seater>six</seater></seatselection>"
+"<seatselection><seater>eight</seater></seatselection>"
+"<seatselection><seater>ten</seater></seatselection>"
+"</seatlist>";
ここで私はリストビューにデータを入力しています
private void populateSeatList() {
// TODO Auto-generated method stub
seatItems=new ArrayList<HashMap<String,String>>();
XMLParser parser=new XMLParser();
Document doc=parser.getDomElement(seatXml);
NodeList nl=doc.getElementsByTagName(KEY_RECORD);
String seatName="";
for (int i = 0; i < nl.getLength(); i++) {
map=new HashMap<String, String>();
Element e=(Element)nl.item(i);
// adding each child node to HashMap key => value
map.put(KEY_SEAT,parser.getValue(e, KEY_SEAT)); //this will fetch the seater value like 2 seater,3 seater
map.put(KEY_SEAT_QTY,""+QTY);
seatItems.add(map);
}
adapter=new SeatAdapter(this, seatItems);
seatListView.setAdapter(adapter);
// makeAToast(seatName);
}
アダプタクラスのgetview関数
int i=0;
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View view=convertView;
if(convertView==null)
view=inflater.inflate(R.layout.seat_desc,null);
TextView seatName=(TextView)view.findViewById(R.id.textView_seat_no);
Button buttonMinus=(Button)view.findViewById(R.id.button_minus);
Button buttonPlus=(Button)view.findViewById(R.id.Button_plus);
final TextView seatInput=(TextView)view.findViewById(R.id.textView_seat_input);
seatInfo=new HashMap<String, String>();
seatInfo=data.get(position);
seatName.setText(seatInfo.get(SeatSelectionActivity.KEY_SEAT)+" seater:");
seatInput.setText(""+i);
// menuInfo.get(MenuScreenActivity.KEY_MENUNAME)
buttonPlus.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated i stub
i=Integer.parseInt(seatInput.getText().toString());
if(!(i>=10))
i++;
seatInput.setText(""+i);
// seatInfo.put(SeatSelectionActivity.KEY_SEAT, seatInfo.get(SeatSelectionActivity.KEY_SEAT));
seatInfo.put(SeatSelectionActivity.KEY_SEAT_QTY,seatInput.getText().toString());
data.set(position, seatInfo);
// notifyDataSetChanged();
}
});
buttonMinus.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO ,goto-generated method stub
i=Integer.parseInt(seatInput.getText().toString());
if(!(i<1))
i--;
seatInput.setText(""+i);
// seatInfo.put(SeatSelectionActivity.KEY_SEAT, seatInfo.get(SeatSelectionActivity.KEY_SEAT));
seatInfo.put(SeatSelectionActivity.KEY_SEAT_QTY,seatInput.getText().toString());
data.set(position, seatInfo);
// notifyDataSetChanged();
}
});
return view;
}