来自github的android countryPicker,将国家带到顶端

来自github的android countryPicker,将国家带到顶端,android,country-codes,Android,Country Codes,我已经成功地从github实现了AndroidCountryPicker开源项目。这个:。现在,我想把美国、香港和加拿大排在榜首。因此,用户不必不断地搜索,这些将是最常用的。任何人都知道这是怎么可能的 谢谢我认为您需要更改库代码来实现这一点。负责加载和排序国家/地区的代码为 您可以忽略这三个国家,然后在对数组排序后添加它们(假设您希望所有其他国家看起来都是有序的): 如果您使用的是Java 6或更早版本,则需要将交换机替换为If/else 编辑:如果有人想要更改国家数据,它将存储在res/val

我已经成功地从github实现了AndroidCountryPicker开源项目。这个:。现在,我想把美国、香港和加拿大排在榜首。因此,用户不必不断地搜索,这些将是最常用的。任何人都知道这是怎么可能的


谢谢

我认为您需要更改库代码来实现这一点。负责加载和排序国家/地区的代码为

您可以忽略这三个国家,然后在对数组排序后添加它们(假设您希望所有其他国家看起来都是有序的):

如果您使用的是Java 6或更早版本,则需要将交换机替换为If/else


编辑:如果有人想要更改国家数据,它将存储在
res/values/strings\u countries.xml
中的一个大JSON字符串(用base64编码)中。因此,需要对其进行解码、更改,然后再次编码(类似or
base64
的命令将起作用)

为此,您必须实现自己的功能,但有一些功能可以实现搜索视图的最近搜索历史@XH6user实现搜索历史记录是没有用的,用户只希望选择一次,然后他们就不会再看到它了。我知道我必须实现我自己的东西,但我希望在哪里寻找或开始实施的方向。哇,这正是我想要的,非常感谢@Salem!只想添加国家/地区US、HK、CA必须初始化,否则eclipse会显示错误。@Yianni您是对的。这些变量将以任何方式初始化,但编译器无法知道这一点。修正了。嘿@Salem,你知道我如何在每个国家旁边添加电话号码国家代码吗。像美国+ 1,香港+ 852…每一个。任何帮助都将不胜感激。谢谢
Country US, HK, CA;
US = HK = CA = null;
while (keys.hasNext()) {
    String key = (String) keys.next();
    Country country = new Country();
    country.setCode(key);
    country.setName(jsonObject.getString(key));
    switch(key) {
        case "US": US = country; break;
        case "HK": HK = country; break;
        case "CA": CA = country; break;
        default: allCountriesList.add(country);
    }
}

Collections.sort(allCountriesList, this);
allCountriesList.add(0, CA);
allCountriesList.add(0, HK);
allCountriesList.add(0, US);