Merge "Add an internal API to get all asset locales."
This commit is contained in:
@@ -36,7 +36,6 @@ import android.widget.ListView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import java.text.Collator;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
@@ -106,22 +105,21 @@ public class LocalePicker extends ListFragment {
|
||||
return constructAdapter(context, layoutId, fieldId, false /* disable pseudolocales */);
|
||||
}
|
||||
|
||||
public static ArrayAdapter<LocaleInfo> constructAdapter(Context context,
|
||||
final int layoutId, final int fieldId, final boolean isInDeveloperMode) {
|
||||
public static List<LocaleInfo> getAllAssetLocales(Context context, boolean isInDeveloperMode) {
|
||||
final Resources resources = context.getResources();
|
||||
|
||||
String[] locales = Resources.getSystem().getAssets().getLocales();
|
||||
final String[] locales = Resources.getSystem().getAssets().getLocales();
|
||||
List<String> localeList = new ArrayList<String>(locales.length);
|
||||
Collections.addAll(localeList, locales);
|
||||
if (isInDeveloperMode) {
|
||||
if (!localeList.contains("zz_ZZ")) {
|
||||
localeList.add("zz_ZZ");
|
||||
}
|
||||
/** - TODO: Enable when zz_ZY Pseudolocale is complete
|
||||
* if (!localeList.contains("zz_ZY")) {
|
||||
* localeList.add("zz_ZY");
|
||||
* }
|
||||
*/
|
||||
/** - TODO: Enable when zz_ZY Pseudolocale is complete
|
||||
* if (!localeList.contains("zz_ZY")) {
|
||||
* localeList.add("zz_ZY");
|
||||
* }
|
||||
*/
|
||||
}
|
||||
|
||||
Collections.sort(localeList);
|
||||
@@ -179,6 +177,13 @@ public class LocalePicker extends ListFragment {
|
||||
}
|
||||
|
||||
Collections.sort(localeInfos);
|
||||
return localeInfos;
|
||||
}
|
||||
|
||||
public static ArrayAdapter<LocaleInfo> constructAdapter(Context context,
|
||||
final int layoutId, final int fieldId, final boolean isInDeveloperMode) {
|
||||
final List<LocaleInfo> localeInfos = getAllAssetLocales(context, isInDeveloperMode);
|
||||
|
||||
final LayoutInflater inflater =
|
||||
(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
||||
return new ArrayAdapter<LocaleInfo>(context, layoutId, fieldId, localeInfos) {
|
||||
|
||||
Reference in New Issue
Block a user