我是做一个记事本的程序,应为当前没有接触到数据库的使用,就把数据存放在arraylist数组中了,通过点击listview,跳转到编辑页面,可是在跳转之后回到原来页面就出错啦,下面把错误极其源码附上:08-31 11:58:39.745: ERROR/AndroidRuntime(1113): FATAL EXCEPTION: main
08-31 11:58:39.745: ERROR/AndroidRuntime(1113): java.lang.RuntimeException: Unable to resume activity {com.sarnath.wang/com.sarnath.wang.notebook.NoteBookActivity}: android.app.SuperNotCalledException: Activity {com.sarnath.wang/com.sarnath.wang.notebook.NoteBookActivity} did not call through to super.onRestart()
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3128)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3143)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2059)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.os.Handler.dispatchMessage(Handler.java:99)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.os.Looper.loop(Looper.java:123)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.ActivityThread.main(ActivityThread.java:4627)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at java.lang.reflect.Method.invokeNative(Native Method)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at java.lang.reflect.Method.invoke(Method.java:521)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at dalvik.system.NativeStart.main(Native Method)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113): Caused by: android.app.SuperNotCalledException: Activity {com.sarnath.wang/com.sarnath.wang.notebook.NoteBookActivity} did not call through to super.onRestart()
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.Activity.performRestart(Activity.java:3807)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.Activity.performResume(Activity.java:3816)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3118)
08-31 11:58:39.745: ERROR/AndroidRuntime(1113):     ... 10 more

解决方案 »

  1.   

    public class NoteCreate extends Activity {
    private EditText title = null;
    private EditText body = null;
    private Button save = null;
    private Button cancel = null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.notecreat_xml);
    title = (EditText) findViewById(R.id.title);
    body = (EditText) findViewById(R.id.body);
    save = (Button) findViewById(R.id.save);
    cancel = (Button) findViewById(R.id.cancel);
    Intent intent = getIntent();
    final int id = intent.getIntExtra("id", 0);
    String t = intent.getStringExtra("title");
    String b = intent.getStringExtra("body");
    title.setText(t);
    body.setText(b);
    save.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    String tit = title.getText().toString();
    String bod = body.getText().toString();
    if("".equals(tit)||"".equals(bod)){
    Toast.makeText(NoteCreate.this, "标题或正文不能为空!", Toast.LENGTH_SHORT).show();
    }else{
    Intent i = new Intent();
    i.putExtra("title", title.getText().toString());
    i.putExtra("body", body.getText().toString());
    i.putExtra("id", id);
    setResult(RESULT_OK, i);
    //finish();
    }

    }
    });
    cancel.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    Intent i = new Intent();
    setResult(RESULT_CANCELED, i);
    //finish();
    }
    });

    }

    }
      

  2.   

    public class NoteBookActivity extends Activity {
    private Button but = null;
    private ListView list = null;
    private  ArrayList<String> titles = new ArrayList<String>();
    private  ArrayList<String> timers = new ArrayList<String>();
    private  ArrayList<String> body = new ArrayList<String>();

    @Override
    protected void onResume() {
    // TODO Auto-generated method stub
    super.onResume();
    Log.i("TAG","ONRESUME");
    } @Override
    protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    Log.i("TAG", "ONPAUSE");
    } @Override
    protected void onStop() {
    // TODO Auto-generated method stub
    super.onStop();
    Log.i("TAG","ONSTOP");
    } @Override
    protected void onDestroy() {
    // TODO Auto-generated method stub
    Log.i("TAG","ONDESTROY");
    super.onDestroy();
    } @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.note_layout);
    setTitle("记事本");
    titles.add("ddd");
    titles.add("sss");
    timers.add("2011年8月31日18:09:05");
    timers.add("2011年8月31日18:09:26");
      

  3.   

    body.add("aaaaaaa");
    body.add("bbbbbb");
    but = (Button) findViewById(R.id.newbut);
    final Intent intent = new Intent(NoteBookActivity.this,NoteCreate.class);
    but.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    intent.putExtra("id", titles.size());
    startActivityForResult(intent, RESULT_OK);
    }
    });
    list = (ListView) findViewById(R.id.list);
    list.setAdapter(new MyListAdapter());
    list.setOnItemClickListener(new OnItemClickListener() { @Override
    public void onItemClick(AdapterView<?> parent, View view,
    int position, long id) {
    // TODO Auto-generated method stub
    intent.putExtra("id", position);
    intent.putExtra("title", (String)titles.get(position));
    intent.putExtra("body", (String)body.get(position));
    startActivityForResult(intent, 10);
    }
    });
    }

    @Override
    protected void onRestart() {
    // TODO Auto-generated method stub
    Log.i("TAG", "onRestart");
    } @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    if(resultCode==RESULT_OK){
    String t = data.getStringExtra("title");
    String b = data.getStringExtra("body");
    Log.i("TAG", t);
    String time = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").format(new Date(System.currentTimeMillis()));
    int id = data.getIntExtra("id", titles.size());
    titles.set(id, t);
    timers.set(id, time);

    }
    } class MyListAdapter extends BaseAdapter{ @Override
    public int getCount() {
    // TODO Auto-generated method stub
    return titles.size();
    } @Override
    public Object getItem(int position) {
    // TODO Auto-generated method stub
    return null;
    } @Override
    public long getItemId(int position) {
    // TODO Auto-generated method stub
    return position;
    } @Override
    public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    LayoutInflater inflater = getLayoutInflater();
    View view = inflater.inflate(R.layout.list_layout, null);
    TextView title = (TextView)view.findViewById(R.id.text01);
    title.setText((String)titles.get(position%titles.size()));
    TextView timer = (TextView) view.findViewById(R.id.text02);
    timer.setText((String)timers.get(position%timers.size()));
    return view;
    }

    }
    }
      

  4.   

    protected void onRestart() {
    // TODO Auto-generated method stub
    Log.i("TAG", "onRestart");
    }改成
    protected void onRestart() {
    super.onRestart();
    Log.i("TAG", "onRestart");
    }
    要调用父类的onRestart()方法