1. 程式人生 > >ListView的兩種監聽某一項的單擊事件的方法

ListView的兩種監聽某一項的單擊事件的方法

第一種,通過Adapterparent.getAdapter()方法來獲取

adapter=new FirstListViewAdapter(list,getActivity());

        listView.setAdapter(adapter);

        //監聽單擊項的事件

       listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override

            public voidonItemClick(AdapterView<?> parent, View view, int position, long id) {

               Adapter nadapter=parent.getAdapter();

                //獲得單條的資料

               Map<String,Object> map= (Map<String, Object>)nadapter.getItem(position);

                //獲得當前點選的新聞的編號

                StringnId=map.get("id").toString();

                //跳轉窗體

                Intent intent=newIntent(getActivity(), NewContentActivity.class);

               intent.putExtra("id",nId);

               getActivity().startActivity(intent);

            }

        });

}

第二種,通過TextView獲得id 的值得方法來獲取

listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
    @Override
    public void onItemClick(AdapterView<?>parent, View view, int

position, long id) {
        TextView textid = (TextView)view.findViewById(R.id.textid);lvid = textid.getText().toString();
        Intent intent = new Intent(context,ContentActivity.class);
        intent.putExtra("id",lvid);
        context.startActivity(intent);
    }
});