簡體   English   中英

帶有多個按鈕的Android對話框:如何實現切換大小寫?

[英]Android dialog with multiple button: How to implement switch case?

如果我的對話框具有多個按鈕 ,如何將OnClickListener放入開關盒 (或if / else)中,如下所示:

我想請用戶選擇要分配給靜態變量輸入的值

public class ActivityInput extends Activity {

    public static String input;

    public void selectValue (final int x) {

        btn = (Button) findViewById(x);

        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

           //Display dialog with 3 button for user to select the values
                final Dialog dialog1 = new Dialog(input.this);
                dialog1.setTitle("Select a Number");
                dialog1.setContentView(R.layout.dialog);
                dialog1.show();


                button1 = (Button) dialog1.findViewById(R.id.val1);
                button1.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Button p1_btn = (Button) findViewById(x);
                        input = "1";
                        p1_btn.setText("1");
                        dialog1.dismiss();
                    }
                });

                button2 = (Button) dialog1.findViewById(R.id.val2);
                button2.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Button p1_btn = (Button) findViewById(x);
                        input = "2";
                        p1_btn.setText("2");
                        dialog1.dismiss();

                    }
                });

                button3 = (Button) dialog1.findViewById(R.id.val3);
                button3.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Button p1_btn = (Button) findViewById(x);
                        input = "3";
                        p1_btn.setText("2");
                        dialog1.dismiss();
                    }
                });

            }
        });
    }
}

希望您的指導盡快幫助我!

非常感謝你。

一個沒有xml的簡單解決方案:

AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("Title");
builder.setItems(new CharSequence[]
        {"button 1", "button 2", "button 3", "button 4"},
        new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
                // The 'which' argument contains the index position
                // of the selected item
                switch (which) {
                    case 0:
                        Toast.makeText(context, "clicked 1", 0).show();
                        break;
                    case 1:
                        Toast.makeText(context, "clicked 2", 0).show();
                        break;
                    case 2:
                        Toast.makeText(context, "clicked 3", 0).show();
                        break;
                    case 3:
                        Toast.makeText(context, "clicked 4", 0).show();
                        break;
                }
            }
        });
builder.create().show();
public void verticalAlert (){

String[] array = {"item01","item02","item03"};
AlertDialog.Builder builder = new AlertDialog.Builder(MyActivity.this);
builder.setTitle("Test")
  .setItems(array, new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int which) {
      // The 'which' argument contains the index position
      // of the selected item
        switch (which) {
    case 0:         
        // case item 1 do...
        break;          
    case 1:         
        //  case item 2 do...                   
        break;
    case 2:         
        //  case item 3 do...                   
        break;
    }

  }
});
builder.show();
}

暫無
暫無

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

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