Java 从另一个listview发送到listview
当我在中单击另一个Java 从另一个listview发送到listview,java,listview,onitemclicklistener,Java,Listview,Onitemclicklistener,当我在中单击另一个列表视图上的项目时,我试图显示一个列表视图。我该怎么做 这是我的代码: public class ListaPrincipal extends Activity implements OnItemClickListener{ private ListView lvPrincipal; private List<String> principal; private ArrayAdapter<String> adapter;
列表视图上的项目时,我试图显示一个列表视图
。我该怎么做
这是我的代码:
public class ListaPrincipal extends Activity implements OnItemClickListener{
private ListView lvPrincipal;
private List<String> principal;
private ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista_prinicpal);
llenarLista();
mostrarListar();
}
private void llenarLista(){
principal = new ArrayList<String>();
principal.add("Gorras");
principal.add("Nintendo DS");
principal.add("Pantuflas");
principal.add("Peluches");
principal.add("Xbox 360");
}
private void mostrarListar(){
lvPrincipal = (ListView)findViewById(R.id.listaprincipal);
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, principal);
lvPrincipal.setAdapter(adapter);
lvPrincipal.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> arg0, View view, int pos, long id) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "Clickeado", Toast.LENGTH_LONG).show();
}
}
公共类ListaPrincipal扩展活动实现了ListClickListener{
私有列表视图;
私人名单负责人;
专用阵列适配器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u lista\u prinicpal);
llenarLista();
莫斯特拉利斯塔();
}
私有无效llenarLista(){
主体=新的ArrayList();
委托人。添加(“Gorras”);
委托人。添加(“任天堂DS”);
委托人。添加(“Pantuflas”);
委托人。添加(“Peluches”);
委托人。添加(“Xbox 360”);
}
私有void mostrarListar(){
lvPrincipal=(ListView)findViewById(R.id.listaprincipal);
adapter=new ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1,主体);
lvPrincipal.setAdapter(适配器);
lvPrincipal.setonicmclicklistener(this);
}
@凌驾
public void onItemClick(AdapterView arg0,视图,整数位置,长id){
//TODO自动生成的方法存根
Toast.makeText(getApplicationContext(),“Clickeado”,Toast.LENGTH\u LONG.show();
}
}
有几种方法可以做到这一点,
一种方法是(不是最好的方法)利用相同的列表视图并更改项目单击事件中的适配器。问题是您需要手动处理导航、后退按钮等
另一种方法是在项目单击事件中使用另一个listview启动新活动,这种方法是首选的,因为不必编写大量代码来处理导航、后堆栈等
或者您可以使用片段,两个带有列表视图的片段