Продолжаю разбираться с локализацией
This commit is contained in:
@@ -38,6 +38,22 @@ android {
|
||||
}
|
||||
}
|
||||
|
||||
productFlavors {
|
||||
|
||||
en {
|
||||
buildConfigField "String", "locale", "\"en\""
|
||||
}
|
||||
|
||||
ru {
|
||||
buildConfigField "String", "locale", "\"ru\""
|
||||
}
|
||||
|
||||
ua {
|
||||
buildConfigField "String", "locale", "\"ua\""
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
sourceSets.main {
|
||||
jniLibs.srcDir 'jniLibs'
|
||||
}
|
||||
|
||||
@@ -6,9 +6,11 @@ import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
|
||||
import android.content.res.Configuration;
|
||||
import android.content.res.Resources;
|
||||
import com.dinect.checker.zbar.CameraActivity;
|
||||
import com.dinect.checker.zxing.ScannerActivity;
|
||||
import java.util.Locale;
|
||||
|
||||
import io.flutter.app.FlutterActivity;
|
||||
import io.flutter.plugins.GeneratedPluginRegistrant;
|
||||
@@ -47,7 +49,7 @@ public class MainActivity extends FlutterActivity {
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
GeneratedPluginRegistrant.registerWith(this);
|
||||
|
||||
loadLocale(this);
|
||||
mPreferences = getPreferences(Context.MODE_PRIVATE);
|
||||
|
||||
Log.d(TAG, "application prefs:");
|
||||
@@ -144,6 +146,29 @@ public class MainActivity extends FlutterActivity {
|
||||
}
|
||||
}
|
||||
|
||||
public static void loadLocale(Context context) {
|
||||
Resources res = context.getResources();
|
||||
Configuration configuration = new Configuration(res.getConfiguration());
|
||||
switch (BuildConfig.locale) {
|
||||
case "en":
|
||||
configuration.locale = new Locale("en");
|
||||
Locale.setDefault(configuration.locale);
|
||||
res.updateConfiguration(configuration, res.getDisplayMetrics());
|
||||
break;
|
||||
case "ru":
|
||||
configuration.locale = new Locale("ru");
|
||||
Locale.setDefault(configuration.locale);
|
||||
res.updateConfiguration(configuration, res.getDisplayMetrics());
|
||||
break;
|
||||
case "ua":
|
||||
configuration.locale = new Locale("ua");
|
||||
Locale.setDefault(configuration.locale);
|
||||
res.updateConfiguration(configuration, res.getDisplayMetrics());
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void handleItemClick() {
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user