android - Using ListView to start new activities -
i have problem when create listview because i'm not able start new activities. code
public class mainactivity extends activity { static final string[] modules = new string[] { "modulo 442", "modulo 433" }; /** called when activity first created. */ @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); arrayadapter<string> codelearnarrayadapter = new arrayadapter<string>( this, android.r.layout.simple_list_item_1, modules); listview codelearnlessons = (listview) findviewbyid(r.id.listview); codelearnlessons.setadapter(codelearnarrayadapter); } protected void onlistitemclick(listview l, view v, int pos, long id) { if (pos==0){ intent intent = new intent(this, module442.class); startactivity(intent); } else if (pos==1){ intent intent = new intent(this, module433.class); startactivity(intent); } } } and code of layout file:
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <listview android:id="@+id/listview" android:layout_height="match_parent" android:layout_width="match_parent"/> </relativelayout> when click on options nothing happen...
this new activity:
public class module442 extends activity { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_module442); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.module442, menu); return true; } } thanks help!!!!
solved
public class mainactivity extends activity {
/** called when activity first created. */ listview list; private string array[] = { "modulo 442", "modulo 433" }; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); list = (listview) findviewbyid(r.id.list); list.setadapter(new arrayadapter<string>(this, android.r.layout.simple_list_item_1, array)); list.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> paramadapterview, view paramview, int position, long paramlong) { switch (position) { case 0: intent newactivity0 = new intent(mainactivity.this, module442.class); startactivity(newactivity0); break; case 1: intent newactivity1 = new intent(mainactivity.this, module433.class); startactivity(newactivity1); break; } } }); } }
you want this:
codelearnlessons.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { if (position ==0){ intent intent = new intent(this, module442.class); startactivity(intent); } else if (position ==1){ intent intent = new intent(this, module433.class); startactivity(intent); } } });
Comments
Post a Comment