为了账号安全,请及时绑定邮箱和手机立即绑定

如何从自定义列表视图中获取特定视图和更改属性?

如何从自定义列表视图中获取特定视图和更改属性?

波斯汪 2023-06-14 14:28:38
我正在创建一个包含两个视图的自定义列表视图:一个 Imageview 和一个 TextView。一切正常,但我想访问列表视图的特定位置以更改可见性。我试过这个方法,但它不起作用。private void updateView(int index){//        View v = mListView.getChildAt(index-mListView.getFirstVisiblePosition());        View v = mListView.getAdapter().getView(index-mListView.getFirstVisiblePosition(), null, mListView);        if (v==null){ return; }        ImageView imageView = Objects.requireNonNull(v).findViewById(R.id.listview_image);        imageView.setAlpha(0.2f);        imageView.setVisibility(View.GONE);    }例如:如果首选项包含“排名”,那么我想将 setAlpha(0.2f) 设置为列表视图中的位置 0 到 5。
查看完整描述

1 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

根据您的代码,您需要将以下行添加到 getView 方法的末尾


自定义适配器列表视图


    if (Objects.requireNonNull(preferences.getString("rank", "")).equalsIgnoreCase("Recruit")

            && position <= 5) //will check the item position

    {

        //setAlpha or do anything you want if the Rank is Recruit and position is lesser or equal to 5

        holder.img.setAlpha(0.2f);

    } else

    {

        //else do the remaining part

    }


    return view;


查看完整回答
反对 回复 2023-06-14
  • 1 回答
  • 0 关注
  • 87 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信