二级联动

二级联动代码实现

 

arrays.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="province">
        <item>全国</item>
        <item>北京</item>
        <item>天津</item>
        <item>河北</item>
        <item>山西</item>
        <item>内蒙古</item>
        <item>辽宁</item>
        <item>吉林</item>
        <item>黑龙江</item>
        <item>上海</item>
        <item>江苏</item>
        <item>浙江</item>
        <item>安徽</item>
        <item>福建</item>
        <item>江西</item>
        <item>山东</item>
        <item>河南</item>
        <item>湖北</item>
        <item>湖南</item>
        <item>广东</item>
        <item>广西</item>
        <item>海南</item>
        <item>重庆</item>
        <item>四川</item>
        <item>贵州</item>
        <item>云南</item>
        <item>西藏</item>
        <item>陕西</item>
        <item>甘肃</item>
        <item>青海</item>
        <item>宁夏</item>
        <item>新疆</item>
        <item>台湾</item>
        <item>香港</item>
        <item>澳门</item>
    </string-array>
    <string-array name="def">
        <item>-城市-</item>
    </string-array>
    <string-array name="北京">
        <item>北京</item>
        <item>东城</item>
        <item>西城</item>
        <item>朝阳</item>
        <item>丰台</item>
        <item>石景山</item>
        <item>海淀</item>
        <item>门头沟</item>
        <item>房山</item>
        <item>通州</item>
        <item>顺义</item>
        <item>昌平</item>
        <item>大兴</item>
        <item>平谷</item>
        <item>怀柔</item>
        <item>密云</item>
        <item>延庆</item>
    </string-array>
    <string-array name="天津">
        <item>-城市-</item>
        <item>和平</item>
        <item>河东</item>
        <item>河西</item>
        <item>南开</item>
        <item>河北</item>
        <item>红桥</item>
        <item>滨海新区</item>
        <item>东丽</item>
        <item>西青</item>
        <item>津南</item>
        <item>北辰</item>
        <item>宁河</item>
        <item>武清</item>
        <item>静海</item>
        <item>宝坻</item>
        <item>蓟县</item>
    </string-array>
    <string-array name="河北">
        <item>-城市-</item>
        <item>石家庄</item>
        <item>唐山</item>
        <item>秦皇岛</item>
        <item>邯郸</item>
        <item>邢台</item>
        <item>保定</item>
        <item>张家口</item>
        <item>承德</item>
        <item>沧州</item>
        <item>廊坊</item>
        <item>衡水</item>
    </string-array>
    <string-array name="山西">
        <item>-城市-</item>
        <item>太原</item>
        <item>大同</item>
        <item>阳泉</item>
        <item>长治</item>
        <item>晋城</item>
        <item>朔州</item>
        <item>晋中</item>
        <item>运城</item>
        <item>忻州</item>
        <item>临汾</item>
        <item>吕梁</item>
    </string-array>
    <string-array name="内蒙古">
        <item>-城市-</item>
        <item>呼和浩特</item>
        <item>包头</item>
        <item>乌海</item>
        <item>赤峰</item>
        <item>通辽</item>
        <item>鄂尔多斯</item>
        <item>呼伦贝尔</item>
        <item>巴彦淖尔</item>
        <item>乌兰察布</item>
        <item>兴安</item>
        <item>锡林郭勒</item>
        <item>阿拉善</item>
    </string-array>
    <string-array name="辽宁">
        <item>-城市-</item>
        <item>沈阳</item>
        <item>大连</item>
        <item>鞍山</item>
        <item>抚顺</item>
        <item>本溪</item>
        <item>丹东</item>
        <item>锦州</item>
        <item>营口</item>
        <item>阜新</item>
        <item>辽阳</item>
        <item>盘锦</item>
        <item>铁岭</item>
        <item>朝阳</item>
        <item>葫芦岛</item>
    </string-array>
    <string-array name="吉林">
        <item>-城市-</item>
        <item>长春</item>
        <item>吉林</item>
        <item>四平</item>
        <item>辽源</item>
        <item>通化</item>
        <item>白山</item>
        <item>松原</item>
        <item>白城</item>
        <item>延边</item>
    </string-array>
    <string-array name="黑龙江">
        <item>-城市-</item>
        <item>哈尔滨</item>
        <item>齐齐哈尔</item>
        <item>鸡西</item>
        <item>鹤岗</item>
        <item>双鸭山</item>
        <item>大庆</item>
        <item>伊春</item>
        <item>佳木斯</item>
        <item>七台河</item>
        <item>牡丹江</item>
        <item>黑河</item>
        <item>绥化</item>
        <item>大兴安岭</item>
    </string-array>
    <string-array name="上海">
        <item>-城市-</item>
        <item>黄浦</item>
        <item>卢湾</item>
        <item>徐汇</item>
        <item>长宁</item>
        <item>静安</item>
        <item>普陀</item>
        <item>闸北</item>
        <item>虹口</item>
        <item>杨浦</item>
        <item>闵行</item>
        <item>宝山</item>
        <item>嘉定</item>
        <item>浦东新区</item>
        <item>金山</item>
        <item>松江</item>
        <item>奉贤</item>
        <item>青浦</item>
        <item>崇明</item>
    </string-array>
    <string-array name="江苏">
        <item>-城市-</item>
        <item>南京</item>
        <item>无锡</item>
        <item>徐州</item>
        <item>常州</item>
        <item>苏州</item>
        <item>南通</item>
        <item>连云港</item>
        <item>淮安</item>
        <item>盐城</item>
        <item>扬州</item>
        <item>镇江</item>
        <item>泰州</item>
        <item>宿迁</item>
    </string-array>
    <string-array name="浙江">
        <item>-城市-</item>
        <item>杭州</item>
        <item>宁波</item>
        <item>温州</item>
        <item>嘉兴</item>
        <item>湖州</item>
        <item>绍兴</item>
        <item>金华</item>
        <item>衢州</item>
        <item>舟山</item>
        <item>台州</item>
        <item>丽水</item>
    </string-array>
    <string-array name="安徽">
        <item>-城市-</item>
        <item>合肥</item>
        <item>芜湖</item>
        <item>蚌埠</item>
        <item>淮南</item>
        <item>马鞍山</item>
        <item>淮北</item>
        <item>铜陵</item>
        <item>安庆</item>
        <item>黄山</item>
        <item>滁州</item>
        <item>阜阳</item>
        <item>宿州</item>
        <item>六安</item>
        <item>亳州</item>
        <item>池州</item>
        <item>宣城</item>
    </string-array>
    <string-array name="福建">
        <item>-城市-</item>
        <item>福州</item>
        <item>厦门</item>
        <item>莆田</item>
        <item>三明</item>
        <item>泉州</item>
        <item>漳州</item>
        <item>南平</item>
        <item>龙岩</item>
        <item>宁德</item>
    </string-array>
    <string-array name="江西">
        <item>-城市-</item>
        <item>南昌</item>
        <item>景德镇</item>
        <item>萍乡</item>
        <item>九江</item>
        <item>新余</item>
        <item>鹰潭</item>
        <item>赣州</item>
        <item>吉安</item>
        <item>宜春</item>
        <item>抚州</item>
        <item>上饶</item>
    </string-array>
    <string-array name="山东">
        <item>-城市-</item>
        <item>济南</item>
        <item>青岛</item>
        <item>淄博</item>
        <item>枣庄</item>
        <item>东营</item>
        <item>烟台</item>
        <item>潍坊</item>
        <item>济宁</item>
        <item>泰安</item>
        <item>威海</item>
        <item>日照</item>
        <item>莱芜</item>
        <item>临沂</item>
        <item>德州</item>
        <item>聊城</item>
        <item>滨州</item>
        <item>菏泽</item>
    </string-array>
    <string-array name="河南">
        <item>-城市-</item>
        <item>郑州</item>
        <item>开封</item>
        <item>洛阳</item>
        <item>平顶山</item>
        <item>安阳</item>
        <item>鹤壁</item>
        <item>新乡</item>
        <item>焦作</item>
        <item>濮阳</item>
        <item>许昌</item>
        <item>漯河</item>
        <item>三门峡</item>
        <item>南阳</item>
        <item>商丘</item>
        <item>信阳</item>
        <item>周口</item>
        <item>驻马店</item>
        <item>济源</item>
    </string-array>
    <string-array name="湖北">
        <item>-城市-</item>
        <item>武汉</item>
        <item>黄石</item>
        <item>十堰</item>
        <item>宜昌</item>
        <item>襄阳</item>
        <item>鄂州</item>
        <item>荆门</item>
        <item>孝感</item>
        <item>荆州</item>
        <item>黄冈</item>
        <item>咸宁</item>
        <item>随州</item>
        <item>恩施</item>
        <item>仙桃</item>
        <item>潜江</item>
        <item>天门</item>
        <item>神农架</item>
    </string-array>
    <string-array name="湖南">
        <item>-城市-</item>
        <item>长沙</item>
        <item>株洲</item>
        <item>湘潭</item>
        <item>衡阳</item>
        <item>邵阳</item>
        <item>岳阳</item>
        <item>常德</item>
        <item>张家界</item>
        <item>益阳</item>
        <item>郴州</item>
        <item>永州</item>
        <item>怀化</item>
        <item>娄底</item>
        <item>湘西</item>
    </string-array>
    <string-array name="广东">
        <item>-城市-</item>
        <item>广州</item>
        <item>韶关</item>
        <item>深圳</item>
        <item>珠海</item>
        <item>汕头</item>
        <item>佛山</item>
        <item>江门</item>
        <item>湛江</item>
        <item>茂名</item>
        <item>肇庆</item>
        <item>惠州</item>
        <item>梅州</item>
        <item>汕尾</item>
        <item>河源</item>
        <item>阳江</item>
        <item>清远</item>
        <item>东莞</item>
        <item>中山</item>
        <item>潮州</item>
        <item>揭阳</item>
        <item>云浮</item>
    </string-array>
    <string-array name="广西">
        <item>-城市-</item>
        <item>南宁</item>
        <item>柳州</item>
        <item>桂林</item>
        <item>梧州</item>
        <item>北海</item>
        <item>防城港</item>
        <item>钦州</item>
        <item>贵港</item>
        <item>玉林</item>
        <item>百色</item>
        <item>贺州</item>
        <item>河池</item>
        <item>来宾</item>
        <item>崇左</item>
    </string-array>
    <string-array name="海南">
        <item>-城市-</item>
        <item>海口</item>
        <item>三亚</item>
        <item>三沙</item>
        <item>五指山</item>
        <item>琼海</item>
        <item>儋州</item>
        <item>文昌</item>
        <item>万宁</item>
        <item>东方</item>
        <item>定安</item>
        <item>屯昌</item>
        <item>澄迈</item>
        <item>临高</item>
        <item>白沙</item>
        <item>昌江</item>
        <item>乐东</item>
        <item>陵水</item>
        <item>保亭</item>
        <item>琼中</item>
    </string-array>
    <string-array name="重庆">
        <item>-城市-</item>
        <item>万州</item>
        <item>涪陵</item>
        <item>渝中</item>
        <item>大渡口</item>
        <item>江北</item>
        <item>沙坪坝</item>
        <item>九龙坡</item>
        <item>南岸</item>
        <item>北碚</item>
        <item>两江新区</item>
        <item>万盛</item>
        <item>双桥</item>
        <item>渝北</item>
        <item>巴南</item>
        <item>长寿</item>
        <item>綦江</item>
        <item>潼南</item>
        <item>铜梁</item>
        <item>大足</item>
        <item>荣昌</item>
        <item>璧山</item>
        <item>梁平</item>
        <item>城口</item>
        <item>丰都</item>
        <item>垫江</item>
        <item>武隆</item>
        <item>忠县</item>
        <item>开县</item>
        <item>云阳</item>
        <item>奉节</item>
        <item>巫山</item>
        <item>巫溪</item>
        <item>黔江</item>
        <item>石柱</item>
        <item>秀山</item>
        <item>酉阳</item>
        <item>彭水</item>
        <item>江津</item>
        <item>合川</item>
        <item>永川</item>
        <item>南川</item>
    </string-array>
    <string-array name="四川">
        <item>-城市-</item>
        <item>成都</item>
        <item>自贡</item>
        <item>攀枝花</item>
        <item>泸州</item>
        <item>德阳</item>
        <item>绵阳</item>
        <item>广元</item>
        <item>遂宁</item>
        <item>内江</item>
        <item>乐山</item>
        <item>南充</item>
        <item>眉山</item>
        <item>宜宾</item>
        <item>广安</item>
        <item>达州</item>
        <item>雅安</item>
        <item>巴中</item>
        <item>资阳</item>
        <item>阿坝</item>
        <item>甘孜</item>
        <item>凉山</item>
    </string-array>
    <string-array name="贵州">
        <item>-城市-</item>
        <item>贵阳</item>
        <item>六盘水</item>
        <item>遵义</item>
        <item>安顺</item>
        <item>铜仁</item>
        <item>黔西南</item>
        <item>毕节</item>
        <item>黔东南</item>
        <item>黔南</item>
    </string-array>
    <string-array name="云南">
        <item>-城市-</item>
        <item>昆明</item>
        <item>曲靖</item>
        <item>玉溪</item>
        <item>保山</item>
        <item>昭通</item>
        <item>丽江</item>
        <item>普洱</item>
        <item>临沧</item>
        <item>楚雄</item>
        <item>红河</item>
        <item>文山</item>
        <item>西双版纳</item>
        <item>大理</item>
        <item>德宏</item>
        <item>怒江</item>
        <item>迪庆</item>
    </string-array>
    <string-array name="西藏">
        <item>-城市-</item>
        <item>拉萨</item>
        <item>昌都</item>
        <item>山南</item>
        <item>日喀则</item>
        <item>那曲</item>
        <item>阿里</item>
        <item>林芝</item>
    </string-array>
    <string-array name="陕西">
        <item>-城市-</item>
        <item>西安</item>
        <item>铜川</item>
        <item>宝鸡</item>
        <item>咸阳</item>
        <item>渭南</item>
        <item>延安</item>
        <item>汉中</item>
        <item>榆林</item>
        <item>安康</item>
        <item>商洛</item>
    </string-array>
    <string-array name="甘肃">
        <item>-城市-</item>
        <item>兰州市</item>
        <item>嘉峪关</item>
        <item>金昌</item>
        <item>白银</item>
        <item>天水</item>
        <item>武威</item>
        <item>张掖</item>
        <item>平凉</item>
        <item>酒泉</item>
        <item>庆阳</item>
        <item>定西</item>
        <item>陇南</item>
        <item>临夏</item>
        <item>甘南</item>
    </string-array>
    <string-array name="青海">
        <item>-城市-</item>
        <item>西宁</item>
        <item>海东</item>
        <item>海北</item>
        <item>黄南</item>
        <item>海南</item>
        <item>果洛</item>
        <item>玉树</item>
        <item>海西</item>
    </string-array>
    <string-array name="宁夏">
        <item>-城市-</item>
        <item>银川</item>
        <item>石嘴山</item>
        <item>吴忠</item>
        <item>固原</item>
        <item>中卫</item>
    </string-array>
    <string-array name="新疆">
        <item>-城市-</item>
        <item>乌鲁木齐</item>
        <item>克拉玛依</item>
        <item>吐鲁番</item>
        <item>哈密</item>
        <item>昌吉</item>
        <item>博尔塔拉</item>
        <item>巴音郭楞</item>
        <item>阿克苏</item>
        <item>克孜勒苏</item>
        <item>喀什</item>
        <item>和田</item>
        <item>伊犁</item>
        <item>塔城</item>
        <item>阿勒泰</item>
        <item>石河子</item>
        <item>阿拉尔</item>
        <item>图木舒克</item>
        <item>五家渠</item>
        <item>北屯</item>
    </string-array>
    <string-array name="台湾">
        <item>-城市-</item>
        <item>台北市</item>
        <item>高雄市</item>
        <item>基隆市</item>
        <item>台中市</item>
        <item>台南市</item>
        <item>新竹市</item>
        <item>嘉义市</item>
        <item>台北县</item>
        <item>宜兰县</item>
        <item>桃园县</item>
        <item>新竹县</item>
        <item>苗栗县</item>
        <item>台中县</item>
        <item>彰化县</item>
        <item>南投县</item>
        <item>云林县</item>
        <item>嘉义县</item>
        <item>台南县</item>
        <item>高雄县</item>
        <item>屏东县</item>
        <item>台东县</item>
        <item>花莲县</item>
        <item>澎湖县</item>
    </string-array>
    <string-array name="香港">
        <item>-城市-</item>
        <item>中西区</item>
        <item>东区</item>
        <item>九龙城区</item>
        <item>观塘区</item>
        <item>南区</item>
        <item>深水埗区</item>
        <item>黄大仙区</item>
        <item>湾仔区</item>
        <item>油尖旺区</item>
        <item>离岛区</item>
        <item>葵青区</item>
        <item>北区</item>
        <item>西贡区</item>
        <item>沙田区</item>
        <item>屯门区</item>
        <item>大埔区</item>
        <item>荃湾区</item>
        <item>元朗区</item>
    </string-array>
    <string-array name="澳门">
        <item>-城市-</item>
        <item>花地玛堂区</item>
        <item>圣安多尼堂区</item>
        <item>大堂区</item>
        <item>望德堂区</item>
        <item>风顺堂区</item>
        <item>氹仔</item>
        <item>路环</item>
    </string-array>
</resources>

点击变颜色:

  <item android:color="@android:color/darker_gray" android:state_checked="false" /> <item android:color="@color/c_1E7FFF" android:state_checked="true" /> 

Activity布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/root_ll"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.think.province.demo.PopupDemoActivity">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/tv1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:paddingBottom="5dp"
            android:paddingTop="5dp"
            android:text="全国" />

        <TextView
            android:id="@+id/tv2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:paddingBottom="5dp"
            android:paddingTop="5dp"
            android:text="科室" />

    </LinearLayout>

</LinearLayout>

Activity:

 

public class PopupDemoActivity extends AppCompatActivity implements View.OnClickListener {

    protected TextView tv1;
    protected TextView tv2;
    protected LinearLayout rootLl;
    private PopupWindow popupWindow;
    private String[] provinces;
    private String TAG = this.getClass().getSimpleName();
    private RadioGroup radioGroup;
    private ArrayAdapter cityadapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.setContentView(R.layout.activity_popup_demo);
        initView();
        provinces = getResources().getStringArray(R.array.province);
        /*for (int i = 0; i < provinces.length; i++) {
            Log.i(TAG, "onCreate: ***--->" + provinces[i]);
        }*/
    }

    @Override
    public void onClick(View view) {
        if (view.getId() == R.id.tv1) {
            showPopup();
        } else if (view.getId() == R.id.tv2) {

        }
    }

    private void showPopup() {
        if (null == popupWindow) {
            popupWindow = new PopupWindow(this);
            popupWindow.setWidth(rootLl.getWidth());
            popupWindow.setHeight((rootLl.getHeight() / 3) * 2);
            View popView = View.inflate(this, R.layout.layout_pop, null);
            radioGroup = popView.findViewById(R.id.rg);
            final ListView listView = popView.findViewById(R.id.lv);
            radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(RadioGroup group, int checkedId) {
                    String pro = provinces[checkedId];
                    Log.i(TAG, "onCheckedChanged: ***" + pro);
                    cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.def,
                            R.layout.spinner_checked_text);
                    if (pro.equals("北京")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.北京,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("天津")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.天津,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("河北")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.河北,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("山西")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.山西,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("内蒙古")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.内蒙古,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("辽宁")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.辽宁,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("吉林")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.吉林,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("黑龙江")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.黑龙江,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("上海")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.上海,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("江苏")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.江苏,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("浙江")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.浙江,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("安徽")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.安徽,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("福建")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.福建,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("江西")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.江西,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("山东")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.山东,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("河南")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.河南,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("湖北")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.湖北,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("湖南")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.湖南,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("广东")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.广东,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("广西")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.广西,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("海南")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.海南,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("重庆")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.重庆,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("四川")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.四川,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("贵州")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.贵州,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("云南")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.云南,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("西藏")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.西藏,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("陕西")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.陕西,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("甘肃")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.甘肃,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("青海")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.青海,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("宁夏")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.宁夏,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("新疆")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.新疆,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("台湾")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.台湾,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("香港")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.香港,
                                R.layout.spinner_checked_text);
                    } else if (pro.equals("澳门")) {
                        cityadapter = ArrayAdapter.createFromResource(getApplicationContext(), R.array.澳门,
                                R.layout.spinner_checked_text);
                    }

                    listView.setAdapter(cityadapter);
                }
            });
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    String item = (String) cityadapter.getItem(position);
                    Toast.makeText(PopupDemoActivity.this, item, Toast.LENGTH_SHORT).show();
                    popupWindow.dismiss();
                }
            });
            ViewGroup.LayoutParams layoutParams = radioGroup.getLayoutParams();
            layoutParams.width = RadioGroup.LayoutParams.MATCH_PARENT;
            //12dp---->转换成像素
            int dpValue = 12;
            float scale = getResources().getDisplayMetrics().density;
            int pxValue = (int) (dpValue * scale + 0.5f);
            int top = pxValue;
            int bottom = pxValue;
            for (int i = 0; i < provinces.length; i++) {
                RadioButton radioButton = new RadioButton(this);
                radioButton.setId(i);
                radioButton.setChecked(false);
                radioButton.setText(provinces[i]);
                radioButton.setTextColor(getResources().getColorStateList(R.color.rb_c_sc));
                radioButton.setButtonDrawable(new ColorDrawable(Color.TRANSPARENT));
                radioButton.setBackgroundResource(R.drawable.bg_rb_d_sc);
                radioButton.setLayoutParams(layoutParams);
                radioButton.setPadding(0, top, 0, bottom);
                radioButton.setGravity(Gravity.CENTER);
                radioGroup.addView(radioButton);
            }
            popupWindow.setContentView(popView);
            popupWindow.setOutsideTouchable(true);
            popupWindow.setBackgroundDrawable(new ColorDrawable(Color.WHITE));

            RadioButton rb = (RadioButton) radioGroup.getChildAt(0);
            rb.setChecked(true);
        }


        popupWindow.showAsDropDown(tv1);
    }

    private void initView() {
        tv1 = (TextView) findViewById(R.id.tv1);
        tv1.setOnClickListener(PopupDemoActivity.this);
        tv2 = (TextView) findViewById(R.id.tv2);
        tv2.setOnClickListener(PopupDemoActivity.this);
        rootLl = (LinearLayout) findViewById(R.id.root_ll);
    }
}

 

layout_pop:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="horizontal">

    <ScrollView
        android:scrollbars="none"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1">

        <RadioGroup
            android:id="@+id/rg"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical">

        </RadioGroup>
    </ScrollView>

    <ListView
        android:layout_marginLeft="20dp"
        android:id="@+id/lv"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1.5">

    </ListView>

</LinearLayout>

 

posted @ 2018-01-12 09:35  钱大少丶  阅读(185)  评论(0编辑  收藏  举报