android – 在点击列表视图项目上启动新活动

前端之家收集整理的这篇文章主要介绍了android – 在点击列表视图项目上启动新活动前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我需要一些帮助才能在listview项中进行简单的单击以打开一个新的Activity.我在这里看到了很多这样的问题,但没有人帮助过我.

public class CustomListView extends ListActivity {

    private EfficientAdapter adap;
    ...

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.main);

        adap = new EfficientAdapter(this);
        setListAdapter(adap);


    }


    @Override
    protected void onListItemClick(ListView l,View v,int position,long id) {
        // TODO Auto-generated method stub
        super.onListItemClick(l,v,position,id);


        startActivity(new Intent(CustomListView.this,next.class));
    }


    public static class EfficientAdapter extends BaseAdapter implements Filterable {
        private LayoutInflater mInflater;
        private Bitmap mIcon1;
        private Context context;

        public EfficientAdapter(Context context) {
            // Cache the LayoutInflate to avoid asking for a new one each time.
            mInflater = LayoutInflater.from(context);
            this.context = context;
        }

        public View getView(final int position,View convertView,ViewGroup parent) {

            ViewHolder holder;


            if (convertView == null) {
                convertView = mInflater.inflate(R.layout.adaptor_content,null);


                convertView.setOnClickListener(new OnClickListener() {
                    private int pos = position;
                    @Override
                    public void onClick(View v) {


                    }
                });



            convertView.setTag(holder);
            }else{
            // Get the ViewHolder back to get fast access to the TextView
            // and the ImageView.
            holder = (ViewHolder) convertView.getTag();
            }


            return convertView;
        }

        ...
    }
}

我还尝试在CustomListView类中添加onCreate方法中的下一个代码,但它也不起作用

ListView lv = getListView();

// listening to single list item on click
lv.setOnItemClickListener(new OnItemClickListener() {
  public void onItemClick(AdapterView
最佳答案
从CustomListView类中删除onListItemClick(),并将startActivity()方法放在convertView.setOnClickListener()中.

convertView.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(getApplicationContext(),two.class));
    }
});

猜你在找的Android相关文章