Android: Låta användare ändra vad som syns i menyn

Trädvy Permalänk
Medlem
Plats
Småland
Registrerad
Sep 2012

Android: Låta användare ändra vad som syns i menyn

Hejsan!

Håller på att bygga ut min app lite smått, där jag försöker få så att man kan filtera bort/ta bort menyval i NavigationDrawern.
Jag tänker använda mig av den MultiSelectListPreference där man bockar av vilka items som ska vara synliga.
Men jag lyckas inte hitta något sätt oavsett hur mycket jag letar, om hur man gör så att menyn visar de Items man har valt under inställningar.
Jag vill veta om det ens är möjligt att göra något sådant för jag vet inte riktigt hur jag ska söka efter det..

Med vänlig hälsning,
Davvarn

Chassi: Fractal Design R5 Black | CPU: Intel i7 3770K @ 4.5 GHz | Kylare: Corsair H80i GT | Graffe: ASUS 1070 8GB ROG STRIX DC3 | PSU: Antec 620 W | RAM: Corsair Vengence 16GB 1600 MHz | MOBO: Asus P8Z77-V Pro
CS:GO-Maps (App) Sweclockers (App)

Trädvy Permalänk
Medlem
Plats
åkersberga, Täby
Registrerad
Jun 2004

Går det inte att lösa med enkla "if"?

if(babla){

visa

}

Har endast arbetat med spelbibiliotek när jag programmerat mot Android. Och då är det ju enkelt att bestämma vad som ska visas.

Dator 1.
FX 8350 4.7Ghz | 24GB ram | MSI Radeon RX 480 | Kingston SSD | Fractal design R2.0 | PSU : Fractal 650W
Dator 2 (Bärbar). HP Folio 9470m

Trädvy Permalänk
Medlem
Plats
#Archlinux
Registrerad
Jun 2007

Var något tag sen jag lekte med menyer men du har en Menu instans som du nog kan använda för att gömma entries från att vara synliga. Annars kan man väl dynamiskt skapa xmlen för att sedan skicka vidare.

http://developer.android.com/guide/topics/ui/menus.html

Skrivet av martin_cs:

Går det inte att lösa med enkla "if"?

if(babla){

visa

}

Har endast arbetat med spelbibiliotek när jag programmerat mot Android. Och då är det ju enkelt att bestämma vad som ska visas.

Blir väldigt fort otroligt jobbigt att hantera när man har flera olika konfigurationer, något om man har bara 2 val men om användaren skall själv lägga till ~10st eller dylikt items till menyn så...

Arch - Makepkg, not war -||- Asus Crosshair Hero VI -||- GSkill 16GiB DDR4 15-15-15-35-1T 3600Mhz -||- AMD 1600x @ 4.1GHz -||- nVidia MSI 970 Gaming -||- Samsung 850 Pro -||- EVEGA G2 750W -||- Corsair 570x -||- Asus Xonar Essence STX -||- Sennheiser HD-650 -||
Arch Linux, one hell of a distribution.

Trädvy Permalänk
Medlem
Plats
Småland
Registrerad
Sep 2012
Skrivet av martin_cs:

Går det inte att lösa med enkla "if"?

if(babla){

visa

}

Har endast arbetat med spelbibiliotek när jag programmerat mot Android. Och då är det ju enkelt att bestämma vad som ska visas.

Skrivet av Commander:

Var något tag sen jag lekte med menyer men du har en Menu instans som du nog kan använda för att gömma entries från att vara synliga. Annars kan man väl dynamiskt skapa xmlen för att sedan skicka vidare.

http://developer.android.com/guide/topics/ui/menus.html

Blir väldigt fort otroligt jobbigt att hantera när man har flera olika konfigurationer, något om man har bara 2 val men om användaren skall själv lägga till ~10st eller dylikt items till menyn så...

Hej. Jo att manuellt ändra i koden och lägga in (i XML)

android:visible="false"

alternativt (i MainActivity)

navigationView.getMenu().removeItem(1);

Men hur får man ut de ibockade ifrån MultiSelectListPreference i inställningar till värden som går att använda i MainActivity för att styra de som ska visas genom PreferenceManager?

P.S: Användaren ska bara kunna välja vilka items som ska vara synliga och varken kunna ta bort dom helt eller lägga till nya.

Chassi: Fractal Design R5 Black | CPU: Intel i7 3770K @ 4.5 GHz | Kylare: Corsair H80i GT | Graffe: ASUS 1070 8GB ROG STRIX DC3 | PSU: Antec 620 W | RAM: Corsair Vengence 16GB 1600 MHz | MOBO: Asus P8Z77-V Pro
CS:GO-Maps (App) Sweclockers (App)