我在片段而不是活动中尝试了这段代码,但它不起作用:
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(...)”
所以我希望你知道答案,提前谢谢。
答案 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);
// ^^^^^^