中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

如何處理alertdialog的取消事件

小樊
89
2024-10-16 17:38:16
欄目: 編程語言

處理 AlertDialog 的取消事件非常簡單。在創建 AlertDialog 時,需要使用 setCancelable(true) 方法來啟用取消功能。然后,可以為 AlertDialog 設置一個 OnCancelListener,當用戶點擊取消按鈕時,會觸發該監聽器。

以下是一個簡單的示例,展示了如何在 Android 應用中處理 AlertDialog 的取消事件:

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

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

        Button button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                showDialog();
            }
        });
    }

    private void showDialog() {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("輸入你的名字");

        View view = getLayoutInflater().inflate(R.layout.dialog_layout, null);
        final EditText input = view.findViewById(R.id.editText);

        builder.setView(view);
        builder.setCancelable(true); // 啟用取消功能

        final AlertDialog alertDialog = builder.create();
        alertDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
            @Override
            public void onCancel(DialogInterface dialog) {
                String inputText = input.getText().toString();
                if (!inputText.isEmpty()) {
                    // 在這里處理用戶取消操作,例如保存輸入的數據
                    Toast.makeText(MainActivity.this, "取消操作,輸入的數據為:" + inputText, Toast.LENGTH_SHORT).show();
                } else {
                    // 在這里處理用戶點擊取消按鈕且沒有輸入任何數據的情況
                    Toast.makeText(MainActivity.this, "取消操作,沒有輸入任何數據", Toast.LENGTH_SHORT).show();
                }
            }
        });

        alertDialog.show();
    }
}

在這個示例中,當用戶點擊取消按鈕時,會觸發 setOnCancelListener 中的 onCancel() 方法。在該方法中,我們可以獲取用戶輸入的數據(如果有的話),并根據需要執行相應的操作。

0
壤塘县| 宜君县| 西乌珠穆沁旗| 澄江县| 永福县| 栾川县| 淮南市| 法库县| 兴仁县| 朝阳市| 华坪县| 游戏| 分宜县| 波密县| 溧阳市| 万安县| 嘉峪关市| 宜兴市| 奉节县| 富源县| 永善县| 昌宁县| 道孚县| 中江县| 武冈市| 蓝山县| 全椒县| 康保县| 鲜城| 遵义市| 东阿县| 宁安市| 怀安县| 富宁县| 获嘉县| 天镇县| 犍为县| 阿拉善盟| 阿瓦提县| 大理市| 时尚|