我知道 Android 中有返回按钮可以让我们回到上一个界面,但是我的团队领导要求在按钮点击时实现返回功能。
我应该怎么做呢?
我知道 Android 中有返回按钮可以让我们回到上一个界面,但是我的团队领导要求在按钮点击时实现返回功能。
我应该怎么做呢?
当用户点击按钮以返回上一个活动时,您应该使用finish()
。
Button backButton = (Button)this.findViewById(R.id.back);
backButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
或者,如果你确实需要的话,可以尝试触发自己的后退键按下:
this.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK));
this.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_BACK));
执行这两个命令。
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// your code here
return false;
}
return super.onKeyDown(keyCode, event);
}
layout.xml
<Button
android:id="@+id/buttonBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="finishActivity"
android:text="Back" />
Activity.java
public void finishActivity(View v){
finish();
}
相关内容:
getActivity().onBackPressed();
,这对我来说非常有效。使用这段代码,我解决了我的问题。如果需要返回按钮,请粘贴以下两行代码。希望这能帮到你。
只需将此代码粘贴到按钮点击事件中即可。
super.onBackPressed();
例子:
Button backButton = (Button)this.findViewById(R.id.back);
backButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
super.onBackPressed();
}
});
嗯,@sahhhm的回答对我没用,我需要从自定义按钮触发后退键,所以我只需调用以下代码:
backAction.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MyRides.super.onBackPressed();
}
});
它的工作效果很好。希望它也能帮助其他人。
finish()
、onBackPressed()
和分发按键事件,但都没有像我预期的那样工作。所有这些方法和实际的返回点击之间的区别在于,返回点击直接调用前一个活动的onResume()
方法,而其他方法调用onCreate()
方法。我不知道如何模拟精确的行为... - hiddeneyes02