自定义列表视图和适配器覆盖getView,更改文本颜色

戴夫

对于这样的问题,堆栈溢出有很多答案,但是我找不到我可以转化为我的情况的答案。

实际上,我有一个重写getView方法的列表视图,该列表视图本身正在显示一个字符串,我要实现的目的是能够在以后的时间(而不是在首次创建该文本时)更新此文本的颜色。

我目前所拥有的是物品所在的位置,从这里开始我基本上被卡住了,不确定下一步如何。

 ListView lv = (ListView) rootView.findViewById(R.id.lvBarcodes);
            Adapter adaptor = lv.getAdapter();
            int Position = getPosition(CurrentBarcode);
            lBarcodes l = (lBarcodes) lv.getItemAtPosition(Position);

我基本上包含2个方法,即set和get,所以我相信这一步是没有用的,我基本上想要的是setTextColour(position)方法!

我在下面附上了我的代码:

设置列表视图:

ListView lv = (ListView) rootView.findViewById(R.id.lvBarcodes);
            LA_Barcodes adaptor = new LA_Barcodes(getActivity(),barcodeList);
            lv.setAdapter(adaptor);

方法:

public class LA_Barcodes extends BaseAdapter{

     ViewHolder holder = null;

    private static LayoutInflater inflater = null;
    private final ArrayList Lines;

    public LA_Barcodes(Context _ctx, ArrayList _lines)
    {
        this.Lines = _lines;
        Context ctx = _ctx;
        inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }

    @Override
    public int getCount() {
        if (Lines.size() <= 0)
            return 1;
        return Lines.size();
    }

    @Override
    public Object getItem(int position) {
        return Lines.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        View vi = convertView;


        if(convertView == null)
        {
            vi = inflater.inflate(R.layout.lv_barcodes,null);
            holder = new ViewHolder();
            holder.Barcodes = (TextView) vi.findViewById(R.id.barcodes);
            vi.setTag(holder);
        }
        else
        {
            holder = (ViewHolder) vi.getTag();
        }


        if(Lines.size() == 0)
        {
            holder.Barcodes.setText("No Outstanding Deliveries!");
        }
        else
        {
            lBarcodes temp;
            temp = (lBarcodes) Lines.get(position);
            holder.Barcodes.setText(temp.getBarcode());
        }

        return vi;

    }



    public static class ViewHolder
    {
        public TextView Barcodes;
    }
}
MHP

您可以在适配器中定义另一个空的arrayList,以保留应更改颜色的editText的位置。

ArrayList<Integer> pos = new ArrayList<Integer>();

和在数组中添加位置的方法:

public void addPos(int position){
   pos.add(position);
   notifyDataSetChanged();
}  

然后在您的适配器(在getView()方法中)检查此数组中是否存在位置,请更改textColor:

if(pos.contain((Object) position)){
     //change text color
}  

您可以致电adapter.addPos(CurrentBarcode);更改textColor

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

自定义文本视图适配器不适用于列表视图

来自分类Dev

自定义适配器不显示列表视图

来自分类Dev

使用自定义适配器和视图持有器的Android列表视图

来自分类Dev

在自定义适配器列表视图中突出显示搜索到的文本

来自分类Dev

在自定义适配器列表视图中突出显示搜索到的文本

来自分类Dev

自定义适配器不在列表视图中显示文本

来自分类Dev

使用自定义列表视图适配器和不同布局的结果不正确

来自分类Dev

滚动列表视图和自定义适配器的问题

来自分类Dev

Android Java:用于滚动和过滤问题的列表视图的自定义适配器

来自分类Dev

ImageView在getView()时崩溃了自定义适配器

来自分类Dev

getview自定义适配器上的nullpointerexception

来自分类Dev

自定义适配器的getview中的NullPointerException

来自分类Dev

自定义适配器的getView返回错误的位置

来自分类Dev

getView()中的自定义适配器错误

来自分类Dev

自定义适配器getView中的IndexOutOfBounds异常

来自分类Dev

自定义适配器 getView 返回空指针

来自分类Dev

在片段中每个列表视图有多个文本视图的情况下,如何设置自定义适配器

来自分类Dev

如何使用Hashmap为自定义列表视图创建自定义适配器

来自分类Dev

使用自定义适配器视图时,如何使列表视图可点击?

来自分类Dev

在自定义列表视图适配器中使用多个视图

来自分类Dev

在对话框片段和自定义列表视图适配器之间实现接口时出错

来自分类Dev

Android - 将搜索栏添加到自定义列表视图和简单适配器

来自分类Dev

将列表视图的数据从Asynctask传递到自定义列表适配器类

来自分类Dev

列表视图中的页脚按钮,如何从自定义列表适配器获取价值

来自分类Dev

Android:具有图像和文本错误的自定义网格视图适配器

来自分类Dev

Android:具有图像和文本错误的自定义网格视图适配器

来自分类Dev

自定义视图的适配器中的NullPointerException

来自分类Dev

自定义适配器视图(带有图片)

来自分类Dev

自定义列表适配器onClick方法返回空视图ID

Related 相关文章

  1. 1

    自定义文本视图适配器不适用于列表视图

  2. 2

    自定义适配器不显示列表视图

  3. 3

    使用自定义适配器和视图持有器的Android列表视图

  4. 4

    在自定义适配器列表视图中突出显示搜索到的文本

  5. 5

    在自定义适配器列表视图中突出显示搜索到的文本

  6. 6

    自定义适配器不在列表视图中显示文本

  7. 7

    使用自定义列表视图适配器和不同布局的结果不正确

  8. 8

    滚动列表视图和自定义适配器的问题

  9. 9

    Android Java:用于滚动和过滤问题的列表视图的自定义适配器

  10. 10

    ImageView在getView()时崩溃了自定义适配器

  11. 11

    getview自定义适配器上的nullpointerexception

  12. 12

    自定义适配器的getview中的NullPointerException

  13. 13

    自定义适配器的getView返回错误的位置

  14. 14

    getView()中的自定义适配器错误

  15. 15

    自定义适配器getView中的IndexOutOfBounds异常

  16. 16

    自定义适配器 getView 返回空指针

  17. 17

    在片段中每个列表视图有多个文本视图的情况下,如何设置自定义适配器

  18. 18

    如何使用Hashmap为自定义列表视图创建自定义适配器

  19. 19

    使用自定义适配器视图时,如何使列表视图可点击?

  20. 20

    在自定义列表视图适配器中使用多个视图

  21. 21

    在对话框片段和自定义列表视图适配器之间实现接口时出错

  22. 22

    Android - 将搜索栏添加到自定义列表视图和简单适配器

  23. 23

    将列表视图的数据从Asynctask传递到自定义列表适配器类

  24. 24

    列表视图中的页脚按钮,如何从自定义列表适配器获取价值

  25. 25

    Android:具有图像和文本错误的自定义网格视图适配器

  26. 26

    Android:具有图像和文本错误的自定义网格视图适配器

  27. 27

    自定义视图的适配器中的NullPointerException

  28. 28

    自定义适配器视图(带有图片)

  29. 29

    自定义列表适配器onClick方法返回空视图ID

热门标签

归档