Perché un'app basata su Java in OS X ha 2 diversi design di interfaccia utente?

1

Cito 2 immagini da Google.

Guarda le schede. Sono totalmente diversi. Ho appena completato la migrazione a OS X. Credo sempre che OS X fornisca un'interfaccia utente uniforme per rendere le loro app più eleganti. Inoltre, come trasformare l'interfaccia utente dell'app nella seconda immagine come nella prima immagine?

    
posta JACK M 06.05.2014 - 15:02
fonte

2 risposte

3

Lo stesso codice Java (principalmente) gira su tutte le architetture OS /. Ha diverse API diverse per disegnare forme / finestre. Alcune di queste API, ad es. Lo swing ti consente di cambiare aspetto e aspetto tra l'emulazione di diversi set di widget. Quindi un programma può essere scritto in modo tale da consentire all'utente di modificare l'aspetto.

L'aspetto grafico fornito include OSX (come nella schermata principale) e Windows (diverse forme) o Motif o GTK. Il modo per impostare questo in Swing e per ulteriori informazioni vedere questo documento Oracle Si noti che anche l'aspetto e l'aspetto dell'OSX non corrisponde pienamente alle linee guida di Apple, ad es posizionamento del menu nella finestra e non nella parte superiore del display.

Come qualsiasi sistema Windowing puoi sempre scrivere programmi che si comportano e sembrano diversi dallo standard previsto. Succede che per la maggior parte degli sviluppatori di OSX attenersi alle linee guida di Apple, ma anche usando le API fornite da Apple puoi avere un feeling diverso tra i programmi Carbon (originariamente Mac OS < = 9) e Cocoa (originariamente NeXT). L'AppStore consente ad Apple di avere un po 'più di controllo, ma non so se le linee guida del display vengano effettivamente controllate.

    
risposta data 06.05.2014 - 15:41
fonte
0

Java è semplicemente il contenitore e la lingua scelta dal programmatore per descrivere come deve essere disegnata un'immagine. L'uso di java significa che lo sviluppatore ha ignorato gli elementi di interfaccia OS X standard forniti da Apple agli sviluppatori insieme ai documenti delle linee guida dell'interfaccia utente. Questo esempio è proprio il motivo per cui il codice java è spesso visto come un cittadino di seconda classe tra le persone che si aspettano che il tipico software di qualità Apple venga eseguito sul proprio Mac.

Pensa a un ristorante. Le istruzioni per il personale potrebbero essere scritte in francese e i contenitori che il cibo viene consegnato potrebbero essere scatole di carta piegate rivestite con cera all'esterno. Ancora non cambierebbe quello che hai ottenuto se una ricetta fosse per il cibo del nord Italia rispetto al cibo del nord dell'India.

Java da solo non proscrive su come appare un pulsante - solo la libreria e il codice per disegnare la GUI e nel tuo esempio, diversi ingredienti sono stati collocati nello stesso contenitore con i risultati differenti attesi.

    
risposta data 06.05.2014 - 16:12
fonte

Leggi altre domande sui tag