REAQ 2023-01-23 21:03 采纳率: 75%
浏览 16
已结题

安卓在fragment中切换radiobutton的背景无效果

安卓广告轮播图的小圆点是radioButton,在活动中设置backgroundResource的时候可以改变背景颜色,但是在fragment中的onresume调用却不行
//      轮播图,主活动中设置
        @SuppressLint({"MissingInflatedId", "LocalSuppress"}) ViewPager2 viewPager2 =findViewById(R.id.viewpager);
        viewPager2.setAdapter(new Adapter(MainActivity.this));
        RadioButton button=findViewById(R.id.dot2);
        button.setBackgroundResource(R.drawable.dot_selected);


//fragment中
 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View v1=LayoutInflater.from(context).inflate(R.layout.fragment_home, null, false);
        dots.add(v1.findViewById(R.id.dot1));
        dots.add(v1.findViewById(R.id.dot2));
        dots.add(v1.findViewById(R.id.dot3));
        dots.add(v1.findViewById(R.id.dot4));
        dots.add(v1.findViewById(R.id.dot5));

        View v=inflater.inflate(R.layout.recycle_picture_fragment, container, false);
        ImageView view=v.findViewById(R.id.imgView);
        view.setImageResource(imgs.get(index));
        return v;
    }

    @Override
    public void onResume() {
        Log.d("OnResume","Onresume调用");
        super.onResume();
        Log.d("LIST",dots.size()+"");
        dots.get(0).setBackgroundResource(R.drawable.dot_selected);

//        dots.get(adapter.nowIndex).setBackgroundResource(R.drawable.dot_unselected);
//        adapter.nowIndex=index;
//        dots.get(adapter.nowIndex).setBackgroundResource(R.drawable.dot_selected);
    }
我是想在viewpage2切换fragment时,在frag中清除上个小圆点的选中状态,同时设置对应当前frag小圆点的选中状态。但是设置在frag中设置没反应。
  • 写回答

3条回答 默认 最新

  • Halifax ‎ 2023-01-23 21:28
    关注

    望采纳!!新年快乐🎉🎉

    你可以使用 viewpager2 调用registerOnPageChangeCallback,去监听 viewPager2 滑动监听。

    可在onPageSelected 回调方法里面,通过 position 来设置按钮选中的样式,然后再去设置集合 dots 里面其他位置的按钮背景清空。
    serBackground(null)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月19日
  • 已采纳回答 2月11日
  • 创建了问题 1月23日

悬赏问题

  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解