Android – 如何将项目单击方法添加到ArrayAdapter

我有一个简单的ArrayAdapter.我想为列表的每一行点击设置一个监听器,以便打开一个新的Activity.我该怎么办?我的ArrayAdapter代码
public class Countrylistadapter extends ArrayAdapter<String> {
private final Activity context;
private final ArrayList<String> names;

public Countrylistadapter(Activity context,ArrayList<String> names) {
    super(context,R.layout.rowlayout,names);
    this.context = context;
    this.names = names;
}

@Override
public View getView(int position,View convertView,ViewGroup parent) {
    LayoutInflater inflater = context.getLayoutInflater();
    View rowView = inflater.inflate(R.layout.rowlayout,null,true);
    TextView textView = (TextView) rowView.findViewById(R.id.label);
    textView.setText(names.get(position));
    return rowView;
}

解决方法

假设您正在使用ListActivity实现OnItemClickListener
你可以使用这段代码
ArrayAdapter<Object> ad = new ArrayAdapter<Object>(this,android.R.layout.simple_list_item_checked,items);
        setlistadapter(ad);
        ListView list = getListView();
        list.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
        //list.setItemChecked(0,true);
        list.setonItemClickListener(this);

编辑:
否则,如果不扩展ListActivity,请在布局中使用listview,并使用ListView list = findViewById(R.id.listView)替换ListView list = getListView().用.替换list.setonItemClickListener(this)

list.setonItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent,View view,int position,long id) {

            }
        });

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...