当我尝试从片段(Android 6+;)将应用程序转换为MyApplication时,java.lang.ClassCastException
我有一个片段,它扩展了android.app.fragment。在onCreateView中,在某些情况下,当我尝试将应用程序强制转换为应用程序的实现时,我有java.lang.ClassCastException当我尝试从片段(Android 6+;)将应用程序转换为MyApplication时,java.lang.ClassCastException,java,android,classcastexception,android-application-class,Java,Android,Classcastexception,Android Application Class,我有一个片段,它扩展了android.app.fragment。在onCreateView中,在某些情况下,当我尝试将应用程序强制转换为应用程序的实现时,我有java.lang.ClassCastException public class SketchFragment extends android.app.Fragment{ @Nullable @Override public View onCreateView(LayoutInflater inflater, Vi
public class SketchFragment extends android.app.Fragment{
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.layout, container, false);
ButterKnife.bind(this,inflate);
MyApplication application = (MyApplication) getActivity().getApplicationContext();
//Previously, I tried to
//MyApplication application = (MyApplication) getActivity().getApplication()
}
}
事实上,我有这个错误
提前感谢您对此进行过调查吗?你能找出原因吗?在我的服务类中,Android 6.0中的一些用户也遇到了同样的异常。Service.getApplication()不再强制转换为。看起来像是android问题,但尚未解决或确认-
at com.example.app.ui.activity.main.MyFragment.onCreateView(MyFragment.java:95)
at android.app.Fragment.performCreateView(Fragment.java:2281)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:983)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1163)
at android.app.BackStackRecord.run(BackStackRecord.java:793)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1552)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:487)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7229)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)