我的Java代码:如何创建一个ListView
public class MainActivity extends Activity {
String[] name;
String[] family;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name=new String[]{"aaa","bbb","ccc","ddd","fff"};
family=new String[]{"Ahamadi","Ahamadi","Ahamadi","Ahamadi","Ahamadi"};
ListView list=(ListView) findViewById(R.id.list_View);
MyAdapter adapter=new MyAdapter(getApplicationContext());
list.setAdapter(adapter);
}//end method OnCreate
private class MyAdapter extends BaseAdapter
{
LayoutInflater MyInflater;
public MyAdapter(Context context)
{
MyInflater=LayoutInflater.from(context);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return name.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@SuppressLint("InflateParams")
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder X=new ViewHolder();
if(convertView==null)
{
convertView=MyInflater.inflate(R.layout.list_item,null);
X.Name=(TextView) convertView.findViewById(R.id.Text_name);
X.Family=(TextView) convertView.findViewById(R.id.Text_family);
convertView.setTag(X);
}
else{
X=(ViewHolder)convertView.getTag();
}
X.Name.setText(name[position]);
X.Family.setText(family[position]);
// TODO Auto-generated method stub
return convertView;
}
//-class Holder
public class ViewHolder
{
TextView Name;
TextView Family;
}
}
}
,并创建XML格式的ListView控件。程序运行时,它显示按摩:“Applecation已停止”。
看看有什么消息你logcat的,并张贴在你的问题 – joao2fast4u
发布你的日志和/或activity_main.xml中的文件。 – Simas
http://stackoverflow.com/questions/16333754/how-to-customize-listview-using-baseadapter 引用此 – sunil