使用OnOptionsItemSelected从listview插入数据库

时间:2014-12-01 15:44:42

标签: android listview android-sqlite

我需要一些帮助。对于android编程还有点新意,我不确定是否可以这样做。

我正在做的事情的要点:我目前从RESTful API中获取数据,将数据作为json数组返回。我获取数据并将其输入表中,然后使用适配器并在列表视图中显示所有数据。

数据看起来像这样(用数据替换x):

[{
id: xxx,
number: "xxxxx",
title: "xxxxxxx",
definition: "xxxxxxx",
status: "xxxxx",
name: "xxxxx"
},

问题在于:从列表视图中,我想获取数据,而onItemSelect,我想将所选数据插入到单独的表中。用户可以选择一个或多个listview,然后单击onoptionitemselect中的menuItem,它会将数据插入到表中。

我有两个主要问题: 1.我目前在setOnItemClickListener中使用此代码:

String item = adapterView.getItemAtPosition(position).toString();

它作为阵列泵出。我可以从数组中解析每个单独的元素吗? (根据数据,我想提取id,数字,标题等数据) 2.我不确定这是否有效,但在我有所选项目后,我可以使用onOptionsItemSelected menuitem告诉应用程序将数据插入新表吗?

这就是我现在所拥有的一切:

public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        if (id == R.id.menu_favorite){
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

感谢您的任何和所有帮助。这是一次很棒的学习经历,我希望能够学到更多。

谢谢!

1 个答案:

答案 0 :(得分:0)

我处理这个问题的方法是维护一个被选中的ID数组列表。

在onItemClick中,将位置移动到此arrayList。

然后在onOptionsItemSelected中,获取arrayList内容并使用它将数据推送到DB