android音乐播放器底部,android音乐播放器开发中所遇到的bug及解决方法

这几天在写一个android版的音乐播放器,在开发过程中遇到了一些小问题 小bug,最后经过一番调试与查找

终于发现问题所在。现在将开发中的问题与解决方法分享给大家...

一,音乐播放器的界面我采用的是ViewPager+Fragment的方式来实现。

二,底部有四个Tab按钮,采用的是xml的组合模板+自定义的view布局方式来实现,四个Tab按钮名分别为

音乐​ 播放 专辑 设置

a4c26d1e5885305701be709a3d33442f.png

图片:​

a4c26d1e5885305701be709a3d33442f.png

三,开发过程中遇到的Bug :

1,当从设置按钮界面切换到播放按钮界面时播放界面上的播放图标按钮又变成默认的暂停状态。(猜想:可能是fragment又重新绘制了界面

系统自动调用里onCreateView()方法)

2,我在设置按钮界面的​onCreateView()方法里设置了一个Toast通知,当我点击专辑按钮时,弹出里Toast通知里的消息(专辑按钮里没有添加任何Toast)。(猜想:可能是一个Fragment的重绘

引起了另一个fragment的重绘)

三,解决方法

1,根据上述的猜想,经过调试验证,猜想正确。所以你可以在fragment里设置一个成员属性的标记值,在onCreateView根据这个标记值

作一个 if 语句的条件进行判断,将fragment所加载的xml布局代码View view =

inflater.inflate(resource, root,

attachToRoot);放在此if语句里,确保只执行一次(即修改标记值),即可解决fragment的多次加载xml布局文件 和

界面刷新问题。

,2,将fragment作为ViewPager的适配器资源时。当用户滑动界面进行页面切换时,可能出现

fragment的重绘问题,fragment的view有缓存则界面无需重绘,切换一个fragmenet的同时也可能会引起另一个fragment的重新绘制(onCreatView())​

当fragment作为(加入到)ViewPager的资源显示页时​,其已经缓存在viewpager中,只不过在每次页面滑动时又会走onCreatView()方法使数据改变,为保证数据不变应添加一个标记

保证重绘界面(onCreatView()里的方法)只执行一次即可。

结语:由于本文是博主的亲身经历,技术水平有限。文中若有不对或各位有不同观点的,大家可以评论指正,此篇博文希望对大家有所帮助..........​

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值