Java 尝试从片段访问视图时出现NullPointerException
我基本上希望在调用MainActivity中的“onRewardedVideoAddresswarded”方法时更改片段中某些xml元素的可见性 以下是my MainActivity.java中的OnRewardedVideoAddresswarded方法:Java 尝试从片段访问视图时出现NullPointerException,java,android,nullpointerexception,fragment,rewardedvideoad,Java,Android,Nullpointerexception,Fragment,Rewardedvideoad,我基本上希望在调用MainActivity中的“onRewardedVideoAddresswarded”方法时更改片段中某些xml元素的可见性 以下是my MainActivity.java中的OnRewardedVideoAddresswarded方法: @Override public void onRewardedVideoAdRewarded(Placement placement) { MyFragment myFragment = new MyFragm
@Override
public void onRewardedVideoAdRewarded(Placement placement) {
MyFragment myFragment = new MyFragment();
myFragment.rewardedVideoFinished();
}
下面是我的片段的“rewardedVideoFinished”方法:
public void rewardedVideoFinished (){
myButton.setVisibility(View.INVISIBLE);
...
}
我正在初始化片段的onCreateView方法中的按钮,如下所示:
final View rootView = inflater.inflate(R.layout.tablayout_rewarded,container,false);
myButton = rootView.findViewById(R.id.mybutton);
当奖励视频广告结束并调用“OnRewardedVideoAddresswarded”时,应用程序崩溃并显示以下消息:
“java.lang.NullPointerException:尝试调用虚拟方法
空对象上的“void android.widget.Button.setVisibility(int)”无效
“参考”
我知道什么是NullPointerException,我知道调用“myButton”时它没有初始化,但为什么会这样呢?我想通过创建一个片段的新实例,它会被初始化
当奖励视频广告结束时,如何解决问题并使片段中的视图不可见
谢谢。这可能是重复的,这取决于MyFragment构造函数内部发生的情况。你能在这里分享吗?