簡體   English   中英

確認對話框打開操作欄上所有項目的onClick

[英]Confirm Dialog Opens onClick for All Items on Action Bar

您好,我是android新手,我的操作欄上有多個項目,還有注銷圖標/按鈕。 現在,當用戶單擊注銷按鈕時,它應顯示一個確認對話框,如果用戶單擊“是”,則返回登錄屏幕。

我已經設法做到了,但是我注意到,現在我單擊的所有項目都顯示確認對話框,而不僅僅是注銷。

這是我的代碼:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        switch (id) {

            case R.id.action_open_invoices:
                Intent i = new Intent(context, InvoicesActivity.class);
                startActivity(i);

            case R.id.action_synchronize:
                // Start Updater Service
                Intent updaterService = new Intent(context, UpdaterService.class);
                startService(updaterService);

            case R.id.action_logout:
                AlertDialog.Builder builder = new AlertDialog.Builder(this);

                builder.setTitle("Confirm");
                builder.setMessage("Are you sure?");

                builder.setPositiveButton("YES", new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface dialog, int which) {
                        settings.edit().remove("Token").commit();

                        Intent loginIntent = new Intent(context, LoginActivity.class);
                        startActivity(loginIntent);

                        dialog.dismiss();
                    }

                });

                builder.setNegativeButton("NO", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // Do nothing
                        dialog.dismiss();
                    }
                });

                AlertDialog alert = builder.create();
                alert.show();

        }

        return super.onOptionsItemSelected(item);
    }
case R.id.action_open_invoices:
            Intent i = new Intent(context, InvoicesActivity.class);
            startActivity(i);
       break;

使用中斷聲明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM