android - Get ListView Item content when clicking it -
i have listview has items array i.e string[] stateslist = {"adult 1", "adult 2","adult 3","child 1","child 2","child 1","child 2","child 2"};
now want hide textview if item clicked apart adult.
this function have written populating data in listview
protected void oncreate(bundle savedinstancestate) { showpassengerlistview(); } private void showpassengerlistview() { string[] passengerlist ={"adult 1", "adult 2","adult 3","child 1","child 2","child 1","child 2","child 2"}; arrayadapter<string> adapter = new arrayadapter<string>(this,android.r.layout.simple_list_item_1, android.r.id.text1, passengerlist); listview.setadapter(adapter); listview.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { if((passengerlist[position].contains("child"))|| (passengerlist[position].contains("infant"))){ dateofbirth.setvisibility(view.visible); }else{ dateofbirth.setvisibility(view.gone); } } }); **passengerinformationpopup()** } public void passengerinformationpopup() { final dialog dialog= new dialog(iweenbookingpage.this,r.style.dialog_fullscreen); dialog.setcontentview(r.layout.passenger_details_dialog); string[] tittlearray ={"mr.","mrs.","ms"}; spinner tittlespinner = (spinner) dialog.findviewbyid(r.id.tittle); dateofbirth = (textview)dialog.findviewbyid(r.id.dateofbirth); dateofbirth.setclickable(true); arrayadapter<string> dataadapter = new arrayadapter<string>(this, android.r.layout.simple_spinner_item, tittlearray); dataadapter.setdropdownviewresource(android.r.layout.simple_spinner_item); tittlespinner.setadapter(dataadapter); dialog.show(); } and getting exception :
08-16 15:51:55.727: e/androidruntime(15553): fatal exception: main 08-16 15:51:55.727: e/androidruntime(15553): java.lang.nullpointerexception 08-16 15:51:55.727: e/androidruntime(15553): @ com.android.iweentravel.book$5.onitemclick(book.java:184) 08-16 15:51:55.727: e/androidruntime(15553): @ android.widget.adapterview.performitemclick(adapterview.java:298) 08-16 15:51:55.727: e/androidruntime(15553): @ android.widget.abslistview.performitemclick(abslistview.java:1114) 08-16 15:51:55.727: e/androidruntime(15553): @ android.widget.abslistview$performclick.run(abslistview.java:2937) 08-16 15:51:55.727: e/androidruntime(15553): @ android.widget.abslistview$1.run(abslistview.java:3695) 08-16 15:51:55.727: e/androidruntime(15553): @ android.os.handler.handlecallback(handler.java:615) 08-16 15:51:55.727: e/androidruntime(15553): @ android.os.handler.dispatchmessage(handler.java:92) 08-16 15:51:55.727: e/androidruntime(15553): @ android.os.looper.loop(looper.java:153) 08-16 15:51:55.727: e/androidruntime(15553): @ android.app.activitythread.main(activitythread.java:4987) 08-16 15:51:55.727: e/androidruntime(15553): @ java.lang.reflect.method.invokenative(native method) 08-16 15:51:55.727: e/androidruntime(15553): @ java.lang.reflect.method.invoke(method.java:511) 08-16 15:51:55.727: e/androidruntime(15553): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:821) 08-16 15:51:55.727: e/androidruntime(15553): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:584) 08-16 15:51:55.727: e/androidruntime(15553): @ dalvik.system.nativestart.main(native method) how check item has been clicked listview? on basis of item clicked have show/hide textview . main question how identify . items dynamic in listview .but have adult,child ,infant.
you can hide textview that
textview.setvisibility(view.gone) or
textview.setvisibility(view.invisible) depending on want do.
a simple way of identifying item inside onitemclick() method be:
listview.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { // example if(passengerlist[position].contains("adult)") // // or textview tv = (textview) view.findviewbyid(r.id.text1); if(tv.gettext().tostring().contains("adult)") // } });
Comments
Post a Comment