REAQ 2023-01-23 13: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 13:28
    关注

    望采纳!!新年快乐🎉🎉

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

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

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

报告相同问题?

问题事件

  • 系统已结题 2月18日
  • 已采纳回答 2月11日
  • 创建了问题 1月23日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部