0

我正在开发一个类似于 'Diaro' 应用程序和 Android 上的 'MyDiary' 应用程序的应用程序。

我的应用程序中的主要活动是控制所有其他活动的 DiaryActivity。按下添加按钮时,会打开一个新活动,用户在编辑文本字段中输入数据,按下后退按钮时,项目将保存在数据库中并显示在列表中,(列表是主要活动)。

现在主要活动的问题是,在按下后退按钮时,应用程序不是关闭,而是将控制权带回主要活动,只是这一次,最后一个条目不存在,也只是现在后退按钮再次出现,应用程序关闭。

我认为可能的解决方案可能是覆盖 onBackPressed() 函数并在其中编写 finish() 函数,但这不起作用。

活动的代码在这里。

http://pastebin.com/ugMdVsbW

4

3 回答 3

1
@Override
public void onBackPressed() {
        super.onBackPressed();
        finish();
}

不用写finish()

super.onBackPressed()将完成这项工作。

@Override
public void onBackPressed() {
    super.onBackPressed();
}
于 2012-05-29T10:23:06.503 回答
0

我使用此代码并且工作正常,

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
   if ((keyCode == KeyEvent.KEYCODE_BACK))
   {       
      back();
   }

   return super.onKeyDown(keyCode, event);
}

public void back()
{
   startActivity(new Intent(this, Home.class));
}
于 2012-05-29T10:52:41.850 回答
0

我正在使用以下代码。尝试使用此代码

@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event){ 

        if ((keyCode == KeyEvent.KEYCODE_BACK)) { //stop your music here
             // To exit application
                 finish();
        } 
        return super.onKeyDown(keyCode, event); 
    }
于 2012-05-29T10:30:19.607 回答