Ho un'app che supporta 2 lingue, inglese e arabo. L'inglese è lasciato a destra & L'arabo è da destra a sinistra.come cambiare userInterfaceLayoutDirection
Ho un controller denominato LanguageViewController
. Ci sono due pulsanti: arabo & inglese. Quando un utente fa clic su "Arabo", la lingua della mia app cambia dall'inglese all'arabo. Uso il layout automatico nel mio progetto.
Quando la lingua viene modificata, mi aspetto che la posizione dell'oggetto venga specchiata allo stesso tempo. ma non è & quando chiudo la mia app ed eseguo di nuovo, la posizione dell'oggetto viene specchiata correttamente.
Nella domanda: How to force "Respect Language Direction" from RTL to LTR and vice versa @Raz ha avuto lo stesso problema. ma non voglio costruire una nuova storia. Quando la lingua viene modificata da En
a Ar
e si esce dall'app, il valore di userInterfaceLayoutDirection
passa da UIUserInterfaceLayoutDirectionLeftToRight
a UIUserInterfaceLayoutDirectionRightToLeft
. Ho usato NsLog
per vedere il valore di userInterfaceLayoutDirection
. Quando premo il pulsante "Arabic" il valore non cambia, ma quando corro di nuovo il valore è cambiato. La mia domanda è come forzare il cambio userInterfaceLayoutDirection
senza uscire e senza caricare il nuovo storyboard?
così. cosa fare quando l'utente cambia la lingua nelle impostazioni dell'applicazione (non impostazione ios). Non voglio forzare l'utente a uscire dalla mia app ed eseguire di nuovo. se l'utente non chiude la mia app, la direzione del vincolo per i pulsanti e le etichette non cambia. e questo non è il mio caso. –
Non c'è modo di fare ciò che stai cercando di realizzare al momento. – lensovet
Per curiosità, la commutazione di lingua in-app è qualcosa che gli utenti desiderano? Perché non eseguire sempre solo il linguaggio di sistema preferito? – lensovet