在我的应用程序中,我有一项活动,如下图所示[![在此处输入图像说明] [1]] [1]
如果我点击“添加患者”按钮,它将重定向到另一个活动。如下图所示
如果我点击“NewPatient”活动中的主页按钮,它会显示“我的患者”活动,并且“NewPatient”活动消失。如果应用程序位于“NewPatient”,当您按下主页按钮时,请建议如何保留“NewPatient”活动“活动。
使用:
表示即时通讯<activity
android:name=".activity.patient.PatientsActivity"
android:parentActivityName=".activity.MainActivity"/>
<activity
android:name=".activity.patient.PatientFormActivity"
android:parentActivityName=".activity.patient.PatientsActivity" />
答案 0 :(得分:1)
只需使用Intent转到HomeActivity;
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home) // Press Back Icon
{
Intent i=new Intent(NewPatient.this,HomeActivity.class);
startActivity(i);
}
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:1)
你的代码在哪里? 但是你可以在你的代码中使用这一行
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_HOME) {
//do somethings you want
}
return super.onKeyDown(keyCode, event);
}
答案 2 :(得分:1)
第一个解决方案。基于启动模式。
您可以在“新患者”活动前移动“我的患者”活动。
onBackPressed()
方法,并从中启动“我的病人”,而不是打电话给超级病人。您可以阅读有关启动模式here的更多信息。
第二种解决方案。基于捆绑的
onBackPressed()
方法,并将您的数据保存为意图,并将其保存到onSaveInstanceState
中的捆绑包。super.onBackPressed()
setResult
向“我的病人”活动提供已保存的数据
onActivityResult()
内保存的数据第二个更合适,更少痛苦。
答案 3 :(得分:1)
我认为您不需要为此问题执行任何额外操作。在传递意图或任何清单时,你在其他地方犯了一个错误。如果您发现任何有用的东西,请使用以下示例:
在textview点击监听器上的MainActivity.java中,我开始了另一项活动:
findViewById(R.id.text).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(getBaseContext(),Activity2.class));
}
});
这些活动的显示是:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ccc.stackoverflow">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Activity2">
</activity>
</application>
</manifest>
它可以按照您想要的方式工作。当我们回到app.Hope它可以帮助你时,Activity2仍然是开放的。