2018-07-26

作者: Android_Life | 来源:发表于2018-07-26 13:02 被阅读0次

Android 省市区三级联动  滚轮效果



1,显示的效果图


2. 首先导入依赖



//3.0依赖 

compile 'liji.library.dev:citypickerview:1.1.0'

//3.1.2 依赖

implementation'liji.library.dev:citypickerview:1.1.0'


3.下面开始代码编写

xml布局文件


<LinearLayout

    android:id="@+id/mGe_DiQu"

    android:gravity="center"

    android:orientation="horizontal"

    android:layout_width="match_parent"

    android:layout_height="40dp">

<TextView

    android:textSize="15dp"

    android:text="地区"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content" />

<TextView

    android:id="@+id/mGe_HeBei"

    android:layout_marginLeft="180dp"

    android:textSize="15dp"

    android:text="河北省"

    android:layout_width="150dp"

    android:layout_height="wrap_content" />

</LinearLayout>

4.ManinActivity代码

package com.example.yu.jiuyuedemos.ui.activity.mine;

import butterknife.ButterKnife;

import butterknife.OnClick;

public class XinXiActivityextends AppCompatActivity {

private GeHeBei mGeHeBei;

private CityPicker  cityPicker;//城市选择器

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_xin_xi);

initView();

}

private void initView() {

adresss = (TextView) findViewById(R.id.adresss);

adresss.setOnClickListener(new View.OnClickListener() {

@Override

        public void onClick(View v) {

initCityPicker();

cityPicker.show();

}

});

}

//城市选择器

    public void initCityPicker() {

//滚轮文字的大小

//滚轮文字的颜色

//省份滚轮是否循环显示

//城市滚轮是否循环显示

//地区(县)滚轮是否循环显示

//滚轮显示的item个数

//滚轮item间距

        cityPicker =new CityPicker.Builder(XinXiActivity.this)

.textSize(20)//滚轮文字的大小

                .title("地址选择")

.backgroundPop(0xa0000000)

.titleBackgroundColor("#0CB6CA")

.titleTextColor("#000000")

.backgroundPop(0xa0000000)

.confirTextColor("#000000")

.cancelTextColor("#000000")

.province("xx省")

.city("xx市")

.district("xx区")

.textColor(Color.parseColor("#000000"))//滚轮文字的颜色

                .provinceCyclic(true)//省份滚轮是否循环显示

                .cityCyclic(false)//城市滚轮是否循环显示

                .districtCyclic(false)//地区(县)滚轮是否循环显示

                .visibleItemsCount(7)//滚轮显示的item个数

                .itemPadding(10)//滚轮item间距

                .onlyShowProvinceAndCity(false)

.build();

//监听方法,获取选择结果

        cityPicker.setOnCityItemClickListener(new CityPicker.OnCityItemClickListener() {

@Override

            public void onSelected(String... citySelected) {

//省份

                String province = citySelected[0];

//城市

                String city = citySelected[1];

//区县(如果设定了两级联动,那么该项返回空)

                String district = citySelected[2];

//邮编

                String code = citySelected[3];

mGeHeBei.setText(province + city + district);

Log.e("aaaaaaaaaaaaaa",mGeHeBei.getText().toString());

}

@Override

            public void onCancel() {

}

});

}

}

代码如上

摘自github地址:crazyandcoder/citypicker

方法说明

1.textSize(滚轮文字的大小,int 类型,默认为18)

2.title(选择器标题,默认为“选择地区”)

3.backgroundPop(背景,默认为半透明,16位进制颜色代码,带alpha值,如0xa0ffffff)

4.titleBackgroundColor(标题栏背景,默认为灰色,#C7C7C7)

5.confirTextColor(确认按钮字体颜色,默认为系统的colorPrimary颜色值)

6.cancelTextColor(取消按钮字体颜色,默认为系统的colorPrimary颜色值)

7.province(默认的显示省份,显示选择器后直接定位的item位置)

8.city(默认的显示市,显示选择器后直接定位的item位置)

9.district(默认的显示区,显示选择器后直接定位的item位置)

10.textColor(滚轮文字的颜色 ,int 类型,默认为0xFF585858)

11.provinceCyclic(省份的滚轮是否循环滚动)

12.cityCyclic(市的滚轮是否循环滚动)

13.districtCyclic(区的滚轮是否循环滚动)

14,visibleItemsCount(滚轮显示的item个数,int 类型,默认为5个),15.itemPadding(滚轮item间距,默认为5dp)

15.onlyShowProvinceAndCity(boolean flag)(是否只显示省份和市的两级联动,去掉区或者县)

16.titleTextColor(标题文字颜色,默认为 #E9E9E9)


相关文章

网友评论

    本文标题:2018-07-26

    本文链接:https://www.haomeiwen.com/subject/xsevmftx.html