简体   繁体   English

如何在第二个活动中设置onBackPressed

[英]How to set onBackPressed in Second Activity

I set the <button> in activity_main.xml 我在activity_main.xml设置<button>

<Button
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:onClick="ReturnHome"
    android:text="Go Back"
    android:layout_marginBottom="79dp"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

And now I'd like to add onBackPressed method in AnswerActivity 现在,我想在AnswerActivity添加onBackPressed方法

public class AnswerActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_answer);
    TextView textViewDisplayResult = (TextView) findViewById(R.id.text_view_display_result);

To be able to go back to previous page which is Fragment . 为了能够返回到上一页Fragment

Can somebody guide me step by step how to do it? 有人可以逐步指导我该怎么做吗?

Edit: 编辑:

I wrote something like this 我写了这样的东西

     super.onBackPressed();
        Intent returnIntent = new Intent();
        finish();

But it says 'variable "returnIntent" is never used'. 但是它说“从未使用过变量“ returnIntent”。 How to fix it? 如何解决?

If you meant the physical button on the device, this is done by overriding: 如果您是指设备上的物理按钮,则可以通过覆盖以下内容来完成:

@Override
public void onBackPressed() {
    FragmentManager fm = getActivity().getSupportFragmentManager();
    fm.popBackStack();
}

And your code: 和你的代码:

super.onBackPressed();
    Intent returnIntent = new Intent();
    finish();

Shows returnIntent is never shown because you never called startActivity (intent). 显示returnIntent从未显示,因为您从未调用过startActivity(意图)。 And you have to make sure you add a target. 并且您必须确保添加目标。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM