溫馨提示×

Android中finish方法怎樣使用

小樊
81
2024-10-10 21:46:03
欄目: 編程語言

在Android開發(fā)中,finish()方法是用于關(guān)閉當前活動的。當你調(diào)用一個活動的startActivityForResult()方法時,會啟動一個新的活動,并返回結(jié)果給啟動它的活動。為了關(guān)閉啟動它的活動,你需要在當前活動中調(diào)用finish()方法。

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

  1. 首先,創(chuàng)建一個新的活動(例如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中,設置一個按鈕,當用戶點擊該按鈕時,關(guān)閉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關(guān)閉后接收結(jié)果。
@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關(guān)閉后的邏輯
        }
    }
}

現(xiàn)在,當用戶點擊SecondActivity中的關(guān)閉按鈕時,SecondActivity將被關(guān)閉,MainActivity將接收到結(jié)果。

0