Frage

Ich erstelle ein Menü in Android und möchte, dass dieses Menü eine neue Klasse öffnen, je nachdem, was der Benutzer ausgewählt hat.

Das von mir erstellte Menü stammt aus diesem Link: http://developer.android.com/guide/topics/ui/dialogs.html#alertdialog

Und ist der Code für das Hinzufügen von Kontrollkästchen und Optionsfeldern

Ich habe diesen Code:

 final CharSequence[] items = {"Red", "Green", "Blue"};

        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Pick a color");
        builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int item) {


                Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
            }
        });
        final AlertDialog alert = builder.create();

Aber ich möchte den Toast wegnehmen:

Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();

Wenn der Benutzer in der Array -Liste auf die angegebene Farbe klickt, zeigen Sie eine neue Klasse, die ich nicht sicher bin, wie es geht.

Ich versuche eine IF -Aussage zu machen, die so aussieht:

  if(items.equals("Red")){
                    Intent red = new Intent(Menu.this,Red.class);
                    startActivity(red);
                }

Aber das funktioniert nicht.

Bearbeiten

Keine Sorge, ich habe das gerade getan, indem ich:

if(items[item].equals("Red")){
                    Intent red = new Intent(Menu.this,Red.class);
                    startActivity(red);
                }

Gibt es einen besseren Weg, dies zu tun?

War es hilfreich?

Lösung

Probieren Sie es Ricky:

final CharSequence[] items = {"Red", "Green", "Blue"};

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Pick a color");
    builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {
          Intent color;
          switch(item){
          case 0:
           color = new Intent(Menu.this,Red.class);
          break;
          case 1:
           color = new Intent(Menu.this,Green.class);
          break;
          case 2:
           color = new Intent(Menu.this,Blue.class);
          break;
          default:
           color = null;
          break;
          }
          if(color!=null)startActivity(color);
        }
    });
    final AlertDialog alert = builder.create();

viel Glück.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top