如何设置onClickListener在ArrayAdapter?如何设置、onClickListener、ArrayAdapter

2023-09-06 01:55:07 作者:蜡笔吃了小新

我在做类似如下

// All necessary imports are here

public class More extends Activity {

    String[] MoreItems = { "Transfers", "Budgets", "Branches", "Tools", "News",
            "Customer Service", "Settings", "Help", "About" };

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.more_view);

        ListView moreListView = (ListView) findViewById(R.id.moreListView);
        MoreListAdapter listAdapter = new MoreListAdapter();
        moreListView.setAdapter(listAdapter);

        // accountsTypeListView.setOnItemClickListener(listClickListner);
    }

    class MoreListAdapter extends ArrayAdapter<String> {
        MoreListAdapter() {
            super(More.this, R.layout.list_item, MoreItems);
        }

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

            if (convertView == null) {
                LayoutInflater inflater = getLayoutInflater();
                row = inflater.inflate(R.layout.list_item, parent, false);
            } else {
                row = convertView;
            }
            TextView tv = (TextView) row.findViewById(R.id.textItem);

            tv.setText(getItem(position));

            return row;
        }
    }
}

这将产生清单,我想呼吁各自的点击相应的活动,比如,如果用户单击传输,然后它会显示传递活动, 我怎么能叫onClickListener这个名单上,我该如何启动活动上的点击。

It will generate the List, I want to call respective activities on respective click, like if User click Transfer then it will show transfer Activity, How can I call onClickListener on this list and how can I start Activity on click.

推荐答案

您也可以做这样的..

you can also do like this..

moreListView.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                    long arg3) {
                // TODO Auto-generated method stub
                Log.d("############","Items " +  MoreItems[arg2] );
            }

        });