Commit f9add619 authored by jianglx's avatar jianglx

改版会员中心

parent dff29fb3
......@@ -8,8 +8,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
flavorDimensions "default"
versionCode 152
versionName "1.5.2"
versionCode 153
versionName "1.5.3"
multiDexEnabled true
......
......@@ -452,8 +452,8 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements Observa
}
if (DateUtils.formatDate20(begTime) > DateUtils.formatDate20("19:30")) { //如果当前时间大于 19:30,日期往后加一,时间改成早上8:00
begDate = MyUtils.getFetureDate(1) + " " + "08:00";
endDate = MyUtils.getFetureDate(3) + " " + "08:00";
begDate = MyUtils.getFetureDate(1) + " " + "08:30";
endDate = MyUtils.getFetureDate(3) + " " + "08:30";
} else {
begDate = MyUtils.getFetureDate(0) + " " + begTime;
endDate = MyUtils.getFetureDate(2) + " " + begTime;
......
......@@ -826,6 +826,7 @@
<RelativeLayout
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_15"
......
......@@ -458,6 +458,7 @@
</RelativeLayout>
<RelativeLayout
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_15"
......
......@@ -83,7 +83,7 @@ public class CalendarActivity extends BaseStatusActivity<CalendarPresenter> {
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
context = this;
MAX_SPAN = AppCookie.getIntValue(context, AppCookie.KEY_PRERENT_DAYS, 30);
MAX_SPAN = AppCookie.getIntValue(this,AppCookie.KEY_PRERENT_DAYS, 30);
begDay = DateUtils.formatDate16(begDate);
begTime = DateUtils.formatDate17(begDate);
endDay = DateUtils.formatDate16(endDate);
......@@ -359,7 +359,9 @@ public class CalendarActivity extends BaseStatusActivity<CalendarPresenter> {
*/
private void initTime() {
for (int i = 8; i < 20; i++) {
timeList.add(String.format("%02d", i) + ":00");
if (i > 8) {
timeList.add(String.format("%02d", i) + ":00");
}
timeList.add(String.format("%02d", i) + ":30");
}
}
......
......@@ -9,6 +9,7 @@ import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.android.arouter.launcher.ARouter;
import com.frame.base.bus.LoginSuccessfulEvent;
......@@ -34,6 +35,7 @@ import com.ruiwenliu.wrapper.bean.UserInfoBean;
import com.rv.member.presenter.MemberPresenter;
import com.rv.component.utils.RvCache;
import com.rv.component.utils.CacheEnum;
import com.rv.member.view.MemberCompareView;
import com.rv.member.view.MemberItemView;
import com.rv.member.view.MemberTopView;
import com.rv.tourism.bean.BeanTourOrderAliPay;
......@@ -41,6 +43,8 @@ import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.yuyife.okgo.OkGoUtil;
import java.util.Arrays;
import java.util.Comparator;
import java.util.LinkedHashMap;
import java.util.Map;
......@@ -63,8 +67,12 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
@BindView(R2.id.member_top_view)
MemberTopView memberTopView;
@BindView(R2.id.ll_cardview_content)
LinearLayout ll_cardview_content;
@BindView(R2.id.member_compare_view)
MemberCompareView compareView;
@BindView(R2.id.tv_member_discount_hint)
TextView tvMemberDisCountHint;
@BindView(R2.id.tv_member_free_day_hint)
TextView tvMemberFreeDayHint;
private IWXAPI api;
private int memberLevel = 0; // 会员等级
......@@ -94,10 +102,10 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
MemberListBean listBean = (MemberListBean) RvCache.getInstance().get(CacheEnum.MEMBER);
if (listBean != null && listBean.getData() != null) {
memberTopView.setData(listBean, memberLevel, freeUseDay, payListener);
addMemberList(listBean);
compareView.setData(listBean.getData());
setMemberDiscountAndFreeDay(listBean);
}
memberTopView.setLoginListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
......@@ -170,7 +178,8 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
if (listBean != null && listBean.isRel() && listBean.getData() != null && !listBean.getData().isEmpty()) {
RvCache.getInstance().save(listBean, CacheEnum.MEMBER);
memberTopView.setData(listBean, memberLevel, freeUseDay, payListener);
addMemberList(listBean);
compareView.setData(listBean.getData());
setMemberDiscountAndFreeDay(listBean);
}
break;
case 1:
......@@ -204,6 +213,32 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
return true;
}
private void setMemberDiscountAndFreeDay(MemberListBean listBean) {
if (listBean.getData().size() == 3) {
Integer[] discounts = new Integer[3];
Integer[] freeDays = new Integer[3];
for (int i = 0; i < listBean.getData().size(); i++) {
MemberListBean.MemberCard card = listBean.getData().get(i);
discounts[i] = card.getDiscount() / 10;
freeDays[i] = card.getNumber();
}
Arrays.sort(discounts, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
Arrays.sort(freeDays, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1 - o2;
}
});
tvMemberFreeDayHint.setText(String.format(getString(R.string.tv_member_free_day), freeDays));
tvMemberDisCountHint.setText(String.format(getString(R.string.tv_member_rent_discount), discounts));
}
}
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
......@@ -229,18 +264,18 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
}
}
private void addMemberList(MemberListBean listBean) {
ll_cardview_content.removeAllViews();
for (MemberListBean.MemberCard card : listBean.getData()) {
MemberItemView view = new MemberItemView(this);
view.setData(card);
// view.setHasAgree(hasAgree);
view.setListener(payListener);
if (listBean.getData().indexOf(card) == listBean.getData().size() - 1)
view.hiddenLine();
ll_cardview_content.addView(view);
}
}
// private void addMemberList(MemberListBean listBean) {
// ll_cardview_content.removeAllViews();
// for (MemberListBean.MemberCard card : listBean.getData()) {
// MemberItemView view = new MemberItemView(this);
// view.setData(card);
//// view.setHasAgree(hasAgree);
// view.setListener(payListener);
// if (listBean.getData().indexOf(card) == listBean.getData().size() - 1)
// view.hiddenLine();
// ll_cardview_content.addView(view);
// }
// }
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
......
......@@ -15,6 +15,7 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.rv.component.utils.DisplayUtil;
import com.rv.member.R;
import com.rv.member.bean.MemberListBean;
......@@ -82,11 +83,11 @@ public class GridMemerAdapter extends BaseAdapter {
s.setSpan(new AbsoluteSizeSpan(10, true), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new AbsoluteSizeSpan(20, true), 1, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
if (selecPosition == i) {
s.setSpan(new ForegroundColorSpan(Color.parseColor("#ffffff")), 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
} else {
s.setSpan(new ForegroundColorSpan(Color.parseColor("#999999")), 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
// if (selecPosition == i) {
// s.setSpan(new ForegroundColorSpan(Color.parseColor("#FF5050")), 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// } else {
// s.setSpan(new ForegroundColorSpan(Color.parseColor("#FF5050")), 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// }
holder.tv_price.setText(s);
holder.tv_discount.setText("永久" + memberCard.getDiscount() / 10 + "折租车");
......@@ -94,21 +95,24 @@ public class GridMemerAdapter extends BaseAdapter {
holder.tv_type.setText(TextUtils.isEmpty(memberCard.getName()) ? " " : memberCard.getName());
if (selecPosition == i) {
if (i == 0) {
holder.rl_content.setBackgroundResource(R.drawable.bg_card_normal_member);
} else if (i == 1) {
holder.rl_content.setBackgroundResource(R.drawable.bg_card_gold_member);
} else if (i == 2) {
holder.rl_content.setBackgroundResource(R.drawable.bg_card_diamond_member);
}
holder.tv_type.setTextColor(Color.WHITE);
holder.tv_discount.setTextColor(Color.WHITE);
holder.tv_free_day.setTextColor(Color.WHITE);
// if (i == 0) {
// holder.rl_content.setBackgroundResource(R.drawable.bg_card_normal_member);
// } else if (i == 1) {
// holder.rl_content.setBackgroundResource(R.drawable.bg_card_gold_member);
// } else if (i == 2) {
// holder.rl_content.setBackgroundResource(R.drawable.bg_card_diamond_member);
// }
holder.rl_content.setBackgroundResource(R.drawable.bg_card_member_selected);
holder.tv_type.setTextColor(Color.parseColor("#54311E"));
holder.tv_type.setTextSize(18);
holder.tv_discount.setTextColor(Color.parseColor("#54311E"));
holder.tv_free_day.setTextColor(Color.parseColor("#54311E"));
} else {
holder.tv_type.setTextSize(16);
holder.rl_content.setBackgroundResource(R.drawable.bg_member_unselect);
holder.tv_type.setTextColor(Color.parseColor("#999999"));
holder.tv_discount.setTextColor(Color.parseColor("#999999"));
holder.tv_free_day.setTextColor(Color.parseColor("#999999"));
holder.tv_type.setTextColor(Color.parseColor("#666666"));
holder.tv_discount.setTextColor(Color.parseColor("#666666"));
holder.tv_free_day.setTextColor(Color.parseColor("#666666"));
}
holder.rl_content.setOnClickListener(new View.OnClickListener() {
......
......@@ -46,6 +46,7 @@ public class MemberListBean extends BaseBean implements Serializable {
private int isdel;
private BigDecimal price;
private int number;
private BigDecimal daysPrice ;
public int getId() {
return id;
......@@ -126,5 +127,13 @@ public class MemberListBean extends BaseBean implements Serializable {
public void setNumber(int number) {
this.number = number;
}
public BigDecimal getDaysPrice() {
return daysPrice;
}
public void setDaysPrice(BigDecimal daysPrice) {
this.daysPrice = daysPrice;
}
}
}
......@@ -55,18 +55,18 @@ public class LoginView extends LinearLayout {
UserInfoBean.UserInfo info = infoBean.getData();
if (info != null) {
if (info.getIsMember() == 0) {
llLogin.setBackgroundResource(R.drawable.bg_normal_user);
llLogin.setBackgroundResource(R.drawable.shape_rv_bg_top_unlogin);
ivMemberLevel.setVisibility(INVISIBLE);
} else {
switch (info.getMemberLevel()) {
case 1:
llLogin.setBackgroundResource(R.drawable.bg_normal_member);
llLogin.setBackgroundResource(R.drawable.member_common_background);
break;
case 2:
llLogin.setBackgroundResource(R.drawable.bg_gold_member);
llLogin.setBackgroundResource(R.drawable.member_gold_background);
break;
case 3:
llLogin.setBackgroundResource(R.drawable.bg_diamond_member);
llLogin.setBackgroundResource(R.drawable.member_diamond_background);
break;
default:
break;
......@@ -76,16 +76,16 @@ public class LoginView extends LinearLayout {
GlideManager.getInstance(getContext()).loadImage(info.getHeadimgurl(), ivAvatar);
tvNickname.setText(!TextUtils.isEmpty(info.getNickname()) ? info.getNickname() : info.getUsername());
SpannableStringBuilder recordBuilder = new SpannableStringBuilder(info.getPayCount() + "\n 消费记录");
SpannableStringBuilder recordBuilder = new SpannableStringBuilder(info.getPayCount() + "\n 消费记录/次");
recordBuilder.setSpan(new TextAppearanceSpan(null, Typeface.NORMAL, DisplayUtil.sp2px(getContext(), 18), null, null), 0, String.valueOf(info.getPayCount()).length(), Spanned.SPAN_EXCLUSIVE_INCLUSIVE);
tvConsumeRecord.setText(recordBuilder);
SpannableStringBuilder rentBuilder = new SpannableStringBuilder(info.getRentFreeDays() + "\n 可免费租车 (天)");
SpannableStringBuilder rentBuilder = new SpannableStringBuilder(info.getRentFreeDays() + "\n 可免费租车/天");
rentBuilder.setSpan(new TextAppearanceSpan(null, Typeface.NORMAL, DisplayUtil.sp2px(getContext(), 18), null, null), 0, String.valueOf(info.getRentFreeDays()).length(), Spanned.SPAN_EXCLUSIVE_INCLUSIVE);
tvFreeDay.setText(rentBuilder);
SpannableStringBuilder bugBuilder = new SpannableStringBuilder(info.getBuyCount() + "\n 购买记录 (次)");
SpannableStringBuilder bugBuilder = new SpannableStringBuilder(info.getBuyCount() + "\n 购买记录/次");
bugBuilder.setSpan(new TextAppearanceSpan(null, Typeface.NORMAL, DisplayUtil.sp2px(getContext(), 18), null, null), 0, String.valueOf(info.getBuyCount()).length(), Spanned.SPAN_EXCLUSIVE_INCLUSIVE);
tvPurchaseRecord.setText(bugBuilder);
if (!TextUtils.isEmpty(info.getBigIcon()))
......
package com.rv.member.view;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import com.rv.member.R;
import com.rv.member.bean.MemberListBean;
import java.util.List;
public class MemberCompareView extends LinearLayout {
private LinearLayout llContent;
public MemberCompareView(Context context) {
super(context);
}
public MemberCompareView(Context context, AttributeSet attrs) {
super(context, attrs);
initView();
}
private void initView() {
View view = LayoutInflater.from(getContext()).inflate(R.layout.view_member_compare, null);
llContent = view.findViewById(R.id.ll_content);
addView(view);
}
private MemberRightItem itemView;
public void setData(List<MemberListBean.MemberCard> lists) {
if (lists != null && lists.size() > 0) {
llContent.removeAllViews();
for (MemberListBean.MemberCard memberCard : lists) {
if (memberCard != null) {
itemView = new MemberRightItem(getContext());
itemView.setData(memberCard, lists.indexOf(memberCard));
llContent.addView(itemView);
}
}
}
}
}
package com.rv.member.view;
import android.content.Context;
import android.graphics.Color;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.style.ForegroundColorSpan;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.rv.member.R;
import com.rv.member.bean.MemberListBean;
import java.math.BigDecimal;
public class MemberRightItem extends LinearLayout {
private TextView tvMemberLevel;
private TextView tvMemberDiscount;
private TextView tvMemberFreeDay;
public MemberRightItem(Context context) {
super(context);
initView();
}
private void initView() {
View view = LayoutInflater.from(getContext()).inflate(R.layout.view_member_right_item, null);
tvMemberLevel = view.findViewById(R.id.tv_member_level);
tvMemberDiscount = view.findViewById(R.id.tv_member_discount);
tvMemberFreeDay = view.findViewById(R.id.tv_member_free_day);
addView(view, LinearLayout.LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
}
public void setData(MemberListBean.MemberCard memberCard, int position) {
if (memberCard != null) {
this.tvMemberLevel.setText(TextUtils.isEmpty(memberCard.getName()) ? " " : memberCard.getName());
this.tvMemberDiscount.setText("永久" + (memberCard.getDiscount() / 10) + "折");
if(memberCard.getDaysPrice() != null){
SpannableStringBuilder rentBuilder = new SpannableStringBuilder(memberCard.getNumber() + "天" + "\n 价值 ¥" + dealPrice(memberCard.getDaysPrice()));
String rentText = rentBuilder.toString();
rentBuilder.setSpan(new ForegroundColorSpan(Color.parseColor("#FF5050")), rentText.indexOf("¥"), rentBuilder.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
this.tvMemberFreeDay.setText(rentBuilder);
}
}
if (position % 2 != 0) {
setBackgroundColor(Color.parseColor("#fff6e2"));
}
}
private String dealPrice(BigDecimal value) {
if(value == null) return "";
BigDecimal noZeros = value.stripTrailingZeros();
return noZeros.toPlainString();
}
}
......@@ -7,7 +7,6 @@ import android.graphics.Color;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.ForegroundColorSpan;
import android.util.AttributeSet;
import android.view.LayoutInflater;
......@@ -129,7 +128,7 @@ public class MemberTopView extends LinearLayout {
@Override
public void onClick(View v) {
if (dialog == null) {
dialog = new InviterPhoneDialog(getContext(),inviterPhone , new InviterPhoneDialog.InputListener() {
dialog = new InviterPhoneDialog(getContext(), inviterPhone, new InviterPhoneDialog.InputListener() {
@Override
public void input(String phone) {
inviterPhone = phone;
......@@ -161,13 +160,14 @@ public class MemberTopView extends LinearLayout {
});
img_agree.setImageResource(hasAgree ? R.drawable.common_icon_selected : R.drawable.common_icon_radio_unche);
if (selectCard.getLevel() == 1) {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_normal_member);
} else if (selectCard.getLevel() == 2) {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_gold_member);
} else {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_diamond_member);
}
// if (selectCard.getLevel() == 1) {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_normal_member);
// } else if (selectCard.getLevel() == 2) {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_gold_member);
// } else {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_diamond_member);
// }
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_member);
img_agree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
......@@ -195,7 +195,7 @@ public class MemberTopView extends LinearLayout {
return;
}
if (listener != null) {
listener.pay(selectCard,inviterPhone);
listener.pay(selectCard, inviterPhone);
}
}
});
......@@ -224,22 +224,28 @@ public class MemberTopView extends LinearLayout {
switch (memberLevel) {
case 1:
imgDiscountTop.setImageResource(R.drawable.icon_vip_normal);
imgFreedayTop.setImageResource(R.drawable.icon_car_normal);
imgFreeTop.setImageResource(R.drawable.icon_outdoor_normal);
imgDiscountTop.setImageResource(R.drawable.member_common_icon_discount);
imgFreedayTop.setImageResource(R.drawable.member_common_icon_rent);
imgFreeTop.setImageResource(R.drawable.member_common_icon_salon);
tvDiscountTop.setText("租车8折");
btnFreedayUse.setBackgroundResource(R.drawable.shape_member_common_bg_btn);
btnDisountUse.setBackgroundResource(R.drawable.shape_member_common_bg_btn);
break;
case 2:
imgDiscountTop.setImageResource(R.drawable.icon_vip_gold);
imgFreedayTop.setImageResource(R.drawable.icon_car_gold);
imgFreeTop.setImageResource(R.drawable.icon_outdoor_gold);
imgDiscountTop.setImageResource(R.drawable.member_gold_icon_discount);
imgFreedayTop.setImageResource(R.drawable.member_gold_icon_rent);
imgFreeTop.setImageResource(R.drawable.member_gold_icon_salon);
tvDiscountTop.setText("租车7折");
btnFreedayUse.setBackgroundResource(R.drawable.shape_member_gold_bg_btn);
btnDisountUse.setBackgroundResource(R.drawable.shape_member_gold_bg_btn);
break;
case 3:
imgDiscountTop.setImageResource(R.drawable.icon_vip_diamond);
imgFreedayTop.setImageResource(R.drawable.icon_car_diamond);
imgFreeTop.setImageResource(R.drawable.icon_outdoor_diamond);
imgDiscountTop.setImageResource(R.drawable.member_diamond_icon_discount);
imgFreedayTop.setImageResource(R.drawable.member_diamond_icon_rent);
imgFreeTop.setImageResource(R.drawable.member_diamond_icon_salon);
tvDiscountTop.setText("租车6折");
btnFreedayUse.setBackgroundResource(R.drawable.shape_member_diamond_bg_btn);
btnDisountUse.setBackgroundResource(R.drawable.shape_member_diamond_bg_btn);
break;
}
} else {
......@@ -277,14 +283,14 @@ public class MemberTopView extends LinearLayout {
selectCard = memberCard;
selectPostion = bean.getData().indexOf(memberCard);
btn_buy.setText("立即开通" + memberCard.getName());
if (selectCard.getLevel() == 1) {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_normal_member);
} else if (selectCard.getLevel() == 2) {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_gold_member);
} else {
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_diamond_member);
}
btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_member);
// if (selectCard.getLevel() == 1) {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_normal_member);
// } else if (selectCard.getLevel() == 2) {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_gold_member);
// } else {
// btn_buy.setBackgroundResource(R.drawable.shape_rv_bg_open_diamond_member);
// }
}
});
}
......
package com.rv.member.view;
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Color;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
......@@ -27,6 +29,7 @@ public class UnLoginView extends RelativeLayout {
this.onClickListener = listener;
}
@SuppressLint("ResourceAsColor")
private void initView() {
View view = LayoutInflater.from(getContext()).inflate(R.layout.item_unlogin_view, null);
tvLogin = view.findViewById(R.id.tv_login);
......@@ -36,6 +39,8 @@ public class UnLoginView extends RelativeLayout {
if (onClickListener != null) onClickListener.onClick(v);
}
});
setBackgroundColor(Color.parseColor("#ffffff"));
addView(view);
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--空心框 圆角 少量红-->
<corners android:radius="@dimen/size_30" />
<solid android:color="#FDE7CC" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--空心框 圆角 少量红-->
<corners android:radius="@dimen/size_30" />
<solid android:color="#FFDFC9" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--空心框 圆角 少量红-->
<corners android:radius="@dimen/size_30" />
<solid android:color="#FFEBC0" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/size_30" />
<solid android:color="@color/white" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="20dp" />
<solid android:color="#cccccc" />
<corners android:radius="@dimen/size_50" />
<solid android:color="#ffb74b" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/size_30" />
<corners android:radius="@dimen/size_5" />
<solid android:color="@color/white" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp" />
<solid android:color="#ffffffff" />
<stroke android:width="1px" android:color="#ffeeeeee" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="20dp" />
<solid android:color="#cccccc" />
<solid android:color="#fff" />
<stroke
android:width="1dp"
android:color="#ffcccccc" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp" />
<gradient
android:startColor="#E5B895"
android:endColor="#F8D3B8"
android:angle="0"
/>
<corners android:radius="10dp" />
<solid android:color="#ffeec9" />
</shape>
\ No newline at end of file
......@@ -28,7 +28,7 @@
android:ellipsize="end"
android:singleLine="true"
android:layout_toLeftOf="@+id/iv_member_level"
android:textColor="@color/white"
android:textColor="#54311E"
android:textSize="17sp" />
<ImageView
......@@ -57,9 +57,9 @@
android:layout_weight="1"
android:gravity="center"
android:lines="2"
android:text="0 \n 消费记录 "
android:textColor="@color/white"
android:textSize="@dimen/dp_10" />
android:text="0 \n 消费记录/次 "
android:textColor="#714C37"
android:textSize="11sp" />
<View
android:layout_width="1px"
......@@ -74,9 +74,9 @@
android:layout_weight="1"
android:gravity="center"
android:lines="2"
android:text="0 \n 可免费租车 (天) "
android:textColor="@color/white"
android:textSize="@dimen/dp_10" />
android:text="0 \n 可免费租车/天"
android:textColor="#714C37"
android:textSize="11sp" />
<View
android:layout_width="1px"
......@@ -91,9 +91,9 @@
android:layout_weight="1"
android:gravity="center_horizontal|bottom"
android:lines="2"
android:text="0 \n 购买记录 (次)"
android:textColor="@color/white"
android:textSize="@dimen/dp_10" />
android:text="0 \n 购买记录/次"
android:textColor="#714C37"
android:textSize="11sp" />
</LinearLayout>
......
......@@ -21,8 +21,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_20"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
android:textSize="16sp" />
<TextView
android:id="@+id/tv_discount"
......@@ -46,7 +45,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:textColor="@color/white"
android:textColor="#FF5050"
android:textStyle="bold" />
</LinearLayout>
......
......@@ -19,16 +19,16 @@
<TextView
android:id="@+id/tv_login"
android:layout_width="@dimen/size_100"
android:layout_height="33.33dp"
android:layout_height="35dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:layout_marginRight="@dimen/size_15"
android:background="@drawable/shape_rv_bg_circle_white"
android:background="@drawable/shape_rv_bg_circle_ffe3a9"
android:gravity="center"
android:text="@string/tv_login"
android:textColor="@color/colorYellow"
android:textSize="@dimen/text_14" />
android:text= "登 录"
android:textColor="@color/white"
android:textSize="@dimen/text_16" />
</RelativeLayout>
<?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="wrap_content"
android:orientation="vertical">
<View
android:layout_width="match_parent"
android:layout_height="1px"
android:background="@color/white" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/ll_member_level"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:background="#FFE8B7"
android:gravity="center"
android:text="会员等级"
android:textColor="#ff333333"
android:textSize="@dimen/sp_16" />
</LinearLayout>
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#FFC271" />
<LinearLayout
android:id="@+id/ll_member_discount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:background="#FFE8B7"
android:gravity="center"
android:text="租车折扣"
android:textColor="#ff333333"
android:textSize="@dimen/sp_16" />
</LinearLayout>
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#FFC271" />
<LinearLayout
android:id="@+id/ll_member_free_day"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:background="#FFE8B7"
android:gravity="center"
android:text="免费天数"
android:textColor="#ff333333"
android:textSize="@dimen/sp_16" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" />
<View
android:layout_width="match_parent"
android:layout_height="1px"
android:layout_marginBottom="@dimen/dp_10"
android:background="#FFC271" />
</LinearLayout>
......@@ -42,7 +42,7 @@
android:gravity="center"
android:stateListAnimator="@null"
android:text="@string/tv_use_now"
android:textColor="@color/white"
android:textColor="#714C37"
android:textSize="@dimen/sp_12" />
</LinearLayout>
......@@ -80,7 +80,7 @@
android:gravity="center"
android:stateListAnimator="@null"
android:text="@string/tv_use_now"
android:textColor="@color/white"
android:textColor="#714C37"
android:textSize="@dimen/sp_12" />
</LinearLayout>
......@@ -117,7 +117,7 @@
android:gravity="center"
android:stateListAnimator="@null"
android:text="@string/tv_please_wait"
android:textColor="@color/white"
android:textColor="#999999"
android:textSize="@dimen/sp_12" />
</LinearLayout>
......@@ -172,6 +172,7 @@
android:textSize="@dimen/sp_12" />
<TextView
android:visibility="gone"
android:inputType="phone"
android:maxLength="11"
android:id="@+id/tv_inviter_phone"
......@@ -197,7 +198,7 @@
android:layout_marginRight="@dimen/size_20"
android:layout_marginBottom="@dimen/size_20"
android:gravity="center"
android:textColor="@color/white"
android:textColor="#714C37"
android:textSize="@dimen/sp_14" />
</LinearLayout>
<?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="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_member_level"
android:layout_width="0dp"
android:layout_height="@dimen/size_80"
android:layout_weight="1"
android:gravity="center"
android:text="会员等级"
android:textColor="#666666"
android:textSize="@dimen/sp_16" />
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#FFC271" />
<TextView
android:id="@+id/tv_member_discount"
android:layout_width="0dp"
android:layout_height="@dimen/size_80"
android:layout_weight="1"
android:gravity="center"
android:text="租车折扣"
android:textColor="#666666"
android:textSize="@dimen/sp_16" />
<View
android:layout_width="1px"
android:layout_height="match_parent"
android:background="#FFC271" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="@dimen/size_80"
android:layout_weight="1"
android:gravity="center">
<TextView
android:id="@+id/tv_member_free_day"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:lines="2"
android:paddingTop="-20dp"
android:text="免费天数"
android:textColor="#666666"
android:textSize="@dimen/sp_16" />
</LinearLayout>
</LinearLayout>
<?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"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
......
......@@ -3,7 +3,7 @@
<string name="tv_title_member_center">会员中心</string>
<string name="tv_outdoors_act">沙龙讲座活动</string>
<string name="tv_agreement">同意 《会员服务协议》 </string>
<string name="tv_agreement">同意 《会员合同协议》 </string>
<string name="tv_use_now">马上使用</string>
......@@ -12,6 +12,9 @@
<string name="tv_title_consume_record">消费记录</string>
<string name="tv_no_consume_data">无消费记录</string>
<string name="tv_member_free_day">普通会员可免费租车%d天,黄金会员%d天,钻石会员%d天(连续购买,天数可叠加)</string>
<string name="tv_member_rent_discount">普通会员%d折,黄金会员%d折,钻石会员%d折</string>
<string-array name="free_day_list">
<item>使用明细</item>
<item>赠送明细</item>
......
......@@ -96,7 +96,7 @@ public class PointAdapter extends RecyclerView.Adapter {
holder.btnState.setBackgroundResource(R.drawable.shape_rv_bg_dark_yellow);
} else {
holder.btnState.setEnabled(!item.isIntegralStatus());
holder.btnState.setBackgroundResource(item.isIntegralStatus() ? R.drawable.shape_rv_bg_member_top_grap : R.drawable.shape_rv_bg_dark_yellow);
holder.btnState.setBackgroundResource(item.isIntegralStatus() ? R.drawable.shape_rv_bg_member_top_grap1 : R.drawable.shape_rv_bg_dark_yellow);
}
holder.btnState.setOnClickListener(new View.OnClickListener() {
@Override
......
......@@ -28,11 +28,12 @@
android:textSize="@dimen/text_18" />
</RelativeLayout>
<RelativeLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_100"
android:layout_marginBottom="@dimen/dp_10"
android:background="@drawable/bg_points_userinfo"
android:gravity="center_vertical"
android:orientation="horizontal">
<com.base.utils.ui.image.round.RoundImageView
......@@ -46,11 +47,16 @@
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_10"
android:layout_toEndOf="@+id/tv_point"
android:layout_toRightOf="@id/rimg_avatar"
android:layout_weight="1"
android:ellipsize="end"
android:maxLength="12"
android:singleLine="true"
android:textColor="@color/white"
android:textSize="@dimen/text_18" />
......@@ -58,16 +64,16 @@
android:id="@+id/tv_point"
android:layout_width="wrap_content"
android:layout_height="@dimen/size_100"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/size_50"
android:fontFamily="sans-serif-condensed"
android:gravity="center"
android:lines="2"
android:text="0"
android:textColor="@color/white"
android:textSize="24sp"
android:textStyle="bold" />
</RelativeLayout>
</LinearLayout>
<include layout="@layout/common_rv" />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment