Android Option Button

Player2000

Mitglied
Hallo zusammen,

es gibt doch diese Option Buttons mit den 3 vertikal übereinander liegenden Punkten die in vielen Apps benutzt werden um das Options-Menu aufzurufen. Muss man diesen Button mit Icon selber erstellen, oder kriegt man dieses Standard von irgendwo her?

freundliche Grüsse Stefan
 

dzim

Top Contributor
Warum willst du das irgendwo verwenden? Um ein eigenes "Menü" (denn es ist i.d.R. für Menüs konzipiert) zu erstellen? Warum nicht die ActionBar verwenden (oder ActionBarCompat, oder ActionBarSherlock, wenn du ältere Geräte unterstützen möchtest)? Was spricht dagegen, eine Anwendung, wie eine native Androidanwendung aussehen zu lassen?
 

dzim

Top Contributor
Auch wenn ich ABS noch nie verwendet habe, wage ich folgende (und nicht durch Fakten unterlegte) Behauptung: Nein.

Der Grund ist, das ABS versucht, Androids ActionBar auch auf ältere Geräte zu bringen, um ein ein über alle (noch) gängige Versionen Androids ein einheitliches Look-&-Feel hinzubekommen und die z.T. doch recht umfangreichen Versionsspezifischen Teile los zu werden (so zumindest sehe und verstehe ich ABS, korrigiere mich bitte, wenn ich irre!).
die normale ActionBar wird i.d.R. mittels einer .xml-Resource in res/menu befüllt. Z.B. so hier:
Code:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/menu_start"
        android:icon="@drawable/ic_action_start_dark"
        android:showAsAction="ifRoom"
        android:title="@string/startTest_button">
        <menu>
        </menu>
    </item>
    <item
        android:id="@+id/menu_stop"
        android:icon="@drawable/ic_action_stop_dark"
        android:showAsAction="ifRoom"
        android:title="@string/stopSpeedTestMenu.title">
        <menu>
        </menu>
    </item>
    <item
        android:id="@+id/menu_help"
        android:icon="@drawable/ic_action_help"
        android:showAsAction="ifRoom"
        android:title="@string/helpMenu.title">
        <menu>
        </menu>
    </item>
    <item
        android:id="@+id/menu_settings"
        android:icon="@drawable/ic_action_settings"
        android:showAsAction="ifRoom"
        android:title="@string/menu_settings">
        <menu>
        </menu>
    </item>
    <item
        android:id="@+id/menu_visitresults"
        android:icon="@android:drawable/ic_menu_agenda"
        android:showAsAction="collapseActionView"
        android:title="@string/menu_visitresults"/>
    <item
        android:id="@+id/menu_sendfeedback"
        android:icon="@android:drawable/ic_dialog_email"
        android:showAsAction="collapseActionView"
        android:title="@string/menu_sendfeedback"/>
    <item
        android:id="@+id/menu_changelog"
        android:icon="@android:drawable/ic_menu_help"
        android:showAsAction="collapseActionView"
        android:title="@string/menu_changelog"/>
    <item
        android:id="@+id/menu_about"
        android:icon="@android:drawable/ic_menu_help"
        android:showAsAction="collapseActionView"
        android:title="@string/menu_about"/>

</menu>

in der Activity, die eine ActionBar besitzen soll, machst du dann so etwas hier:
Java:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
	boolean result = super.onCreateOptionsMenu(menu);
	getMenuInflater().inflate(R.menu.activity_main, menu);
	// hier kannst du auch die Menüs anpassen (visible/enabled/...)
	return result;
}

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
	boolean result = super.onPrepareOptionsMenu(menu);
	// hier reagierst du auf "refresh"-requests an das Menü
	// dies kannst du machen, indem du <deineActivity>.invalidateOptionsMenu() aufrufst
	return result;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
	// hier reagierst du auf die Auswahl Items
	switch (item.getItemId()) {
	case R.id.menu_settings:
		// do something
	}
}
Bedenke: Sowohl Menü (die drei übereinander gestapelten Punkte), als auch die Toolbar-Items werden über diesen Mechanismus gesteuert, das Keyword android:showAsAction="[...]" (Google für mehr Infos befragen!) ist dafür verantwortlich.

So ähnlich sollte das auch bei ABS ablaufen...

Ich hoffe das hilft ein wenig!
Daniel
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
G trotz Android 4.1 erscheint option menu statt action bar Android & Cross-Platform Mobile Apps 5
T Android Studio: Einen Button in einer For Schleife verwenden Android & Cross-Platform Mobile Apps 2
W App deinstallieren per Button & Andere App Öffnen per Button Android & Cross-Platform Mobile Apps 24
W Apk automatisch installieren per Button Android & Cross-Platform Mobile Apps 55
W aus Fragmente in andere Klasse wechseln mit Button Android & Cross-Platform Mobile Apps 3
T App updaten via Button Android & Cross-Platform Mobile Apps 10
AGW Android Teilen Button ändern Android & Cross-Platform Mobile Apps 14
A Button in SurfaceView integrieren Android & Cross-Platform Mobile Apps 10
J Android App - Browser öffnen und Text eingeben/Button click auslösen Android & Cross-Platform Mobile Apps 10
L Button zum Quadrad zwingen Android & Cross-Platform Mobile Apps 2
S Android Absoluter Neuling: EditText zur Laufzeit verändern bzw. über Button Android & Cross-Platform Mobile Apps 2
L Dialog anzeigen wenn auf Button gedrückt wird. Android & Cross-Platform Mobile Apps 4
S Android ListFragment & ArrayAdapter - Button-Werte werden vergessen Android & Cross-Platform Mobile Apps 0
B Android Abfragen wie lang ein Button gedrückt wurde Android & Cross-Platform Mobile Apps 2
J Android button mithilfe einer Methode automatisch erstellen Android & Cross-Platform Mobile Apps 6
A AlertDialog Enable Button Android & Cross-Platform Mobile Apps 1
J Button array ID Problem Android & Cross-Platform Mobile Apps 2
D Android Activity wechseln per Button Android & Cross-Platform Mobile Apps 3
B Android ringProgressDialog nach Erfolg Button einfärben Android & Cross-Platform Mobile Apps 2
A Android Menü Button oben links Android & Cross-Platform Mobile Apps 1
B Mit Button GeräteEinstellung des Handys öffnen Android & Cross-Platform Mobile Apps 3
M Android Android "Up-Button" extra definieren? Android & Cross-Platform Mobile Apps 1
K Problem mit arraylist und button Android & Cross-Platform Mobile Apps 16
T Button aktivieren per Qullcode... Android & Cross-Platform Mobile Apps 3
T Button geht net... Android & Cross-Platform Mobile Apps 2
D Man sieht nicht ob Button gedrückt wurde! Android & Cross-Platform Mobile Apps 10
K Grafik Tablerow, Button erstreckt sich in der gesamten Breite trotz Beschrenkung durch (max)width Android & Cross-Platform Mobile Apps 2
G Button ein Wert zuweisen Android & Cross-Platform Mobile Apps 5
M 20 Image Button für jede Auflösung positionieren Android & Cross-Platform Mobile Apps 3
B Android Button erstellen nach Vorlage Android & Cross-Platform Mobile Apps 4
L Android Button mit Pfeil nach rechts Android & Cross-Platform Mobile Apps 1
M Einzel Verarbeitung welcher Button angeklickt wurde? Android & Cross-Platform Mobile Apps 6
G Back-Button Methode überschreiben Android & Cross-Platform Mobile Apps 2
G Check Button ist unchecked trotz setChecked(true) Android & Cross-Platform Mobile Apps 6
G Android Button mit Bild Android & Cross-Platform Mobile Apps 4
W Android App Programmierung - Button ganz transparent machen Android & Cross-Platform Mobile Apps 3
L Custom Dialog Button event Android & Cross-Platform Mobile Apps 2
J Button rechtsbündig Android & Cross-Platform Mobile Apps 5
A Android Button Array? Android & Cross-Platform Mobile Apps 6
P Android Button mit bild versehen Android & Cross-Platform Mobile Apps 4
J "Button" auf List erstellen Android & Cross-Platform Mobile Apps 4
U Fire button und Command.BACK, 1 kommen sich in die quere Android & Cross-Platform Mobile Apps 2

Ähnliche Java Themen

Neue Themen


Oben