我正在尝试使用Array中的项填充ListView,显然一切正常但是当我运行应用程序时ListView是空的......但事实并非如此。问题是它实际上不是空的,项目是不可见的......只有当我点击它们时才显示。
这是我的代码:
SQLite data = new SQLite(getApplicationContext());
db = data.getReadableDatabase();
String query = "SELECT question, corrOp, inc1, inc2, inc3 FROM questions WHERE idCat = '" + bundle.getInt("CAT") + "' ORDER BY RANDOM() LIMIT 5";
c = db.rawQuery(query,null);
startManagingCursor(c);
c.moveToFirst();
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
Pregunta aux = new Pregunta();
aux.initValues(c.getString(0), c.getString(1), c.getString(2), c.getString(3), c.getString(4));
p.add(aux);
}
lbl.setText(p.get(0).getQuestion());
ArrayList<String> r = new ArrayList<String>();
r.add(p.get(0).getCorrect());
r.add(p.get(0).getIncorrect1());
r.add(p.get(0).getIncorrect2());
r.add(p.get(0).getIncorrect3());
Collections.shuffle(r);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_1, r);
lst.setAdapter(adapter);
Activity的xml文件的“code”块引用ListView:
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:layout_marginTop="25dp"
android:layout_marginBottom="25dp"
android:layout_marginLeft="25dp"
android:layout_marginRight="25dp" >
</ListView>
任何想法?
谢谢! :)
答案 0 :(得分:1)
您正在使用应用程序上下文,这可能是一个问题。您应该使用Activity Context而不是Application context。
listView Items的背景可能与其文本颜色相同。更改listView背景。