Skip to content

bingerz/CountryCodePicker

Repository files navigation

CountryCodePicker

适用于Android项目的国家代码选择器。

国家代码的数据参考了谷歌、Facebook等一些应用中的数据,逐条验证过信息(国家名称,国旗,国家代码等)的准确性,
并查漏补缺,最终数据来源于WiKi。

使用

API

/**
 * 跳转到选择器Activity界面
 */
new CountryCodePicker().start(this);

/**
 * 在当前的界面接收选择的国家代码
 */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode) {
        case CountryCodePicker.REQUEST_CODE_PICKER:
            if (data == null) {
                Toast.makeText(this, "Country is null", Toast.LENGTH_SHORT).show();
                return;
            }
            CountryCode countryCode = data.getParcelableExtra(CountryCodePicker.EXTRA_CODE);
            if (countryCode != null) {
                //添加自己的代码,处理返回的结果
                Toast.makeText(this, countryCode.mCountryCode + "", Toast.LENGTH_SHORT).show();
            }
            break;
    }
}

添加到工程

buildscript {
  repositories {
    jcenter()
  }

  dependencies {
    compile 'cn.bingerz.android:countrycodepicker:0.8.1'
  }
}
//AndroidManifest.xml 文件中添加此行代码
<activity android:name="cn.bingerz.android.countrycodepicker.CountryCodeActivity" />

详细说明

最初版本加载国家代码的数据是通过json文件,国家代码和国家名称等信息保存在json文件中。在略大的项目中, 读取json文件过程会对IO造成阻塞,导致界面ANR,现在改为string-array的方式。

Release Changes

v0.8.1

  • Bug fixs

v0.7.0

  • Support RTL

v0.6.1

  • Bug fixs

v0.6.0

  • Bug fixs

v0.5.0

  • Bug fixs

v0.4.0

  • Init First Commit

About

Android library project for country code picker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages