risposta-alla-domanda-sullo-sviluppo-web-bd.com

Non disponibile vs Invisibile

Qual è un buon criterio o regola empirica per determinare quando un controllo dovrebbe essere disattivato e quando dovrebbe essere completamente invisibile?

30
Joel B

Dipende moltissimo da come ti aspetti che venga utilizzata l'applicazione.

Se tutti i tuoi utenti sono utenti esperti (come Photoshop nella risposta di @ edgarator), in genere desideri oscurare anziché nascondere: vuoi che i tuoi utenti sappiano che la funzione è presente e utilizzeranno la tua app per un po.

Tuttavia, se i tuoi utenti sono meno tecnici o (più probabilmente) solo occasionali, allora non vuoi ingombrare l'interfaccia con i controlli che mai si appresteranno a usare. Non resteranno in giro per scoprire perché una determinata azione o controllo è disabilitato.

In questi casi passo ad alcune regole:

  • Se l'azione è mai sarà disponibile per l'utente (ad esempio se non ha diritti o non ha acquistato la funzione), nascondila sempre. Odio i pulsanti vuoti sul cruscotto di una nuova auto.

  • Se l'azione può essere abilitata dall'azione dell'utente sulla stessa pagina/schermata (ad esempio un pulsante successivo che richiede prima una casella di input obbligatoria compilata), quindi disabilitare principalmente.

  • Se l'azione può essere abilitata dall'utente facendo qualcosa su una diversa pagina/schermata, allora dipende dal fatto che tu voglia che vada a trovare come abilitare le opzioni in grigio. Di solito trovo che significa che sarebbe meglio ripensare al modo in cui le pagine/schermate scorrono attraverso ciò che l'utente sta cercando di fare.

  • Se ci sono molte funzionalità disabilitate, ad esempio un intero blocco aggiuntivo di input di modulo, si tratta di una chiamata di giudizio. Tendo a nasconderlo e quindi a evidenziarlo qualora l'utente ne avesse bisogno.

Fondamentalmente l'obiettivo è sempre che l'utente possa usarlo con il minimo manuale, quindi oscura qualcosa quando vuoi che sappiano che c'è qualcosa che possono fare per abilitarlo. Nascondi un'azione per evitare di distrarli.

17
Keith

Disattivalo quando vuoi che la persona sappi che esiste il controllo, ma che è disabilitato.

Nascondilo (rendilo completamente invisibile) quando non importa se sanno che è lì o no.

In generale, opterei per controlli in grigio anziché nasconderli, perché qualcuno potrebbe ricordare di aver visto un controllo da qualche parte che non sarebbe in grado di ritrovarlo di nuovo se ora è nascosto. E non ci sarebbero indicazioni sul perché non possano trovarlo di nuovo. Quando si annulla un controllo, si può avere un po ' enter image description here icona o qualcosa di simile per far vedere a una persona perché è disabilitato.

Microsoft ha riscontrato questo problema diversi anni fa in MS Office, dove nascondevano voci di menu che non si utilizzavano da tempo. Ha causato così tanti problemi di supporto, che alla fine lo hanno abbandonato.

Si noti, tuttavia, che esiste un importante eccezione a questa regola: se il software assegna ruoli diversi a diversi gruppi di utenti, gli utenti ordinari non dovrebbero essere a conoscenza dell'avanzato funzionalità disponibile per utenti più privilegiati. Ad esempio, un moderatore del forum potrebbe essere autorizzato a vietare gli utenti, eliminare interi argomenti, ecc. In tal caso, i pulsanti avanzati (voci di menu) dovrebbero essere completamente mancanti dalla GUI degli utenti ordinari (e non solo disattivati).

19
JohnGB

Questo mi ricorda Woocommerce, dove nascondono l'importantissimo pulsante Aggiungi alla carta a meno che non siano state scelte tutte le opzioni.

Guarda questo:

enter image description here

rispetto alla schermata successiva che mostra il pulsante Aggiungi al carrello e il numero di articoli che si desidera acquistare. E se volessi comprare due camicie ma taglie diverse?

enter image description here

Nascondere le parti più importanti della navigazione o i pulsanti CTA non è una buona idea in questo caso. Nella maggior parte dei casi, è possibile utilizzare il grigio come un indicatore sottile della funzionalità opzionale:

enter image description here

7
Adnan Khan

Questa domanda è molto generale. Senza contesto è difficile dare una risposta che possa aiutare. Quindi questa risposta sarà anche molto generale.

Esistono generalmente due motivi per cui un elemento può essere attivo o meno:

  1. L'azione causata dal controllo non può essere invocata (ad es. Un pulsante "salva" disabilitato perché non sono stati specificati tutti i dati richiesti)
  2. L'applicazione è in una modalità che non supporta il controllo (ad es. Menu a discesa dei caratteri disabilitato mentre è selezionata un'immagine)

Nella maggior parte dei casi, i controlli disabilitati o nascosti sono il risultato delle modalità : La visualizzazione di un elemento disabilitato suggerisce che questo elemento può, in qualche modo, essere abilitato - di solito cambiando la modalità in cui si trova la tua applicazione. Pensa di cambiare personaggio in un gioco: personaggi diversi consentiranno azioni diverse, quindi il giocatore è nella stessa applicazione (il gioco), ma ciò che possono o non possono fare è determinato dalla modalità in cui si trovano in (il personaggio che attualmente controllano).

Le modalità sono molto problematiche per gli utenti, poiché la stessa interfaccia utente può o meno consentire azioni diverse a seconda della modalità. Il grosso problema è come far sapere all'utente in quale modalità si trova e per rendere evidente come può cambiarlo. È qui che la maggior parte delle applicazioni non riesce: gli utenti si trovano disperati perché non è possibile fare clic su un controllo e l'unico indizio fornito dall'applicazione è ad es. una piccola icona nella barra di stato.

Assicurati: gli utenti saranno cercheranno un modo per abilitare gli elementi disabilitati.

I controlli invisibili possono causare confusione e disorientamento.

I controlli disabilitati possono portare a comportamenti investigativi (che può essere una buona cosa).

Un consiglio generale: mantenere al minimo la quantità di controlli nascosti/visibili e inattivi/attivi. Di solito, c'è una soluzione migliore.

3
Christian

Questo è ciò che Apple dice di nascondere le funzionalità dell'applicazione in base alla sua posizione:

Le persone dovrebbero essere in grado di trovare tutte le funzionalità disponibili nella tua app. Non nascondere le funzionalità non riuscendo a rendere disponibili i comandi in un menu. I menu presentano elenchi di comandi in modo che le persone possano vedere le loro scelte piuttosto che provare a ricordare nomi dei comandi. Evitare di fornire l'accesso alle funzioni solo nelle barre degli strumenti o nei menu contestuali. Poiché le barre degli strumenti e i menu contestuali potrebbero essere nascosti, i comandi in essi contenuti dovrebbero essere sempre disponibili anche nei menu della barra dei menu.

Alcuni elementi dell'interfaccia utente disabilitati possono suggerire agli utenti il ​​comportamento dell'applicazione. Quando li nascondi quel suggerimento scompare.

Prendi ad esempio Photoshop, quando sei in modalità indicizzata (come lavorare con una GIF) ottieni questa schermata.

Photoshop Image Mode

Come puoi vedere, i pulsanti in basso a destra sono disabilitati. E questo è in genere ciò che mi suggerisce che devo andare e cambiare la modalità immagine (tra parentesi accanto a Untitled-1 @ 100%).

Photoshop Image Mode

Ora sono abilitati!

Come puoi vedere, il cambio di modalità è di solito sottile, ma l'applicazione riesce a comunicare la modalità in molti modi. Se nascondi semplicemente i pulsanti, ti piacerebbe solo dire che la casella degli strumenti era chiusa a quel punto o inizi a chiederti se l'applicazione funziona correttamente.

1
edgarator

Anche negli scenari di errore possiamo nasconderci. Supponiamo che sia necessario mostrare una casella di spunta al caricamento della pagina, se non si riesce a ottenere lo stato di attivazione/disattivazione corrente, la disabilitazione potrebbe confondere l'utente, poiché non ha commesso alcun errore o le sue azioni non lo hanno causato, è un errore nel recupero delle informazioni. Quindi suppongo che anche in questo caso possiamo nasconderci.

0
Santhosh

Dovresti rendere qualcosa di invisibile solo se non ha rilevanza per ciò che l'utente sta facendo e non fornisce alcun valore per l'utente.

I moduli sono un buon esempio. Non ha senso chiedere a un utente di compilare il modulo della cronologia delle assunzioni se non è mai stato assunto o chiedere loro di compilare un modulo della carta di credito se sta pagando con una carta regalo.

I controlli in grigio indicano che l'elemento non è attivo o disabilitato, ma l'utente deve essere consapevole che esiste.

0
Chris N.