--------------------------
--------------------------
--------------------------
--------------------------
--------------------------
- PhoneBookAdapter extends BaseAdapter
public class PhoneBookAdapter extends BaseAdapter {
private Context mCtx;
private LayoutInflater mLI;
private List<UserInfo> list =new ArrayList<>();
public PhoneBookAdapter(Context ctx,List<UserInfo> list) {
this.mCtx = ctx;
this.list=list;
this.mLI = (LayoutInflater) mCtx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
/*有多少条数据*/
@Override
public int getCount() {
return list.size();
}
/*返回一条数据对象*/
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
/*返回一个视图*/
convertView = mLI.inflate(R.layout.phone_book, null);
TextView nameTV =convertView.findViewById(R.id.name_text_view);
TextView ageTV =convertView.findViewById(R.id.ageTV);
ImageView avatarIV =convertView.findViewById(R.id.avatarIV);
nameTV.setText(list.get(position).getName());
ageTV.setText(String.valueOf(list.get(position).getAge()));
avatarIV.setImageResource(R.drawable.ic_launcher_background);
return convertView;
}
}
ListViewDemoActivity
public class ListViewDemoActivity extends AppCompatActivity {
private ListView mPhoneBookListView;
private List<UserInfo> userInfos;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_view);
mPhoneBookListView=findViewById(R.id.listView);
userInfos = new ArrayList<>();
userInfos.add(new UserInfo("刘备",44));
userInfos.add(new UserInfo("赵云",44));
userInfos.add(new UserInfo("关羽",44));
userInfos.add(new UserInfo("张飞",44));
userInfos.add(new UserInfo("马超",44));
PhoneBookAdapter phoneBookAdapter = new PhoneBookAdapter(ListViewDemoActivity.this,userInfos);
mPhoneBookListView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(ListViewDemoActivity.this,userInfos.get(position).getName()+"点击",Toast.LENGTH_SHORT).show();
}
});
mPhoneBookListView.setOnItemLongClickListener(
new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(ListViewDemoActivity.this,userInfos.get(position).getName()+"长按",Toast.LENGTH_SHORT).show();
return false;
}
}
);
mPhoneBookListView.setAdapter(phoneBookAdapter);
}
}