大佬教程收集整理的这篇文章主要介绍了android – 如何从Cursor获取数据到ContextMenu,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@Override public @R_874_8487@an onContextItemSELEcted(MenuItem item) { switch (item.getItemId()) { case deletE_ID: AdapterView.AdapterContextMenuInfo info= (AdapterView.AdapterContextMenuInfo)item.getMenuInfo(); delete(info.id); return(true); } return(super.onOptionsItemSELEcted(item)); }
这很棒,因为它允许我获取所单击的上下文菜单的相应sqlite数据库ID,这将允许我编写一个函数来进行查找.但我当然可以重用当前的光标吗?
我试过这样做:
cursor c = (cursor) this.getlistadapter().getItem((int) info.id); String itemPriority = c.geTint(1); Log.v(tag,"Current item:" + itemPriority);
但是光标线似乎只返回数据库的模式而不是我之后的记录.
请有人请说清楚.
编辑:感谢@azgolfer我找到了解决方案.我使用fillData()方法来填充适配器.通常,这是在没有变量的情况下声明的.我不得不用一个字段变量重新定义这个方法.在onContextItemSELEcted中使curstor适配器可见的代码的相关部分在这里:
private void fillData() { cursor itemscursor = mDbHelper.fetchAllItemsFilter(mListId,mStatusFilter); startManagingcursor(itemscursor); mItemAdaptor = new ItemAdapter(this,itemscursor); this.setlistadapter(mItemAdaptor); }
首先,确定用户按下的位置:
AdapterView.AdapterContextMenuInfo info= (AdapterView.AdapterContextMenuInfo)item.getMenuInfo(); int itemPosition = info.position;
然后将光标移动到所需位置并检索记录:
cursor cursor = (Your cursorAdapter).getcursor(); cursor.moveToPosition(itemPosition); String itemPriority = cursor.geTint(1); Log.v(tag,"Current item:" + itemPriority);
以上是大佬教程为你收集整理的android – 如何从Cursor获取数据到ContextMenu全部内容,希望文章能够帮你解决android – 如何从Cursor获取数据到ContextMenu所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。