android

Android中finish方法怎样使用

小樊
84
2024-10-10 21:46:03
栏目: 编程语言

在Android开发中,finish()方法是用于关闭当前活动的。当你调用一个活动的startActivityForResult()方法时,会启动一个新的活动,并返回结果给启动它的活动。为了关闭启动它的活动,你需要在当前活动中调用finish()方法。

以下是如何在Android中使用finish()方法的示例:

  1. 首先,创建一个新的活动(例如SecondActivity)并在AndroidManifest.xml中注册它。
<activity android:name=".SecondActivity"></activity>
  1. 在你的主活动(例如MainActivity)中,启动SecondActivity并使用startActivityForResult()方法。
private static final int SECOND_ACTIVITY_REQUEST_CODE = 1;

public void onClick(View view) {
    Intent intent = new Intent(this, SecondActivity.class);
    startActivityForResult(intent, SECOND_ACTIVITY_REQUEST_CODE);
}
  1. SecondActivity中,设置一个按钮,当用户点击该按钮时,关闭SecondActivity
public class SecondActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        Button button = findViewById(R.id.button_close);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                finish();
            }
        });
    }
}
  1. MainActivity中,重写onActivityResult()方法,以便在SecondActivity关闭后接收结果。
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == SECOND_ACTIVITY_REQUEST_CODE) {
        if (resultCode == RESULT_OK) {
            // 在这里处理SecondActivity关闭后的逻辑
        }
    }
}

现在,当用户点击SecondActivity中的关闭按钮时,SecondActivity将被关闭,MainActivity将接收到结果。

0
看了该问题的人还看了