从另一个列表视图发送到列表视图

时间:2014-11-27 02:01:42

标签: java listview onitemclicklistener

我在点击另一个listview上的项目时尝试显示listview。我该怎么做?

这是我的代码:

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();


    }


}

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点, 一种方法是(不是最好的方法)利用相同的列表视图并在项目点击事件中更改内部的适配器。问题是你需要手动处理导航,后退按钮等

其他方法是在项目点击事件中使用另一个列表视图开始新活动,此方法是首选,因为不必编写一堆代码来处理导航,后台堆栈等。

否则你可以使用片段,两个片段和列表视图。