1、activity中 声明,并使用listview
mUserList = (ListView) findViewById(R.id.users_online_list);
// 添加点击
mUserList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// setTitle("点击第" + arg2 + "个项目");
//showToast();
}
});
2、使用自定义的adapter
List<LoginLocalAreaNetworkUser> userlist = this.mService.getUserList();
userOnlineAdapter mUserOnlineAdapter = new userOnlineAdapter(this, userlist);
mUserList.setAdapter(mUserOnlineAdapter);
3、自定义adapter
public class userOnlineAdapter extends BaseAdapter {
private Context mContext;
private LayoutInflater mInflater;
private List<LoginLocalAreaNetworkUser> mUserlist;
public void setmUserlist(List<LoginLocalAreaNetworkUser> mUserlist) {
this.mUserlist = mUserlist;
}
public userOnlineAdapter(Context context,List<LoginLocalAreaNetworkUser> userlist) {
super();
this.mContext = context;
mInflater = LayoutInflater.from(context);
mUserlist = userlist;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mUserlist.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public View getView(final int position, View view, ViewGroup arg2) {
// TODO Auto-generated method stub
if(view == null){
view = mInflater.inflate(R.layout.list_items_users_online, null);
}
TextView userItemTitle = (TextView) view.findViewById(R.id.userItemTitle);
ImageView userItemDelete = (ImageView) view.findViewById(R.id.userItemDelete);
userItemTitle.setText(mUserlist.get(position).getUser_Name());
userItemDelete.setImageResource(R.drawable.user_item_delete);
if(mIsServer){
userItemDelete.setVisibility(View.VISIBLE);
}else{
userItemDelete.setVisibility(View.GONE);
}
userItemDelete.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
((TogetherGamePlayActivity)mContext).getService().disconnectUser(mUserlist.get(position));
}
});
return view;
}
4、自定义adapter中使用的item layout ,list_items_users_online.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:paddingBottom="4dip"
android:paddingLeft="12dip"
android:paddingRight="12dip">
<TextView
android:text="TextView01"
android:layout_height="wrap_content"
android:textSize="20dip"
android:layout_width="fill_parent"
android:id="@+id/userItemTitle"
/>
<ImageView
android:paddingTop="12dip"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/userItemDelete"
/>
</RelativeLayout>
备注:gridview 实现方式与 listview 类似。