十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
public class AddressPickerViewextends RelativeLayout{
企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,成都创新互联公司面向各种领域:咖啡厅设计等网站设计、全网整合营销推广解决方案、网站设计等建站排名服务。
// recyclerView 选中Item 的颜色
private int defaultSelectedColor = Color.parseColor("#3D71FF");
// recyclerView 未选中Item 的颜色
private int defaultUnSelectedColor = Color.parseColor("#2c2c2c");
// 确定字体不可以点击时候的颜色
private int defaultSureUnClickColor = Color.parseColor("#7F7F7F");
// 确定字体可以点击时候的颜色
private int defaultSureCanClickColor = Color.parseColor("#3D71FF");
private ContextmContext;
private int defaultTabCount =3; //tab 的数量
private TabLayoutmTabLayout; // tabLayout
private RecyclerViewmRvList; // 显示数据的RecyclerView
private StringdefaultProvince ="省份"; //显示在上面tab中的省份
private StringdefaultCity ="城市"; //显示在上面tab中的城市
private StringdefaultDistrict ="区县"; //显示在上面tab中的区县
private ListmRvData; // 用来在recyclerview显示的数据
private AddressAdaptermAdapter; // recyclerview 的adapter
private YwpAddressBeanmYwpAddressBean; // 总数据
private YwpAddressBean.AddressItemBeanmSelectProvice; //选中 省份bean
private YwpAddressBean.AddressItemBeanmSelectCity;//选中 城市bean
private YwpAddressBean.AddressItemBeanmSelectDistrict;//选中 区县bean
private int mSelectProvicePosition =0; //选中 省份 位置
private int mSelectCityPosition =0;//选中 城市 位置
private int mSelectDistrictPosition =0;//选中 区县 位置
private OnAddressPickerSureListenermOnAddressPickerSureListener;
public AddressPickerView(Context context) {
super(context);
init(context);
}
public AddressPickerView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
init(context);
}
public AddressPickerView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context);
}
/**
* 初始化
*/
private void init(Context context) {
mContext = context;
mRvData =new ArrayList();
// UI
View rootView =inflate(mContext, R.layout.address_picker_view, this);
// tablayout初始化
mTabLayout = (TabLayout) rootView.findViewById(R.id.tlTabLayout);
mTabLayout.addTab(mTabLayout.newTab().setText(defaultProvince));
mTabLayout.addTab(mTabLayout.newTab().setText(defaultCity));
mTabLayout.addTab(mTabLayout.newTab().setText(defaultDistrict));
mTabLayout.addOnTabSelectedListener(tabSelectedListener);
// recyclerview adapter的绑定
mRvList = (RecyclerView) rootView.findViewById(R.id.rvList);
mRvList.setLayoutManager(new LinearLayoutManager(context));
mAdapter =new AddressAdapter();
mRvList.setAdapter(mAdapter);
// 初始化默认的本地数据 也提供了方法接收外面数据
mRvList.post(new Runnable() {
@Override
public void run() {
initData();
}
});
}
/**
* 初始化数据
* 拿assets下的json文件
*/
private void initData() {
StringBuilder jsonSB =new StringBuilder();
try {
BufferedReader addressJsonStream =new BufferedReader(new InputStreamReader(mContext.getAssets().open("address.json")));
String line;
while ((line = addressJsonStream.readLine()) !=null) {
jsonSB.append(line);
}
}catch (IOException e) {
e.printStackTrace();
}
// 将数据转换为对象
mYwpAddressBean =new Gson().fromJson(jsonSB.toString(), YwpAddressBean.class);
if (mYwpAddressBean !=null) {
mRvData.clear();
mRvData.addAll(mYwpAddressBean.getProvince());
mAdapter.notifyDataSetChanged();
}
}
/**
* 开放给外部传入数据
* 暂时就用这个Bean模型,如果数据不一致就需要各自根据数据来生成这个bean了
*/
public void initData(YwpAddressBean bean) {
if (bean !=null) {
mSelectDistrict =null;
mSelectCity =null;
mSelectProvice =null;
mTabLayout.getTabAt(0).select();
mYwpAddressBean = bean;
mRvData.clear();
mRvData.addAll(mYwpAddressBean.getProvince());
mAdapter.notifyDataSetChanged();
}
}
//点确定
private void sure() {
if (mSelectProvice !=null
mSelectCity !=null
mSelectDistrict !=null) {
// 回调接口
if (mOnAddressPickerSureListener !=null) {
mOnAddressPickerSureListener.onSureClick(mSelectProvice.getN(), mSelectCity.getN(), mSelectDistrict.getN());
}
}else {
Toast.makeText(mContext, "地址还没有选完整哦", Toast.LENGTH_SHORT).show();
}
}
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
// mYwpAddressBean = null;
}
/**
* TabLayout 切换事件
*/
TabLayout.OnTabSelectedListenertabSelectedListener =new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
mRvData.clear();
switch (tab.getPosition()) {
case 0:
mRvData.addAll(mYwpAddressBean.getProvince());
mAdapter.notifyDataSetChanged();
// 滚动到这个位置
mRvList.smoothScrollToPosition(mSelectProvicePosition);
break;
case 1:
// 点到城市的时候要判断有没有选择省份
if (mSelectProvice !=null) {
for (YwpAddressBean.AddressItemBean itemBean :mYwpAddressBean.getCity()) {
if (itemBean.getP().equals(mSelectProvice.getI()))
mRvData.add(itemBean);
}
}else {
Toast.makeText(mContext, "请您先选择省份", Toast.LENGTH_SHORT).show();
}
mAdapter.notifyDataSetChanged();
// 滚动到这个位置
mRvList.smoothScrollToPosition(mSelectCityPosition);
break;
case 2:
// 点到区的时候要判断有没有选择省份与城市
if (mSelectProvice !=null mSelectCity !=null) {
for (YwpAddressBean.AddressItemBean itemBean :mYwpAddressBean.getDistrict()) {
if (itemBean.getP().equals(mSelectCity.getI()))
mRvData.add(itemBean);
}
}else {
Toast.makeText(mContext, "请您先选择省份与城市", Toast.LENGTH_SHORT).show();
}
mAdapter.notifyDataSetChanged();
// 滚动到这个位置
mRvList.smoothScrollToPosition(mSelectDistrictPosition);
break;
}
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
};
/**
* 下面显示数据的adapter
*/
class AddressAdapterextends RecyclerView.Adapter {
@Override
public ViewHolderonCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_address_text, parent, false));
}
@Override
public void onBindViewHolder(final ViewHolder holder, final int position) {
final int tabSelectPosition =mTabLayout.getSelectedTabPosition();
holder.mTitle.setText(mRvData.get(position).getN());
holder.mTitle.setTextColor(defaultUnSelectedColor);
// 设置选中效果的颜色
switch (tabSelectPosition) {
case 0:
if (mRvData.get(position) !=null
mSelectProvice !=null
mRvData.get(position).getI().equals(mSelectProvice.getI())) {
holder.mTitle.setTextColor(defaultSelectedColor);
}
break;
case 1:
if (mRvData.get(position) !=null
mSelectCity !=null
mRvData.get(position).getI().equals(mSelectCity.getI())) {
holder.mTitle.setTextColor(defaultSelectedColor);
}
break;
case 2:
if (mRvData.get(position) !=null
mSelectDistrict !=null
mRvData.get(position).getI().equals(mSelectDistrict.getI())) {
holder.mTitle.setTextColor(defaultSelectedColor);
}
break;
}
// 设置点击之后的事件
holder.mTitle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// 点击 分类别
switch (tabSelectPosition) {
case 0:
mSelectProvice =mRvData.get(position);
// 清空后面两个的数据
mSelectCity =null;
mSelectDistrict =null;
mSelectCityPosition =0;
mSelectDistrictPosition =0;
mTabLayout.getTabAt(1).setText(defaultCity);
mTabLayout.getTabAt(2).setText(defaultDistrict);
// 设置这个对应的标题
mTabLayout.getTabAt(0).setText(mSelectProvice.getN());
// 跳到下一个选择
mTabLayout.getTabAt(1).select();
mSelectProvicePosition =position;
break;
case 1:
mSelectCity =mRvData.get(position);
// 清空后面一个的数据
mSelectDistrict =null;
mSelectDistrictPosition =0;
mTabLayout.getTabAt(2).setText(defaultDistrict);
// 设置这个对应的标题
mTabLayout.getTabAt(1).setText(mSelectCity.getN());
// 跳到下一个选择
mTabLayout.getTabAt(2).select();
mSelectCityPosition =position;
break;
case 2:
mSelectDistrict =mRvData.get(position);
// 没了,选完了,这个时候可以点确定了
mTabLayout.getTabAt(2).setText(mSelectDistrict.getN());
notifyDataSetChanged();
mSelectDistrictPosition =position;
sure();
break;
}
}
});
}
@Override
public int getItemCount() {
return mRvData.size();
}
class ViewHolderextends RecyclerView.ViewHolder {
TextViewmTitle;
ViewHolder(View itemView) {
super(itemView);
mTitle = (TextView) itemView.findViewById(R.id.itemTvTitle);
}
}
}
/**
* 点确定回调这个接口
*/
public interface OnAddressPickerSureListener {
void onSureClick(String proviceName,String cityName,String earaName);
}
public void setOnAddressPickerSure(OnAddressPickerSureListener listener) {
this.mOnAddressPickerSureListener = listener;
}
京东换ip的方法步骤如下:
1、打开京东选择产品和需要的型号然后点击购买。
2、点击上方的地址然后选择好收货地址。
3、如果需要添加地址则点下方新建地址即可。
备注:如果已经下单或者已经处于发货状态,则需要用户和商家进行沟通,看看是否可以直接修改地址,或者选择退单重新购买,这个无法自己来进行修改的,下单之后就是商家进行处理了。
android 网页是可以直接打开京东的app商品页的,只不过页面不好浏览建议还是下载app或者直接在微信里面打开购物,默认的就是京东
因为京东登录需要手机号验证。
更换手机号京东登录解决方式:
1.打开网页进入京东,点击客户服务选择在线客服。
2.然后会进入在线客服网页。
3.在页面中点击账户服务。
4.接下来就会谈弹出于京东的客服沟通的框框。
5.你只要告诉他你要解绑手机号码就行,然后等待回复。
6.解绑手机号码需要账户历史第一笔完成的订单号(包括该订单的收货人姓名,地址和电话)以及之前绑定的手机号。发过去就行。7.然后等电话就行,保持电话通畅。一般都是在下午打电话的。
因为京东只有一个账号,不能在多台设备同时登陆。
京东(股票代码:JD),中国自营式电商企业,创始人刘强东担任京东集团董事局主席兼首席执行官。旗下设有京东商城、京东金融、拍拍网、京东智能、O2O及海外事业部等。2013年正式获得虚拟运营商牌照。2014年5月在美国纳斯达克证券交易所正式挂牌上市。2015年7月,京东入选纳斯达克100指数和纳斯达克100平均加权指数。2016年6月与沃尔玛达成深度战略合作,1号店并入京东。2017年1月4日,中国银联宣布京东金融旗下支付公司正式成为银联收单成员机构。2017年4月25日,京东集团宣布正式组建京东物流子集团。2017年8月3日,2017年“中国互联网企业100强”榜单发布,京东排名第四位。2019年7月,发布2019《财富》世界500强:位列139位。2021年《财富》世界500强排名第59位。
开通京东闪付后需要将京东闪付账号设置为默认应用。需要在设备系统中将京东闪付账号设置为优先支付方式方可进行交易。安卓手机要在系统NFC设置中去操作设置。安卓手机只能在线下商铺收银柜台有银联云闪付标识的POS机使用“京东闪付“进行消费。点亮手机屏幕,贴近商家的pos机即可进行消费扣款(部分商家需要在POS机输入京东6位支付密码)。只有使用Apple
Pay使用京东闪付才能在线上进行支付。
安卓系统:设置京东闪付为默认扣款应用
打开在系统设置-NFC设置,将默认钱包选择成HCE默认钱包;
点击触碰付款设置,在这里可以查看到京东闪付入口,设置京东闪付为优先支付方式;