0

SQLite カーソルからデータを取得してリストビューに入れるコードがあります。

private void displayListView() {
    cursor = myDatabase.getJoinedInfo(etSearch.getText().toString().trim());

    String[] columns = new String[] { "re_value", "g_value", "ke_value" };

    int[] to = new int[] { R.id.tvHiragana, R.id.tvMeaning, R.id.tvKanji };

    dataAdapter = new SimpleCursorAdapter(this, R.layout.wordonlist,
            cursor, columns, to, 0);

    ListView listView = (ListView) findViewById(R.id.lvWordlist);
    // Assign adapter to ListView

    listView.setAdapter(dataAdapter);
}

EditText が空の場合、最初の 10 行が使用されます。EditTextが空のときに空のListViewを表示する方法は?

4

3 に答える 3

0

EditText が空になるまでアダプタを設定しないでください。EditText にデータが入った後、アダプタを設定できます。

于 2013-08-13T08:51:05.233 に答える
0

これを試して

private void displayListView() {
    if (etSearch.getText().toString().trim().equals("")) {
        listView.setAdapter(null);
    } else {
        cursor = myDatabase.getJoinedInfo(etSearch.getText().toString()
                .trim());

        String[] columns = new String[] { "re_value", "g_value", "ke_value" };

        int[] to = new int[] { R.id.tvHiragana, R.id.tvMeaning,
                R.id.tvKanji };

        dataAdapter = new SimpleCursorAdapter(this, R.layout.wordonlist,
                cursor, columns, to, 0);

        ListView listView = (ListView) findViewById(R.id.lvWordlist);
        // Assign adapter to ListView

        listView.setAdapter(dataAdapter);
    }
}
于 2013-08-13T08:57:05.900 に答える