@@ -13,9 +13,9 @@ struct CountrySelectorView: View {
1313 @State private var selectedCountry : Country ? = nil
1414 @State private var countries : [ Country ] = [
1515 Country ( name: " United States " , flag: " 🇺🇸 " , language: " English " , languageCode: " en " ) ,
16- Country ( name: " Canada " , flag: " 🇨🇦 " , language: " French " , languageCode: " en, fr" ) ,
16+ Country ( name: " Canada " , flag: " 🇨🇦 " , language: " French " , languageCode: " fr " ) ,
1717 Country ( name: " United Kingdom " , flag: " 🇬🇧 " , language: " English " , languageCode: " en " ) ,
18- Country ( name: " India " , flag: " 🇮🇳 " , language: " Hindi " , languageCode: " hi, en " ) ,
18+ Country ( name: " India " , flag: " 🇮🇳 " , language: " Hindi " , languageCode: " hi " ) ,
1919 Country ( name: " Germany " , flag: " 🇩🇪 " , language: " German " , languageCode: " de " ) ,
2020 Country ( name: " Australia " , flag: " 🇦🇺 " , language: " English " , languageCode: " en " ) ,
2121 Country ( name: " Japan " , flag: " 🇯🇵 " , language: " Japanese " , languageCode: " ja " ) ,
@@ -32,16 +32,16 @@ struct CountrySelectorView: View {
3232 Country ( name: " Norway " , flag: " 🇳🇴 " , language: " Norwegian " , languageCode: " no " ) ,
3333 Country ( name: " Netherlands " , flag: " 🇳🇱 " , language: " Dutch " , languageCode: " nl " ) ,
3434 Country ( name: " Turkey " , flag: " 🇹🇷 " , language: " Turkish " , languageCode: " tr " ) ,
35- Country ( name: " South Africa " , flag: " 🇿🇦 " , language: " Afrikaans " , languageCode: " af, en " ) ,
35+ Country ( name: " South Africa " , flag: " 🇿🇦 " , language: " Afrikaans " , languageCode: " af " ) ,
3636 Country ( name: " Egypt " , flag: " 🇪🇬 " , language: " Arabic " , languageCode: " ar " ) ,
3737 Country ( name: " Thailand " , flag: " 🇹🇭 " , language: " Thai " , languageCode: " th " ) ,
3838 Country ( name: " Vietnam " , flag: " 🇻🇳 " , language: " Vietnamese " , languageCode: " vi " ) ,
3939 Country ( name: " Argentina " , flag: " 🇦🇷 " , language: " Spanish " , languageCode: " es " ) ,
4040 Country ( name: " Nigeria " , flag: " 🇳🇬 " , language: " English " , languageCode: " en " ) ,
4141 Country ( name: " Indonesia " , flag: " 🇮🇩 " , language: " Indonesian " , languageCode: " id " ) ,
42- Country ( name: " Pakistan " , flag: " 🇵🇰 " , language: " Urdu " , languageCode: " ur, en " ) ,
42+ Country ( name: " Pakistan " , flag: " 🇵🇰 " , language: " Urdu " , languageCode: " ur " ) ,
4343 Country ( name: " Bangladesh " , flag: " 🇧🇩 " , language: " Bengali " , languageCode: " bn " ) ,
44- Country ( name: " Philippines " , flag: " 🇵🇭 " , language: " Filipino " , languageCode: " fil, en " ) ,
44+ Country ( name: " Philippines " , flag: " 🇵🇭 " , language: " Filipino " , languageCode: " fil " ) ,
4545 Country ( name: " Malaysia " , flag: " 🇲🇾 " , language: " Malay " , languageCode: " ms " ) ,
4646 Country ( name: " Iran " , flag: " 🇮🇷 " , language: " Persian " , languageCode: " fa " ) ,
4747 Country ( name: " Iraq " , flag: " 🇮🇶 " , language: " Kurdish " , languageCode: " ar, ku " ) ,
@@ -54,15 +54,15 @@ struct CountrySelectorView: View {
5454 Country ( name: " Ukraine " , flag: " 🇺🇦 " , language: " Ukrainian " , languageCode: " uk " ) ,
5555 Country ( name: " Greece " , flag: " 🇬🇷 " , language: " Greek " , languageCode: " el " ) ,
5656 Country ( name: " Serbia " , flag: " 🇷🇸 " , language: " Serbian " , languageCode: " sr " ) ,
57- Country ( name: " Switzerland " , flag: " 🇨🇭 " , language: " French " , languageCode: " de, fr, it " ) ,
57+ Country ( name: " Switzerland " , flag: " 🇨🇭 " , language: " French " , languageCode: " de " ) ,
5858 Country ( name: " Denmark " , flag: " 🇩🇰 " , language: " Danish " , languageCode: " da " ) ,
5959 Country ( name: " Finland " , flag: " 🇫🇮 " , language: " Finnish " , languageCode: " fi, sv " ) ,
6060 Country ( name: " Iceland " , flag: " 🇮🇸 " , language: " Icelandic " , languageCode: " is " ) ,
6161 Country ( name: " Estonia " , flag: " 🇪🇪 " , language: " Estonian " , languageCode: " et " ) ,
6262 Country ( name: " Latvia " , flag: " 🇱🇻 " , language: " Latvian " , languageCode: " lv " ) ,
6363 Country ( name: " Lithuania " , flag: " 🇱🇹 " , language: " Lithuanian " , languageCode: " lt " ) ,
64- Country ( name: " Belarus " , flag: " 🇧🇾 " , language: " Russian " , languageCode: " be, ru " ) ,
65- Country ( name: " Kazakhstan " , flag: " 🇰🇿 " , language: " Russian " , languageCode: " kk, ru " ) ,
64+ Country ( name: " Belarus " , flag: " 🇧🇾 " , language: " Russian " , languageCode: " be " ) ,
65+ Country ( name: " Kazakhstan " , flag: " 🇰🇿 " , language: " Russian " , languageCode: " kk " ) ,
6666 ]
6767
6868
@@ -84,21 +84,6 @@ struct CountrySelectorView: View {
8484
8585 var body : some View {
8686 VStack {
87- if let selectedCountry = selectedCountry {
88- HStack {
89- Text ( selectedCountry. flag)
90- . font ( . largeTitle)
91- Text ( selectedCountry. language)
92- . font ( . title)
93- . bold ( )
94- }
95- . padding ( )
96- } else {
97- Text ( " Select a language " )
98- . font ( . title2)
99- . foregroundColor ( . gray)
100- . padding ( )
101- }
10287
10388 TextField ( " Search countries " , text: $searchText)
10489 . padding ( 10 )
@@ -111,9 +96,9 @@ struct CountrySelectorView: View {
11196 Text ( country. flag)
11297 . font ( . largeTitle)
11398 VStack ( alignment: . leading) {
114- Text ( country. name )
99+ Text ( country. language )
115100 . font ( . headline)
116- Text ( " \( country. language ) ( \( country . languageCode) ) " )
101+ Text ( " \( country. languageCode) " )
117102 . font ( . subheadline)
118103 . foregroundColor ( . gray)
119104 }
@@ -133,7 +118,13 @@ struct CountrySelectorView: View {
133118 . listStyle ( PlainListStyle ( ) )
134119 . padding ( )
135120 }
136- . navigationTitle ( " Select Country " )
121+ . navigationTitle ( " Select Language " )
122+ . onAppear {
123+ if let selected = countries. first ( where: { $0. languageCode == appManager. appLanguage } ) {
124+ selectedCountry = selected
125+ }
126+ }
127+
137128 }
138129}
139130
0 commit comments