public class MainActivity extends AppCompatActivity {
private ListView listView;
List<User> u = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.listview);
u.add(new User(1,"a","aa"));
u.add(new User(2,"b","bb"));
u.add(new User(3,"c","cc"));
AboutUsAdapter aboutUsAdapter = new AboutUsAdapter(MainActivity.this,u);
listView.setAdapter(aboutUsAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(MainActivity.this,u.get(position).getName()+"被点了",Toast.LENGTH_SHORT).show();
u.clear();
u.add(new User(4, "d", "dd"));
aboutUsAdapter.notifyDataSetChanged();
}
});
}
}
public class AboutUsAdapter extends BaseAdapter {
private Context context;
private LayoutInflater layoutInflater;
private List<User> u = new ArrayList<>();
public AboutUsAdapter(Context context,List<User> u) {
this.context=context;
this.u = u;
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return u.size();
}
@Override
public Object getItem(int position) {
return u.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
if(convertView == null){
convertView = layoutInflater.inflate(R.layout.item,null);
viewHolder = new ViewHolder();
viewHolder.textView1 = (TextView) convertView.findViewById(R.id.item_name);
viewHolder.textView2 = (TextView) convertView.findViewById(R.id.item_age);
viewHolder.imageView = (ImageView) convertView.findViewById(R.id.item_image);
convertView.setTag(viewHolder);
}else{
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.textView1.setText(u.get(position).getName());
viewHolder.textView2.setText(String.valueOf(u.get(position).getId()));
viewHolder.imageView.setImageResource(R.drawable.wenxin);
return convertView;
}
class ViewHolder{
TextView textView1;
TextView textView2;
ImageView imageView;
}
}