最近,刚搞android,要实现一个类似listview的东西,要其中每个item中均有不同的控件,且要每个控件均能接受点击事件并通知到底是哪个item中的哪个控件被点击了。
之前,在网上看到类似的帖子,能够实现每个item中添加多个控件,却不能具体定位到是那个item中的那个控件被点击了。
以下是具体代码,分析下具体步骤吧:
1.数据来源:我这里用了一个函数产生getData();
2.主要是需要一个Adapter:由于我们的item中控件的扩展性,自己写了一个(如果只是显示下图片,文字,没有监听器可以直接使用ArrayAdapter)。
实现一个Adapter主要需要实现两个比较重要的函数public int getCount()和public View getView(int position, View convertView, ViewGroup parent),第一个函数返回显示的行数,第二个显示具体需要显示的内容。
具体内容,在代码中均有注释,也不是很复杂,可以自己建一个工程试一试,但需要做些必要修改(因为我是直接从我工程中拷贝的)。
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.util.AttributeS