请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为什么我的公告视图 NewsFlipperView 不显示?查了一下,没有报错

为什么我的公告视图 NewsFlipperView 不显示?查了一下,没有报错

预览的时候, NewsFlipperView 视图本身是显示的,但是在放到 fragment_home.xml 里面的时候不显示
实在不知道怎么解决,特此求助

NewsFlipperView 视图本身是显示的:

本身显示

放到 fragment_home.xml 里面的时候不显示

fragment_home.xml 里面的时候不显示

#运行起来也不显示
图片描述

暂时没法调用下面的方法,因为调用的时候,mNewsFlipperView 是null的,会报错

private fun initNews(){
        //公告
        //mNewsFlipperView.setData(arrayOf("夏日炎炎,第一波福利还有30秒到达战场",
         //   "新用户立领10000元优惠券","全场5折,全宇宙包邮"))
    }

查了半天log,也没有发现报错啥的

NewsFlipperView的相关方法执行了
图片描述

正在回答

8回答

雷宇 2018-11-23 17:07:02

https://img1.sycdn.imooc.com//szimg/5bf7c2b000013fcd25080218.jpg

第一个问题:多了一个参数,导致找不到视图。


https://img1.sycdn.imooc.com//szimg/5bf7c30400013d3a13140186.jpg

第二个问题:这个方法接收的是一个id,你传的12会当作id去查找,肯定找不到啊

0 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-23 09:51:24

我把项目导出到zip包了,这是下载地址:

链接:https://pan.baidu.com/s/1NJZTpBNUnHd00DUohFvPsA  密码:lr5o

可以参考一下


1 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-22 23:56:01

卡在这里好久天了,我快崩溃了……………………

0 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-22 23:50:52

布局里面的其它元素都是有的,但是NewsFlipperView 是空的

https://img1.sycdn.imooc.com//szimg/5bf6d09b000136f317840989.jpg


0 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-22 23:34:15

使用findViewbyId 后依然报错的截图:

https://img1.sycdn.imooc.com//szimg/5bf6cc2f000130e217840989.jpg


debug 时,发现mNewsFlipperView 根本不存在,但是mHomeBanner是存在的

https://img1.sycdn.imooc.com//szimg/5bf6cc2f0001bd4a17840989.jpg


0 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-22 23:10:07

initNews实在onViewCreated()中 截图:

(initBanner() 是正常的,我估计是因为initNews 里的mNewsFlipperView 是在MessageCenter里面实现的原因)

https://img1.sycdn.imooc.com//szimg/5bf6c67500018b1a31581706.jpg

0 回复 有任何疑惑可以回复我~
提问者 慕前端0194211 2018-11-22 23:06:58

补充一张mNewsFlipperView.setData 出错的截图:

https://img1.sycdn.imooc.com//szimg/5bf6c6070001dfa330842042.jpg


0 回复 有任何疑惑可以回复我~
雷宇 2018-11-22 23:06:33

https://img1.sycdn.imooc.com//szimg/5bf6c58f0001198e09420120.jpg

从截图可以看到,View已经加载出来了,只是没有数据。
initNews调用需要放到onViewCreated()中,请确认一下。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕前端0194211 #1
    已确认,initNews实在onViewCreated()中
    回复 有任何疑惑可以回复我~ 2018-11-22 23:07:57
  • 雷宇 回复 提问者 慕前端0194211 #2
    换成findViewbyId获取mNewsFlipperView看下效果,没问题的话就是扩展插件的问题了
    回复 有任何疑惑可以回复我~ 2018-11-22 23:12:33
  • 提问者 慕前端0194211 回复 雷宇 #3
    还是不行,用findViewById 报错如下:
    java.lang.IllegalStateException: view!!.findViewById(R.id.mNewsFlipperView) must not be null
    
    可以看我回复的截图
    回复 有任何疑惑可以回复我~ 2018-11-22 23:32:08
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信