还小白 2016-02-03 08:48 采纳率: 66.7%
浏览 4622

android 程序进入后台以后,过一段时间再点进去报错,黑屏。

下面是写的异常日志抓取的报错代码:

android.util.SuperNotCalledException: Activity {com.st.sliding/com.st.sliding.MainActivity} did not call through to super.onCreate()
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2418)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2524)
at android.app.ActivityThread.access$800(ActivityThread.java:167)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1419)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5546)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:964)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:759)

_上面说我的onCreate为空,但是我有super.onCreate(savedInstanceState);这句代码的,主要原因是因为后台再点进来没有数据了,所以为空???不知道怎么解决了

请教大指点指点~

这是我的代码:_

public class MainActivity extends SlidingActivity {
private SlidingActivityHelper mHelper;
TodayFragment today;
GroupFragment groupFragment;
AdviceFragment adviceFragment;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

    // 去掉标题栏
    // this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.layout_main);
    // this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    // WindowManager.LayoutParams.FLAG_FULLSCREEN);
    // set the Behind View
    setBehindContentView(R.layout.frame_menu);

    FragmentTransaction fragmentTransaction = getFragmentManager()
            .beginTransaction();
    LeftMenuFragment menuFragment = new LeftMenuFragment();
    fragmentTransaction.replace(R.id.menu, menuFragment);
    fragmentTransaction.commit();
    initSlidingMenu();
    // //提示跳转
    // showProgressDialog("提示", "正在跳转,请稍后......");

    //
}


private void initSlidingMenu() { // 如果保存的状态不为空则得到之前保存的Fragment,否则实例化MyFragment
    // if (savedInstanceState != null) {
    // mContent = getSupportFragmentManager().getFragment(
    // savedInstanceState, "mContent");
    // }
    //
    // if (mContent == null) {
    // mContent = new TodayFragment();
    // }
    // customize the SlidingMenu
    SlidingMenu sm = getSlidingMenu();
    sm.setShadowWidth(50);
    sm.setShadowDrawable(R.drawable.shadow);
    sm.setBehindOffset(180);// 设置slindingmenu的宽度
    sm.setFadeDegree(0.35f);
    sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
    getActionBar().setDisplayHomeAsUpEnabled(true);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        toggle();
        break;
    }
    return super.onOptionsItemSelected(item);
}

private long exitTime = 0;

@Override
public void onBackPressed() {
    if (System.currentTimeMillis() - exitTime > 2000) {
        Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
        exitTime = System.currentTimeMillis();
    } else {
        finish();
        System.exit(0);
        android.os.Process.killProcess(android.os.Process.myPid());
    }
}

}

  • 写回答

2条回答

  • 91program 博客专家认证 2016-02-03 09:18
    关注

    看代码,确实不像对 super 的调用问题。
    如果问题必现,建议你简化初始化部分的代码,特别是对 Fragment 的初始化。先分析出是什么代码引起的错误,再分析原因。

    评论

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办