简介 最近东西写的挺多的,这不又要弄一个类似于京东的地址选择器,然后刚开始我是不愿意自己去写的,这东西真的是浪费时间。但是下班后回到家找了一圈没找到一个合适的,好吧,那我就自己来封装一个呗,反正生命在于coding,是吧~哈哈哈!先看看效果图,不知道是不是大家想要的。区别就是京东是用在一个从下而上的弹窗里面的。
主要功能 1.大致分为三个模块:顶部的Tab模块,中间的移动指示器模块,还有就是下面的list了。 2.支持点击数据后自动跳到下一个Tab 3.支持点击Tab后回到当前Tab的状态 4.还有就是可以随意设置你想要的。 还是来说说怎么用吧。 项目地址:https://github.com/Blincheng/AddressSelector
集成导入(gradle) 1.Add the JitPack repository to your build file .Add it in your root build.gradle at the end of repositories:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2.Add the dependency
dependencies {
compile 'com.github.Blincheng:AddressSelector:v1.0.4'
}
其余继承方式看:https://jitpack.io/#Blincheng/AddressSelector
使用 ##XML直接使用
<com.mic.adressselectorlib.AddressSelector
android:id="@+id/address"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.mic.adressselectorlib.AddressSelector>
##Java中使用
AddressSelector addressSelector = (AddressSelector) findViewById(R.id.address);
##设置Tab数量
addressSelector.setTabAmount(3);
也可以不设置,默认3级。 ##设置数据列表的Itme回调OnItemClickListener
addressSelector.setOnItemClickListener(new OnItemClickListener() {
@Override
public void itemClick(AddressSelector addressSelector, CityInterface city, int tabPosition) {
}
});
##设置Tab的点击事件回调OnTabSelectedListener
addressSelector.setOnTabSelectedListener(new AddressSelector.OnTabSelectedListener() {
@Override
public void onTabSelected(AddressSelector addressSelector, AddressSelector.Tab tab) {
}
@Override
public void onTabReselected(AddressSelector addressSelector, AddressSelector.Tab tab) {
}
});