选择手机号前缀控件

54 篇文章 2 订阅
46 篇文章 1 订阅

前言

前几天做了个选择控件,虽然挺简单的,但是就想给封装一下,封装完之后发现灵活性不高,牵扯资源比较多,于是就单拎出来,重新封装了下,灵活性大大提高,虽然很简单(源码就二百行,再加上一些xml文件和资源)

Github地址:https://github.com/ltttttttttttt/select_country

ps:kotlin写的,RecyclerView用的是v7包下的

效果

中文环境下,根据拼音首字母排序,可以右边栏点击或滑动,可以增加回调来设置是否显示toast或自定义事件,点击后finish并返回bean信息,各种布局和数据都可自定义(只不过方式比较奇葩,嘿嘿)

中文环境根据首拼音排序,英文环境下根据英文首字母排序

使用方式

1.下载aar包(其实开始是想用maven的方式的,但是maven貌似没法带清单文件和assets文件夹,找了半天就改用aar包了)

ps:aar包比较大(300K+)是因为包含了数据资源,比如图片和对应的数据

链接:https://pan.baidu.com/s/1FNV2hr1YEDCJUnDBv5_hOA 
提取码:yeaw 

2.引入(Android Studio方式)

把aar放入libs文件夹中,并在app的Build.Gradle中写:

android{
    ...
}
repositories {
    flatDir {
        dirs 'libs'
    }
}

然后在app的Build.Gradle中引用:

implementation name: 'select_country-1.0.2', ext: 'aar'

ps:如果项目里没有引入RecyclerView,则需要在加一行(版本比较低,可以自己调高)

implementation 'com.android.support:recyclerview-v7:25.3.1'

3.在代码中使用

//Java下使用

//在需要的时候调用
startActivityForResult(new Intent(this, LtSelectCountryActivity.class), 0);

//接收返回的数据
 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == Activity.RESULT_OK) {
            CountryBean countryBean = LtSelectCountryActivity.getCountryBean(data);
            if (countryBean != null) {
                //todo 在这里处理返回结果 (  en:英文名称  zh:中文名称  locale:代码,比如大陆CN  code:电话前缀,比如大陆前缀是86  shoupinyin:中文首拼音,一般不需要用
                Toast.makeText(this, countryBean.getZh(), Toast.LENGTH_LONG).show();
            }
        }
    }

//Kotlin下使用法一样,但结合我这篇文章,可以如下简化  https://blog.csdn.net/qq_33505109/article/details/86624178

        startActivityForResult<LtSelectCountryActivity> {
            val bean = LtSelectCountryActivity.getCountryBean(it) ?: return@startActivityForResult
            //todo 在这里处理
            Toast.makeText(this, bean.zh, Toast.LENGTH_SHORT).show()
        }

ok,基本使用就讲完了,下面讲下别的方法,自定义页面和自定义数据的

4.其他方法

//拦截或监听右边字母被点击或滑动(一般是用来设置toast的样式)

        LtSelectCountryActivity.setSelectListener(new Function1<String, Boolean>() {
            @Override
            public Boolean invoke(String s) {
                //todo s是点击或划过时字母的值
                return Boolean.FALSE;//返回Boolean.TRUE则不会弹出默认的Toast
            }
        });

5.自定义数据

//添加或者修改图片

在当前module下的  main->assets->countryflags  文件夹中添加   代码.png   命名的图片即可(代码大写)

//自定义相关数据

在当前module下创建这个txt文件  main->assets->data->country.txt  ,并把下面内容粘贴进去,并按照格式进行修改或添加即可

{"shoupinyin":"A","en":"Angola","zh":"安哥拉","locale":"AO","code":244}
{"shoupinyin":"A","en":"Afghanistan","zh":"阿富汗","locale":"AF","code":93}
{"shoupinyin":"A","en":"Albania","zh":"阿尔巴尼亚","locale":"AL","code":355}
{"shoupinyin":"A","en":"Algeria","zh":"阿尔及利亚","locale":"DZ","code":213}
{"shoupinyin":"A","en":"Andorra","zh":"安道尔共和国","locale":"AD","code":376}
{"shoupinyin":"A","en":"Anguilla","zh":"安圭拉岛","locale":"AI","code":1264}
{"shoupinyin":"A","en":"AntiguaandBarbuda","zh":"安提瓜和巴布达","locale":"AG","code":1268}
{"shoupinyin":"A","en":"Argentina","zh":"阿根廷","locale":"AR","code":54}
{"shoupinyin":"Y","en":"Armenia","zh":"亚美尼亚","locale":"AM","code":374}
{"shoupinyin":"A","en":"Australia","zh":"澳大利亚","locale":"AU","code":61}
{"shoupinyin":"A","en":"Austria","zh":"奥地利","locale":"AT","code":43}
{"shoupinyin":"A","en":"Azerbaijan","zh":"阿塞拜疆","locale":"AZ","code":994}
{"shoupinyin":"B","en":"Bahamas","zh":"巴哈马","locale":"BS","code":1242}
{"shoupinyin":"B","en":"Bahrain","zh":"巴林","locale":"BH","code":973}
{"shoupinyin":"M","en":"Bangladesh","zh":"孟加拉国","locale":"BD","code":880}
{"shoupinyin":"B","en":"Barbados","zh":"巴巴多斯","locale":"BB","code":1246}
{"shoupinyin":"B","en":"Belarus","zh":"白俄罗斯","locale":"BY","code":375}
{"shoupinyin":"B","en":"Belgium","zh":"比利时","locale":"BE","code":32}
{"shoupinyin":"B","en":"Belize","zh":"伯利兹","locale":"BZ","code":501}
{"shoupinyin":"B","en":"Benin","zh":"贝宁","locale":"BJ","code":229}
{"shoupinyin":"B","en":"BermudaIs.","zh":"百慕大群岛","locale":"BM","code":1441}
{"shoupinyin":"B","en":"Bolivia","zh":"玻利维亚","locale":"BO","code":591}
{"shoupinyin":"B","en":"Botswana","zh":"博茨瓦纳","locale":"BW","code":267}
{"shoupinyin":"B","en":"Brazil","zh":"巴西","locale":"BR","code":55}
{"shoupinyin":"W","en":"Brunei","zh":"文莱","locale":"BN","code":673}
{"shoupinyin":"B","en":"Bulgaria","zh":"保加利亚","locale":"BG","code":359}
{"shoupinyin":"B","en":"Burkina-faso","zh":"布基纳法索","locale":"BF","code":226}
{"shoupinyin":"M","en":"Burma","zh":"缅甸","locale":"MM","code":95}
{"shoupinyin":"B","en":"Burundi","zh":"布隆迪","locale":"BI","code":257}
{"shoupinyin":"K","en":"Cameroon","zh":"喀麦隆","locale":"CM","code":237}
{"shoupinyin":"J","en":"Canada","zh":"加拿大","locale":"CA","code":1}
{"shoupinyin":"Z","en":"CentralAfricanRepublic","zh":"中非共和国","locale":"CF","code":236}
{"shoupinyin":"Z","en":"Chad","zh":"乍得","locale":"TD","code":235}
{"shoupinyin":"Z","en":"Chile","zh":"智利","locale":"CL","code":56}
{"shoupinyin":"Z","en":"China","zh":"中国","locale":"CN","code":86}
{"shoupinyin":"G","en":"Colombia","zh":"哥伦比亚","locale":"CO","code":57}
{"shoupinyin":"G","en":"Congo","zh":"刚果","locale":"CG","code":242}
{"shoupinyin":"K","en":"CookIs.","zh":"库克群岛","locale":"CK","code":682}
{"shoupinyin":"G","en":"CostaRica","zh":"哥斯达黎加","locale":"CR","code":506}
{"shoupinyin":"G","en":"Cuba","zh":"古巴","locale":"CU","code":53}
{"shoupinyin":"Z","en":"Cyprus","zh":"塞浦路斯","locale":"CY","code":357}
{"shoupinyin":"J","en":"CzechRepublic","zh":"捷克","locale":"CZ","code":420}
{"shoupinyin":"D","en":"Denmark","zh":"丹麦","locale":"DK","code":45}
{"shoupinyin":"J","en":"Djibouti","zh":"吉布提","locale":"DJ","code":253}
{"shoupinyin":"D","en":"DominicaRep.","zh":"多米尼加共和国","locale":"DO","code":1890}
{"shoupinyin":"E","en":"Ecuador","zh":"厄瓜多尔","locale":"EC","code":593}
{"shoupinyin":"A","en":"Egypt","zh":"埃及","locale":"EG","code":20}
{"shoupinyin":"S","en":"EISalvador","zh":"萨尔瓦多","locale":"SV","code":503}
{"shoupinyin":"A","en":"Estonia","zh":"爱沙尼亚","locale":"EE","code":372}
{"shoupinyin":"A","en":"Ethiopia","zh":"埃塞俄比亚","locale":"ET","code":251}
{"shoupinyin":"F","en":"Fiji","zh":"斐济","locale":"FJ","code":679}
{"shoupinyin":"F","en":"Finland","zh":"芬兰","locale":"FI","code":358}
{"shoupinyin":"F","en":"France","zh":"法国","locale":"FR","code":33}
{"shoupinyin":"F","en":"FrenchGuiana","zh":"法属圭亚那","locale":"GF","code":594}
{"shoupinyin":"J","en":"Gabon","zh":"加蓬","locale":"GA","code":241}
{"shoupinyin":"G","en":"Gambia","zh":"冈比亚","locale":"GM","code":220}
{"shoupinyin":"G","en":"Georgia","zh":"格鲁吉亚","locale":"GE","code":995}
{"shoupinyin":"D","en":"Germany","zh":"德国","locale":"DE","code":49}
{"shoupinyin":"J","en":"Ghana","zh":"加纳","locale":"GH","code":233}
{"shoupinyin":"Z","en":"Gibraltar","zh":"直布罗陀","locale":"GI","code":350}
{"shoupinyin":"X","en":"Greece","zh":"希腊","locale":"GR","code":30}
{"shoupinyin":"G","en":"Grenada","zh":"格林纳达","locale":"GD","code":1809}
{"shoupinyin":"G","en":"Guam","zh":"关岛","locale":"GU","code":1671}
{"shoupinyin":"W","en":"Guatemala","zh":"危地马拉","locale":"GT","code":502}
{"shoupinyin":"J","en":"Guinea","zh":"几内亚","locale":"GN","code":224}
{"shoupinyin":"G","en":"Guyana","zh":"圭亚那","locale":"GY","code":592}
{"shoupinyin":"H","en":"Haiti","zh":"海地","locale":"HT","code":509}
{"shoupinyin":"H","en":"Honduras","zh":"洪都拉斯","locale":"HN","code":504}
{"shoupinyin":"X","en":"Hongkong","zh":"香港","locale":"HK","code":852}
{"shoupinyin":"X","en":"Hungary","zh":"匈牙利","locale":"HU","code":36}
{"shoupinyin":"B","en":"Iceland","zh":"冰岛","locale":"IS","code":354}
{"shoupinyin":"Y","en":"India","zh":"印度","locale":"IN","code":91}
{"shoupinyin":"Y","en":"Indonesia","zh":"印度尼西亚","locale":"ID","code":62}
{"shoupinyin":"Y","en":"Iran","zh":"伊朗","locale":"IR","code":98}
{"shoupinyin":"Y","en":"Iraq","zh":"伊拉克","locale":"IQ","code":964}
{"shoupinyin":"A","en":"Ireland","zh":"爱尔兰","locale":"IE","code":353}
{"shoupinyin":"Y","en":"Israel","zh":"以色列","locale":"IL","code":972}
{"shoupinyin":"Y","en":"Italy","zh":"意大利","locale":"IT","code":39}
{"shoupinyin":"Y","en":"Jamaica","zh":"牙买加","locale":"JM","code":1876}
{"shoupinyin":"R","en":"Japan","zh":"日本","locale":"JP","code":81}
{"shoupinyin":"Y","en":"Jordan","zh":"约旦","locale":"JO","code":962}
{"shoupinyin":"J","en":"Kampuchea(Cambodia)","zh":"柬埔寨","locale":"KH","code":855}
{"shoupinyin":"H","en":"Kazakstan","zh":"哈萨克斯坦","locale":"KZ","code":327}
{"shoupinyin":"K","en":"Kenya","zh":"肯尼亚","locale":"KE","code":254}
{"shoupinyin":"H","en":"Korea","zh":"韩国","locale":"KR","code":82}
{"shoupinyin":"K","en":"Kuwait","zh":"科威特","locale":"KW","code":965}
{"shoupinyin":"J","en":"Kyrgyzstan","zh":"吉尔吉斯坦","locale":"KG","code":331}
{"shoupinyin":"L","en":"Laos","zh":"老挝","locale":"LA","code":856}
{"shoupinyin":"L","en":"Latvia","zh":"拉脱维亚","locale":"LV","code":371}
{"shoupinyin":"L","en":"Lebanon","zh":"黎巴嫩","locale":"LB","code":961}
{"shoupinyin":"L","en":"Lesotho","zh":"莱索托","locale":"LS","code":266}
{"shoupinyin":"L","en":"Liberia","zh":"利比里亚","locale":"LR","code":231}
{"shoupinyin":"L","en":"Libya","zh":"利比亚","locale":"LY","code":218}
{"shoupinyin":"L","en":"Liechtenstein","zh":"列支敦士登","locale":"LI","code":423}
{"shoupinyin":"L","en":"Lithuania","zh":"立陶宛","locale":"LT","code":370}
{"shoupinyin":"L","en":"Luxembourg","zh":"卢森堡","locale":"LU","code":352}
{"shoupinyin":"A","en":"Macao","zh":"澳门","locale":"MO","code":853}
{"shoupinyin":"M","en":"Madagascar","zh":"马达加斯加","locale":"MG","code":261}
{"shoupinyin":"M","en":"Malawi","zh":"马拉维","locale":"MW","code":265}
{"shoupinyin":"M","en":"Malaysia","zh":"马来西亚","locale":"MY","code":60}
{"shoupinyin":"M","en":"Maldives","zh":"马尔代夫","locale":"MV","code":960}
{"shoupinyin":"M","en":"Mali","zh":"马里","locale":"ML","code":223}
{"shoupinyin":"M","en":"Malta","zh":"马耳他","locale":"MT","code":356}
{"shoupinyin":"M","en":"Mauritius","zh":"毛里求斯","locale":"MU","code":230}
{"shoupinyin":"M","en":"Mexico","zh":"墨西哥","locale":"MX","code":52}
{"shoupinyin":"M","en":"Moldova,Republicof","zh":"摩尔多瓦","locale":"MD","code":373}
{"shoupinyin":"M","en":"Monaco","zh":"摩纳哥","locale":"MC","code":377}
{"shoupinyin":"M","en":"Mongolia","zh":"蒙古","locale":"MN","code":976}
{"shoupinyin":"M","en":"MontserratIs","zh":"蒙特塞拉特岛","locale":"MS","code":1664}
{"shoupinyin":"M","en":"Morocco","zh":"摩洛哥","locale":"MA","code":212}
{"shoupinyin":"M","en":"Mozambique","zh":"莫桑比克","locale":"MZ","code":258}
{"shoupinyin":"N","en":"Namibia","zh":"纳米比亚","locale":"NA","code":264}
{"shoupinyin":"L","en":"Nauru","zh":"瑙鲁","locale":"NR","code":674}
{"shoupinyin":"N","en":"Nepal","zh":"尼泊尔","locale":"NP","code":977}
{"shoupinyin":"H","en":"Netherlands","zh":"荷兰","locale":"NL","code":31}
{"shoupinyin":"X","en":"NewZealand","zh":"新西兰","locale":"NZ","code":64}
{"shoupinyin":"N","en":"Nicaragua","zh":"尼加拉瓜","locale":"NI","code":505}
{"shoupinyin":"N","en":"Niger","zh":"尼日尔","locale":"NE","code":227}
{"shoupinyin":"N","en":"Nigeria","zh":"尼日利亚","locale":"NG","code":234}
{"shoupinyin":"C","en":"NorthKorea","zh":"朝鲜","locale":"KP","code":850}
{"shoupinyin":"N","en":"Norway","zh":"挪威","locale":"NO","code":47}
{"shoupinyin":"A","en":"Oman","zh":"阿曼","locale":"OM","code":968}
{"shoupinyin":"B","en":"Pakistan","zh":"巴基斯坦","locale":"PK","code":92}
{"shoupinyin":"B","en":"Panama","zh":"巴拿马","locale":"PA","code":507}
{"shoupinyin":"B","en":"PapuaNewCuinea","zh":"巴布亚新几内亚","locale":"PG","code":675}
{"shoupinyin":"B","en":"Paraguay","zh":"巴拉圭","locale":"PY","code":595}
{"shoupinyin":"M","en":"Peru","zh":"秘鲁","locale":"PE","code":51}
{"shoupinyin":"F","en":"Philippines","zh":"菲律宾","locale":"PH","code":63}
{"shoupinyin":"B","en":"Poland","zh":"波兰","locale":"PL","code":48}
{"shoupinyin":"F","en":"FrenchPolynesia","zh":"法属玻利尼西亚","locale":"PF","code":689}
{"shoupinyin":"P","en":"Portugal","zh":"葡萄牙","locale":"PT","code":351}
{"shoupinyin":"B","en":"PuertoRico","zh":"波多黎各","locale":"PR","code":1787}
{"shoupinyin":"K","en":"Qatar","zh":"卡塔尔","locale":"QA","code":974}
{"shoupinyin":"L","en":"Romania","zh":"罗马尼亚","locale":"RO","code":40}
{"shoupinyin":"E","en":"Russia","zh":"俄罗斯","locale":"RU","code":7}
{"shoupinyin":"S","en":"SaintLueia","zh":"圣卢西亚","locale":"LC","code":1758}
{"shoupinyin":"S","en":"SaintVincent","zh":"圣文森特岛","locale":"VC","code":1784}
{"shoupinyin":"S","en":"SanMarino","zh":"圣马力诺","locale":"SM","code":378}
{"shoupinyin":"S","en":"SaoTomeandPrincipe","zh":"圣多美和普林西比","locale":"ST","code":239}
{"shoupinyin":"S","en":"SaudiArabia","zh":"沙特阿拉伯","locale":"SA","code":966}
{"shoupinyin":"S","en":"Senegal","zh":"塞内加尔","locale":"SN","code":221}
{"shoupinyin":"S","en":"Seychelles","zh":"塞舌尔","locale":"SC","code":248}
{"shoupinyin":"S","en":"SierraLeone","zh":"塞拉利昂","locale":"SL","code":232}
{"shoupinyin":"X","en":"Singapore","zh":"新加坡","locale":"SG","code":65}
{"shoupinyin":"S","en":"Slovakia","zh":"斯洛伐克","locale":"SK","code":421}
{"shoupinyin":"S","en":"Slovenia","zh":"斯洛文尼亚","locale":"SI","code":386}
{"shoupinyin":"S","en":"SolomonIs","zh":"所罗门群岛","locale":"SB","code":677}
{"shoupinyin":"S","en":"Somali","zh":"索马里","locale":"SO","code":252}
{"shoupinyin":"N","en":"SouthAfrica","zh":"南非","locale":"ZA","code":27}
{"shoupinyin":"X","en":"Spain","zh":"西班牙","locale":"ES","code":34}
{"shoupinyin":"S","en":"SriLanka","zh":"斯里兰卡","locale":"LK","code":94}
{"shoupinyin":"S","en":"St.Lucia","zh":"圣卢西亚","locale":"LC","code":1758}
{"shoupinyin":"S","en":"St.Vincent","zh":"圣文森特","locale":"VC","code":1784}
{"shoupinyin":"S","en":"Sudan","zh":"苏丹","locale":"SD","code":249}
{"shoupinyin":"S","en":"Suriname","zh":"苏里南","locale":"SR","code":597}
{"shoupinyin":"S","en":"Swaziland","zh":"斯威士兰","locale":"SZ","code":268}
{"shoupinyin":"R","en":"Sweden","zh":"瑞典","locale":"SE","code":46}
{"shoupinyin":"R","en":"Switzerland","zh":"瑞士","locale":"CH","code":41}
{"shoupinyin":"X","en":"Syria","zh":"叙利亚","locale":"SY","code":963}
{"shoupinyin":"T","en":"Taiwan","zh":"台湾省","locale":"TW","code":886}
{"shoupinyin":"T","en":"Tajikstan","zh":"塔吉克斯坦","locale":"TJ","code":992}
{"shoupinyin":"T","en":"Tanzania","zh":"坦桑尼亚","locale":"TZ","code":255}
{"shoupinyin":"T","en":"Thailand","zh":"泰国","locale":"TH","code":66}
{"shoupinyin":"D","en":"Togo","zh":"多哥","locale":"TG","code":228}
{"shoupinyin":"T","en":"Tonga","zh":"汤加","locale":"TO","code":676}
{"shoupinyin":"T","en":"TrinidadandTobago","zh":"特立尼达和多巴哥","locale":"TT","code":1809}
{"shoupinyin":"T","en":"Tunisia","zh":"突尼斯","locale":"TN","code":216}
{"shoupinyin":"T","en":"Turkey","zh":"土耳其","locale":"TR","code":90}
{"shoupinyin":"T","en":"Turkmenistan","zh":"土库曼斯坦","locale":"TM","code":993}
{"shoupinyin":"W","en":"Uganda","zh":"乌干达","locale":"UG","code":256}
{"shoupinyin":"W","en":"Ukraine","zh":"乌克兰","locale":"UA","code":380}
{"shoupinyin":"A","en":"UnitedArabEmirates","zh":"阿拉伯联合酋长国","locale":"AE","code":971}
{"shoupinyin":"Y","en":"UnitedKiongdom","zh":"英国","locale":"GB","code":44}
{"shoupinyin":"M","en":"UnitedStatesofAmerica","zh":"美国","locale":"US","code":1}
{"shoupinyin":"W","en":"Uruguay","zh":"乌拉圭","locale":"UY","code":598}
{"shoupinyin":"W","en":"Uzbekistan","zh":"乌兹别克斯坦","locale":"UZ","code":233}
{"shoupinyin":"W","en":"Venezuela","zh":"委内瑞拉","locale":"VE","code":58}
{"shoupinyin":"Y","en":"Vietnam","zh":"越南","locale":"VN","code":84}
{"shoupinyin":"Y","en":"Yemen","zh":"也门","locale":"YE","code":967}
{"shoupinyin":"N","en":"Yugoslavia","zh":"南斯拉夫","locale":"YU","code":381}
{"shoupinyin":"J","en":"Zimbabwe","zh":"津巴布韦","locale":"ZW","code":263}
{"shoupinyin":"Z","en":"Zambia","zh":"赞比亚","locale":"ZM","code":260}

6.自定义页面样式

//自定义主页面,在layout文件夹下创建一个叫 activity_lt_select_country.xml  的文件,然后复制下面的内容,只要id和控件的类型不变,样式宽高之类的可以随便改

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/tvTitle"
        android:layout_width="match_parent"
        android:layout_height="45dp"
        android:background="#fff"
        android:gravity="center"
        android:textColor="#000000"
        android:textSize="16dp" />

    <ImageView
        android:id="@+id/ivBack"
        android:layout_width="wrap_content"
        android:layout_height="45dp"
        android:paddingLeft="14dp"
        android:paddingRight="14dp"
        android:src="@mipmap/select_country_iv_back" />

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rv"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="55dp"
        android:layout_marginRight="20dp">

    </android.support.v7.widget.RecyclerView>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rvRight"
        android:layout_width="20dp"
        android:layout_height="match_parent"
        android:layout_gravity="right"
        android:layout_marginTop="55dp">

    </android.support.v7.widget.RecyclerView>

    <TextView
        android:id="@+id/tvLoading"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="数据加载中,请稍后..." />
</FrameLayout>

//修改只有字母的条目的布局    item_letter.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tv"
    android:layout_width="match_parent"
    android:layout_height="25dp"
    android:background="#D9D9D9"
    android:gravity="center_vertical"
    android:paddingLeft="16dp"
    android:textColor="#505050"
    android:textSize="15sp" />

//修改展示图片,名称,电话前缀的布局  item_lt_country.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="30dp">

    <ImageView
        android:id="@+id/iv"
        android:layout_width="21dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="16dp" />

    <TextView
        android:id="@+id/tvName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="52dp"
        android:textSize="15sp" />

    <TextView
        android:id="@+id/tvPhone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right|center_vertical"
        android:layout_marginRight="16dp"
        android:textSize="15sp" />

</FrameLayout>

//修改最右边字母的布局   item_lt_country_right.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tv"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:textColor="@color/lt_select_country_tv_color"
    android:textSize="16dp" />

结语

这样就ok了,可能自定义的方法比较奇葩(或者说比较懒..),有的人会不习惯

可能有人会说为什么数据不用json,为什么不用pinyin4j,而是手动加上首拼音,这样是为了减少一个解析json的jar包和获取拼音的jar包,减少体积(图片是用的原生加载,不过图片都比较小,差别不大,当然自定义的图片需要控制图片不要过大)

有bug可以直接评论反馈

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值