我知道我们在android中有后退按钮可以将我们移回上一个表单,但我的团队负责人要求在按钮上单击后退按钮功能
我该怎么做?
答案 0 :(得分:118)
当用户点击按钮以进入上一个活动时,您应该使用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));
执行这两个。
答案 1 :(得分:34)
如果您需要自定义按钮中后退按钮的确切功能,为什么不以这种方式调用yourActivity.onBackPressed()如果覆盖后退按钮的功能,您的自定义按钮的行为也会相同。
答案 2 :(得分:10)
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// your code here
return false;
}
return super.onKeyDown(keyCode, event);
}
答案 3 :(得分:7)
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();
}
相关:
答案 4 :(得分:3)
如果您位于片段中,请在点击监听器中编写以下代码,
getActivity().onBackPressed();
这对我来说非常合适。
答案 5 :(得分:0)
@sahhhm的答案对我不起作用,我需要的是从自定义按钮触发backKey,所以我所做的就是我的简单称呼,
backAction.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MyRides.super.onBackPressed();
}
});
它就像魅力一样工作。希望这将帮助其他人了。
答案 6 :(得分:0)
使用此代码我解决了我的问题。对于后退按钮,粘贴这两行代码。希望对您有帮助。
仅在单击按钮时粘贴此代码 onBackPressed();