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

Permalänk
Medlem

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

Visa signatur

Chassi: Fractal Design Meshify C Mini | CPU: AMD Ryzen 5 3600 | Kylare: Be Quiet! Dark Rock Pro 4 | Graffe: ASUS 1070 8GB ROG STRIX DC3 | PSU: Corsair RM750X V2 | RAM: Corsair Vengence 32GB 3200 MHz | MOBO: MSI B450M MORTAR MAX
CS:GO-Maps (App) Sweclockers (App)

Permalänk
Medlem

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.

Visa signatur

[IT-Dept]
Ryzen 1700 OC - 32 - 1070

Permalänk
Medlem

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å...

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk
Medlem
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.

Visa signatur

Chassi: Fractal Design Meshify C Mini | CPU: AMD Ryzen 5 3600 | Kylare: Be Quiet! Dark Rock Pro 4 | Graffe: ASUS 1070 8GB ROG STRIX DC3 | PSU: Corsair RM750X V2 | RAM: Corsair Vengence 32GB 3200 MHz | MOBO: MSI B450M MORTAR MAX
CS:GO-Maps (App) Sweclockers (App)