第一次发帖
实现效果图:
局布文件:
vlist2.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
<? xml version = "1.0" encoding = "utf-8" ?>
< LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "horizontal"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent" >
< ImageView android:id = "@+id/img"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_margin = "5px" />
< LinearLayout android:orientation = "vertical"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content" >
< TextView android:id = "@+id/title"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "#FFFFFFFF"
android:textSize = "22px" />
< TextView android:id = "@+id/info"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textColor = "#FFFFFFFF"
android:textSize = "13px" />
</ LinearLayout >
< Button android:id = "@+id/view_btn"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:text = "@string/s_view_btn"
android:layout_gravity = "bottom|right" />
</ LinearLayout >
|
程序代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
/**
* @author allin
*
*/
public class MyListView4 extends ListActivity {
private List<Map<String, Object>> mData;
@Override
public void onCreate(Bundle savedInstanceState) {
super .onCreate(savedInstanceState);
mData = getData();
MyAdapter adapter = new MyAdapter( this );
setListAdapter(adapter);
}
private List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put( "title" , "G1" );
map.put( "info" , "google 1" );
map.put( "img" , R.drawable.i1);
list.add(map);
map = new HashMap<String, Object>();
map.put( "title" , "G2" );
map.put( "info" , "google 2" );
map.put( "img" , R.drawable.i2);
list.add(map);
map = new HashMap<String, Object>();
map.put( "title" , "G3" );
map.put( "info" , "google 3" );
map.put( "img" , R.drawable.i3);
list.add(map);
return list;
}
// ListView 中某项被选中后的逻辑
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
Log.v( "MyListView4-click" , (String)mData.get(position).get( "title" ));
}
/**
* listview中点击按键弹出对话框
*/
public void showInfo(){
new AlertDialog.Builder( this )
.setTitle( "我的listview" )
.setMessage( "分析..." )
.setPositiveButton( "定确" , new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.show();
}
public final class ViewHolder{
public ImageView img;
public TextView title;
public TextView info;
public Button viewBtn;
}
public class MyAdapter extends BaseAdapter{
private LayoutInflater mInflater;
public MyAdapter(Context context){
this .mInflater = LayoutInflater.from(context);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
}
@Override
public Object getItem( int arg0) {
// TODO Auto-generated method stub
return null ;
}
@Override
public long getItemId( int arg0) {
// TODO Auto-generated method stub
return 0 ;
}
@Override
public View getView( int position, View convertView, ViewGroup parent) {
ViewHolder holder = null ;
if (convertView == null ) {
holder= new ViewHolder();
convertView = mInflater.inflate(R.layout.vlist2, null );
holder.img = (ImageView)convertView.findViewById(R.id.img);
holder.title = (TextView)convertView.findViewById(R.id.title);
holder.info = (TextView)convertView.findViewById(R.id.info);
holder.viewBtn = (Button)convertView.findViewById(R.id.view_btn);
convertView.setTag(holder);
} else {
holder = (ViewHolder)convertView.getTag();
}
holder.img.setBackgroundResource((Integer)mData.get(position).get( "img" ));
holder.title.setText((String)mData.get(position).get( "title" ));
holder.info.setText((String)mData.get(position).get( "info" ));
holder.viewBtn.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
showInfo();
}
});
return convertView;
}
}
}
|
文章结束给大家分享下程序员的一些笑话语录:
姿势要丰富,经常上百度!