java - ListView 的替代颜色在 Android 中滚动屏幕时消失

标签 java android listview android-listview view

我正在使用 ListView,其中的交替行是彩色的。但是当 ListView 超过屏幕的长度时,在滚动时,替代颜色会消失。 下面是我的代码:

public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        convertView = getActivity().getLayoutInflater()
                .inflate(R.layout.problem_list_row, null);
        if(position%2!=0) {
            convertView.setBackgroundColor(Color.parseColor("#ebebeb"));
        }
    }
    if(position%2!=0){
        convertView.setBackgroundColor(Color.parseColor("#ebebeb"));
    }
    /* some code */
    return convertView;
}

下面附上 ListView 的图像。

enter image description here

最佳答案

试试这段代码

  public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
    convertView = getActivity().getLayoutInflater()
            .inflate(R.layout.problem_list_row, null);

}
if(position%2==0)
{
    // SET EVEN POSITION COLOR
    convertView.setBackgroundColor(Color.parseColor("#ebebeb"));
}
else
{
   //SET ODD POSITION COLOR
}

/* some code */
return convertView;

}

希望对你有帮助

关于java - ListView 的替代颜色在 Android 中滚动屏幕时消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27677096/

相关文章:

android - 从 ArrayList 创建 ListView 布局

java - ANTLR4 中 token 的负数

javascript - 使用 navigator.getUserMedia (Javascript) 访问移动麦克风

android - 使用 ActionBarSherlock 时更改 Activity 背景

android - 类似 Facebook 的弹出菜单用于编辑/删除/垃圾邮件

java - ListView 的奇怪行为

java - Java文件复制时出现异常

java - 将 byte[] 转换为 JsonObject

java - 使用 javascriptExecutor 查找 WebElement

android - 如何在运行时在android中使部分文本加粗?