【发布时间】:2014-07-17 20:14:02
【问题描述】:
我有一个简单的布局,其中很少有文本视图。在这里,我要做的是定义一个名称,并使用 contentProvider 将其保存到数据库中。然后,从数据库中读取此名称并显示在 textView 上。
这是我第一次获取保存在数据库中的项目的方式:
Cursor c = getContentResolver().query(TravelersProvider.CONTENT_URI, PROJECTION, null, null, null);
投影是:
String[] PROJECTION = {Travelers._ID, Travelers.NAME};
现在我需要做的是:
- 创建 contextMenu,当我单击带有名称的 textview 时,我可以编辑或删除它。
这是我将 contextMenu 注册到 TextView 的方式:
txtView1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
registerForContextMenu(v);
}
});
然后我创建它:
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
getMenuInflater().inflate(R.menu.context_menu, menu);
}
最后我定义了触摸时要做什么:
@Override
public boolean onContextItemSelected(MenuItem item) {
//TODO:
}
这是我需要帮助的地方。基本上,我需要做的是:
- 定义我接触过的那个元素。这应该会获得一个索引。
- 获取光标并将其移动到该位置。
【问题讨论】:
标签: android database contextmenu android-contentprovider android-cursor