我的程序用到listview,每个item又有一个button,点击button要实现不同的功能,要用到position,求具体getview()方法的操作。
解决方案 »
- 请教高手关于Bitmap的copy()问题
- 用手指移动WebView,出现程序意外停止。(moto720)
- 使用谷歌地图Logcat出现 Couldn't get connection factory client,怎么解决?
- 初来android平台,请指教
- 怎么样统计APP里的用户使用情况?了解一下更好的优化APP
- 如何用C++访问android的assets中的文件,请高手们帮忙?
- 在Android系统中如何调用系统自带的视频解码器?
- 怎样启动一个应用,让这个应用启动后直接Pause到后台?
- 全志 android4.2.2 wifi打不开
- 一个简单的新闻客户端,为什么在模拟器上可以获得新闻数据,放到真机上就不行了
- 亲们!android应用层开发与应用程序开发的区别?
- android的R.id cannot be resolved问题~~~!!!!!!!
package com.alex.button.in.listview;import android.app.ListActivity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.Toast;public class ButtonInListViewActivity extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setListAdapter(new ButtonAdapter());
} private class ButtonAdapter extends BaseAdapter { @Override
public int getCount() {
return 5;
} @Override
public Object getItem(int position) {
return null;
} @Override
public long getItemId(int position) {
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
final int pos = position;
View view = convertView;
if(view == null) {
LayoutInflater inflater = LayoutInflater.from(ButtonInListViewActivity.this);
view = inflater.inflate(R.layout.list_item, null);
}
Button btn = (Button) view.findViewById(R.id.button_in_list);
btn.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
Toast.makeText(ButtonInListViewActivity.this,
"button at position " + pos + " is clicked", Toast.LENGTH_LONG).show();
}
});
return view;
}
}
}
public void onClick(View v) {
Toast.makeText(ButtonInListViewActivity.this,
"button at position " + pos + " is clicked", Toast.LENGTH_LONG).show();
}把每个button的posistion 位置都打出来了,还没用到position么?这个position就是getView中的position参数。
//这是在自定义adapter里面的参数
private List<? extends Map<String, ?>> _data;
......................
............................ public Personal_Info_Adapter(Context context,
List<? extends Map<String, ?>> data, int resource,
String[] from, int[] to) {
super(context, data, resource, from, to);
_data=data;
// TODO Auto-generated constructor stub
}
...........................
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
_data.get(position).get("your_map_key");
}应该是这样用的,你试试