ListView中的项目是隐藏的,只显示在Click上

时间:2014-04-24 22:09:50

标签: android listview

我知道这个奇怪的问题我从未见过这样的事情。我已将元素添加到ListView,我可以看到它们在那里,因为我可以看到每个元素后面的灰线,但我只能看到线条,而文本只有白色空格。如果我点击它然后按住我就可以看到文字和橙色背景。

知道为什么会这样吗? 代码:

// list view for questions
    lv = (ListView) findViewById(R.id.questionsLV);
    adapter = new ArrayAdapter<String>(CustomWindowTitle.this,
            android.R.layout.simple_list_item_1, list);
adapter.notifyDataSetChanged();

EditText的监听器:

questionET.setOnEditorActionListener(new OnEditorActionListener() {

@Override
public boolean onEditorAction(TextView v, int actionId,
                KeyEvent event) {
if ((actionId == EditorInfo.IME_ACTION_DONE) || ((event.isShiftPressed() == false)
&& (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) && (event.getAction() ==  
KeyEvent.ACTION_DOWN))) {
String question = v.getText() + "";
v.setText("");
list.add(question);
refreshListView();
return true;
} else
return false;
}
});

即使我用XML设置它:

<ListView
                android:id="@+id/questionsLV"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:textColor="#000000" >
            </ListView>

选中此答案可能对某人有帮助:How to change text color of simple list item

2 个答案:

答案 0 :(得分:0)

使用以下内容在values文件夹中创建color.xml文件

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="white">#FFFFFF</color>
    <color name="black">#000000</color>
</resources>

然后在v.setText()方法之后的代码中有这一行

v.setTextColor(R.color.black);

我希望这适合你。

答案 1 :(得分:0)

您是否将布局的背景颜色设置为白色?默认的android主题是一个黑色主题,在黑色背景上显示白色文本,所以如果你设置一个白色背景,你将在白色背景上以白色文字结束。

我建议您将清单中的默认主题更改为扩展@android:style/Theme.Light@android:style/Theme.Holo.Light(适用于v11 +)的主题,因为这些主题提供了与浅色背景相匹配的默认值,包括深色文本。