我使用Activity
创建了Navigation Drawer
,并使用ImageButton
替换了选项图标(位于右上角)以处理后退点击。
问题是,我不知道该怎么做。我对如何使用后退按钮感到有点困惑。我应该使用什么代码转到之前的Activity
?
后退按钮: 活动到另一个活动和MainActivity到碎片活动。
这是我的清单代码:
<activity
android:name="com.teamamazing.with_sidebar.activity.Accomodation"
android:label="Accomodation"
android:parentActivityName="com.teamamazing.with_sidebar.activity.SpecialPage">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.teamamazing.with_sidebar.activity.SpecialPage" />
</activity>
这是我的住宿活动:
package com.teamamazing.with_sidebar.activity;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.teamamazing.with_sidebar.R;
public class Accomodation extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_accomodation);
} }
这是我的 SpecialPage代码:,它将是父活动。
package com.teamamazing.with_sidebar.activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton;
import com.teamamazing.with_sidebar.R;
public class SpecialPage extends AppCompatActivity {
public ImageButton accomodation;
public void init() {
accomodation = (ImageButton) findViewById(R.id.AccomodationButton);
accomodation.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent accomodation = new Intent(SpecialPage.this, Accomodation.class);
startActivity(accomodation);
}
});
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_special_page);
init();
}}
谢谢你的回答。
答案 0 :(得分:2)
您可以使用 onBackPressed()或完成()方法。
buttonClickOBJ.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
onBackPressed();
}
});
<强> onBackPressed () 强>
当活动检测到用户按下背面时调用 键。默认实现只完成当前活动, 但你可以覆盖它来做任何你想做的事。
答案 1 :(得分:0)
您还可以使用以下方法。
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId()){
case android.R.id.home:
finish();
return true;
}
return super.onOptionsItemSelected(item);
}
答案 2 :(得分:0)
简便方法
public void onBackPressed() {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle(R.string.app_name);
builder.setIcon(R.mipmap.ic_launcher);
builder.setMessage("If You Enjoy The App Please Rate us?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent play =
new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=kd.travellingtips"));
startActivity(play);
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
finish();
}
});
AlertDialog alert = builder.create();
alert.show();
}
答案 3 :(得分:-2)
首先,将监听器添加到要与其关联的按钮。然后在方法中启动背压选项。