0

我正在尝试使用数组中的项目填充 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);

以及引用 ListView 的 Activity 的 xml 文件的“代码”块:

<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>

任何想法??

谢谢!!:)

4

1 回答 1

1

您正在使用可能是一个问题的应用程序上下文。您应该使用活动上下文而不是应用程序上下文。

listView Items 的背景可能与其文本颜色相同。更改 listView 背景。

于 2013-05-01T07:54:30.713 回答