Android列表视图位置和单击事件处理问题

时间:2011-09-15 05:40:03

标签: android

我在屏幕上显示了动态列表视图。在listview中,eack行中有两个按钮。我想在两个按钮上处理click事件。我的listview中有50-60行。现在,当我点击任何一行的按钮时,它将占据listview的第一行的位置。所以我的问题是我必须获得点击行的完美位置。我使用了baseadapter,但我只能在每一行上处理一次点击事件。

所以给出一些关于这个问题的暗示。

1 个答案:

答案 0 :(得分:1)

public class MovietListAdapter扩展了BaseAdapter {

public int getCount(){             return _languagechange;         }

    public Object getItem(int position) {
        return position;
    }

    public long getItemId(int position) {
        return position;
    }

public View getView(final int position,View convertView,                 ViewGroup parent){             查看v;             LayoutInflater vi =(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);             v = vi.inflate(R.layout.movi​​elistdesign,null);             ImageView iv =(ImageView)v.findViewById(R.id.icon);

        iv.setImageDrawable(mLoader.getDrawble(position));
        iv.setPadding(1, 1, 1, 1);
        ImageView star = (ImageView) v.findViewById(R.id.starrating);

star.setOnClickListener(new View.OnClickListener(){

            public void onClick(View v) {
                Bundle bundle = new Bundle();
                bundle.putString("param1", mLoader.ds1.movie_ids[position]);
                bundle.putString("param2",
                        mLoader.ds1.movie_titles[position]);
                bundle.putString("param3",
                        mLoader.ds1.movie_thumbnailarray[position]);
                bundle.putString("param4",
                        mLoader.ds1.movie_descarray[position]);
                bundle.putString("param5",
                        mLoader.ds1.movie_rating[position]);