例如程序如下:Cursor cur = getdbData();
ListAdapter adapter = new SimpleCursorAdapter(this, R.layout.item_ring_view, cur,
new String[]{DbSQl.KEY_NAME,DbSQl.KEY_SIZE,DbSQl.KEY_LEN} , new int[]{R.id.name,R.id.size,R.id.len});
listView.setAdapter(adapter);
问题一, cur 在什么时候close好还是压根不要理会,如果在 listView.setAdapter(adapter);下就直接cur.close(),那么listView没有数据显示,疑惑....问题二, 通过上面的代码, 如何在对 R.layout.item_ring_view 的button设置click事件。 这里有一个问题,在item_ring_view 中必须对button 设置 android:focusable="false", 否则 listView 的 ItemClick失效,蛋疼! 如果在item_ring_view 中对button设置了android:focusable="false", 那么在程序运行后点击listView中的button,没有作用,就算起作用,那也是先触发 listView的 ItemClick事件,然后在Itemclick事件里设置 button.setFocusable(true);,这样,点击button才能触发事件,可我想程序运行后直接点击button就触发事件呀~~~~ 2个蛋疼... 求高手给出具体解决方案, 有代码的当然是万分感激!!!
这里的适配器是 SimpleCursorAdapter ,是 SimpleCursorAdapter 是 SimpleCursorAdapter.... 如果大爷或大姐觉得此贴给分不够,这个好说,一个字‘ 加’!!!!!
ListAdapter adapter = new SimpleCursorAdapter(this, R.layout.item_ring_view, cur,
new String[]{DbSQl.KEY_NAME,DbSQl.KEY_SIZE,DbSQl.KEY_LEN} , new int[]{R.id.name,R.id.size,R.id.len});
listView.setAdapter(adapter);
问题一, cur 在什么时候close好还是压根不要理会,如果在 listView.setAdapter(adapter);下就直接cur.close(),那么listView没有数据显示,疑惑....问题二, 通过上面的代码, 如何在对 R.layout.item_ring_view 的button设置click事件。 这里有一个问题,在item_ring_view 中必须对button 设置 android:focusable="false", 否则 listView 的 ItemClick失效,蛋疼! 如果在item_ring_view 中对button设置了android:focusable="false", 那么在程序运行后点击listView中的button,没有作用,就算起作用,那也是先触发 listView的 ItemClick事件,然后在Itemclick事件里设置 button.setFocusable(true);,这样,点击button才能触发事件,可我想程序运行后直接点击button就触发事件呀~~~~ 2个蛋疼... 求高手给出具体解决方案, 有代码的当然是万分感激!!!
这里的适配器是 SimpleCursorAdapter ,是 SimpleCursorAdapter 是 SimpleCursorAdapter.... 如果大爷或大姐觉得此贴给分不够,这个好说,一个字‘ 加’!!!!!
解决方案 »
- Android 嵌入式
- android apk混淆的问题
- android应用程序强制退出
- This element has no attached sources and the Javadoc could not found in the atta
- android WIFI无法获取RSSI信号量
- 静态注册BroadcastReceiver没有响应
- 请问我如何查看linux下实际设备是否被正确安装并运行了?
- android音乐播放器乱码问题!!
- Android ndk 调用第三方so出现 Cannot load library: reloc_library ...cannot locate问题
- APP息屏后 后台gps记录中断的问题
- 手机游戏如何初始化每一关的数据
- 问个wifi的问题
例如:
Cursor c = mDbHelper.fetchAllNotes();
startManagingCursor(c);
问题二,可以加上一句android:focusable="false",Button就不会失焦
例如:
<Button
android:text="@string/more"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/age"
android:layout_alignTop="@id/age"
android:layout_marginBottom="5px"
android:focusable="false"
android:id="@+id/btn_more" />
对于
Cursor cur = getdbData();ListAdapter adapter = new SimpleCursorAdapter(this, R.layout.item_ring_view, cur,
new String[]{DbSQl.KEY_NAME,DbSQl.KEY_SIZE,DbSQl.KEY_LEN} , new int[]{R.id.name,R.id.size,R.id.len});
listView.setAdapter(adapter); int count = listView.getCount(); // count = 6;
for (int i = 0; i < count; i++) {
View v = listView.getChildAt(i);
Log.v("view", (v==null)+"");
}运行后, count的值为6,为什么 Log.v("view", (v==null)+""); 为true, 那如何获得listview下的每个item呢
for (int i = 0; i < count; i++) {
View v = listView.getChildAt(i);
Log.v("view", (v==null)+"");
}对于这个为什么为null,是因为 ListView的item还没有加载完毕, 解决方案套个ProgressDialog,用一个变量去判断是否加载完毕, 如果加载完毕了 Handler.sendEmptyMessage 告诉 ListView 获取Item,然后对Item上的 button添加事件!! 奶奶的,浪费了我很多时间...
LayoutInflater inflater = LayoutInflater.from(context); //context 一般是Activity.this
View convertView = inflater.inflate(R.layout.item_ring_view, null);
Button btn = (Button) convertView.findViewById(R.id.你的ButtonID);
btn.setOnClickListener(...);
OK了
http://blog.csdn.net/redoffice/article/details/6666185
希望对你有帮助。