城市三级列表

添加依赖:

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

布局文件:

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="50dp">
    <TextView
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:text="昵称:"
        />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />
</LinearLayout>
<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="50dp">
    <TextView
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:text="手机号:"
        />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />
</LinearLayout>
<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="50dp">
    <TextView
        android:layout_width="100dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:text="城市:"
        />
    <TextView
        android:id="@+id/text"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:onClick="text"
        />
</LinearLayout>

核心代码:

package test.com.city;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.TextView;
import com.lljjcoder.citypickerview.widget.CityPicker;

public class MainActivity extends AppCompatActivity {

    private TextView text;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        text = (TextView)findViewById(R.id.text);
    }
    public void text(View v){
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        if (imm.isActive()) {
            imm.hideSoftInputFromWindow(v.getWindowToken(),
                    InputMethodManager.HIDE_NOT_ALWAYS);
            selectAddress();//调用CityPicker选取区域
        }
    }
    private void selectAddress() {
        CityPicker cityPicker = new CityPicker.Builder(MainActivity.this)
                .textSize(14)
                .title("地址选择")
                .titleBackgroundColor("#FFFFFF")
               // .titleTextColor("#696969")
                .confirTextColor("#696969")
                .cancelTextColor("#696969")
                .province("江苏省")
                .city("常州市")
                .district("天宁区")
                .textColor(Color.parseColor("#000000"))
                .provinceCyclic(true)
                .cityCyclic(false)
                .districtCyclic(false)
                .visibleItemsCount(7)
                .itemPadding(10)
                .onlyShowProvinceAndCity(false)
                .build();
        cityPicker.show();
        //监听方法,获取选择结果
        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];
                //为TextView赋值
                text.setText(province.trim() + "-" + city.trim() + "-" + district.trim());
            }
        });
    }
}



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要创建一个HTML国家省份城市三级下拉框,你可以按照以下步骤进行操作: 1. 首先,创建一个<select>元素,作为国家的下拉框。例如,你可以使用以下代码创建一个国家的下拉框: ```html <select id="country"> <option value="">请选择国家</option> <option value="中国">中国</option> <option value="美国">美国</option> <!-- 其他国家选项 --> </select> ``` 2. 创建一个省份的下拉框。你可以使用以下代码创建一个省份的下拉框,并根据所选的国家动态加载相应的省份列表: ```html <select id="province" onchange="loadCities()"> <option value="">请选择省份</option> <!-- 省份选项将通过JavaScript动态加载 --> </select> ``` 3. 创建一个城市的下拉框。你可以使用以下代码创建一个城市的下拉框,并根据所选的省份动态加载相应的城市列表: ```html <select id="city"> <option value="">请选择城市</option> <!-- 城市选项将通过JavaScript动态加载 --> </select> ``` 4. 在JavaScript中,你可以使用引用的代码来获取城市列表。根据所选的省份,使用循环(引用和引用)来遍历城市列表,并将城市添加到城市下拉框中。 5. 在页面加载时,你可以使用引用的代码来获取省份下拉框的元素,并根据所选的国家加载相应的省份列表。 总结一下步骤: 1. 创建一个国家的下拉框(<select>元素)。 2. 创建一个省份的下拉框,并根据所选的国家动态加载省份列表。 3. 创建一个城市的下拉框,并根据所选的省份动态加载城市列表。 4. 使用JavaScript来获取城市列表并添加到城市下拉框中。 5. 在页面加载时,获取省份下拉框的元素,并根据所选的国家加载省份列表。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值