Android Studio:SQLite Helper不起作用

时间:2018-02-09 17:50:16

标签: android sqlite

我在片段而不是活动中尝试了这段代码,但它不起作用:

this.listView = (ListView) findViewById(R.id.listView_easy);
    DatabaseAccess databaseAccess = DatabaseAccess.getInstance(this);
    databaseAccess.open();
    List<String> quotes = databaseAccess.getQuotes();
    databaseAccess.close();

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, quotes); //android.R.layout.simple_list_item_1
    this.listView.setAdapter(adapter);

无法解析符号“listView”和构造函数“ArrayAdapter(...)”

所以我希望你知道答案,提前谢谢。

1 个答案:

答案 0 :(得分:2)

在片段中,您必须将布局膨胀为View

// inside onCreateView
View view = LayoutInflater.from(getActivity()).inflate(R.layout.your_layout_name, container, false)
// layout which has listview                              ^^^^^^^^^^^^^^^^^^^^

然后将listview初始化为

this.listView = (ListView) view.findViewById(R.id.listView_easy);

Fragment没有自己的context,因此请使用getActivity()创建适配器

ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, quotes);
//                                                        ^^^^^^