Commit 209f8c60 authored by jianglx's avatar jianglx

完善会员模块;修改MainActivity 的启动模式为SingTask

parent 08971661
......@@ -157,7 +157,9 @@
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <!-- umShare 相关 end -->
<activity android:name=".MainActivity"
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<activity
......@@ -313,7 +315,7 @@
</receiver> <!-- ===============================FrameBase框架End=========================== -->
<!-- ================================================================= -->
<!-- 我的模块 -->
<!-- 身份证认证 -->
<!-- 身份证认证 -->
<activity
android:name="com.rv.rvmine.personal.IDCardCertificationActivity"
android:launchMode="singleTask"
......@@ -355,7 +357,7 @@
android:launchMode="singleTask"
android:screenOrientation="portrait" /> <!-- ================================================================= -->
<!-- =================================营地======================================= -->
<!-- 营地详情 -->
<!-- 营地详情 -->
<activity
android:name="com.rv.camp.camp.CampDetailActivity"
android:launchMode="singleTask"
......
......@@ -33,7 +33,7 @@ import butterknife.OnClick;
public class MainActivity extends BaseActivity<CommonPresenter> {
// @BindView(R2.id.pager_view_fragment)
// @BindView(R2.id.pager_view_fragment)
CustomScrollViewPager viewPager;
@BindView(R2.id.iv_home)
ImageView ivHome;
......@@ -74,7 +74,7 @@ public class MainActivity extends BaseActivity<CommonPresenter> {
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
viewPager= findViewById(R.id.pager_view_fragment);
viewPager = findViewById(R.id.pager_view_fragment);
showTitle(false);
mAdapter = new TabAdapter(getSupportFragmentManager(), getListFragment());
viewPager.setAdapter(mAdapter);
......@@ -103,15 +103,15 @@ public class MainActivity extends BaseActivity<CommonPresenter> {
@OnClick({R2.id.rl_home, R2.id.rl_travel, R2.id.rl_camp, R2.id.rl_found, R2.id.rl_mine})
public void onViewClicked(View view) {
int id = view.getId();
if (id ==R.id.rl_home ){
if (id == R.id.rl_home) {
setCurrent(TYPE_HOME_PAGE);
}else if (id == R.id.rl_travel){
} else if (id == R.id.rl_travel) {
setCurrent(TYPE_TRAVEL);
}else if (id ==R.id.rl_camp){
} else if (id == R.id.rl_camp) {
setCurrent(TYPE_CAMP);
}else if (id == R.id.rl_found){
} else if (id == R.id.rl_found) {
setCurrent(TYPE_FOUND);
}else if (id == R.id.rl_mine){
} else if (id == R.id.rl_mine) {
setCurrent(TYPE_MINE);
}
}
......@@ -168,6 +168,14 @@ public class MainActivity extends BaseActivity<CommonPresenter> {
return super.dispatchKeyEvent(event);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
if (intent != null && "use_member".equals(intent.getStringExtra("from"))) {
setCurrent(TYPE_HOME_PAGE);
}
}
/**
* 退出APP
*/
......
......@@ -82,10 +82,9 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
TextView tvPurchaseRecord;
private MemberListAdapter adapter;
private UserInfoBean.UserInfo info;
private IWXAPI api;
private int memberLevel = 0; // 会员等级
public static Intent getIntent(Context context) {
return new Intent(context, MemberCenterActivity.class);
......@@ -111,7 +110,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
.subscribe(new Consumer<PaymentSuccessfulEvent>() {
@Override
public void accept(PaymentSuccessfulEvent payEvent) throws Exception {
finish();
getUserData();
}
});
......@@ -134,7 +133,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
switch (requestType) {
case 0:
if (adapter == null) {
adapter = new MemberListAdapter(((MemberListBean) result).getData(), MemberCenterActivity.this, payListener);
adapter = new MemberListAdapter(((MemberListBean) result).getData(), memberLevel, MemberCenterActivity.this, payListener);
recyclerView.setAdapter(adapter);
} else {
adapter.setDate(((MemberListBean) result).getData());
......@@ -224,7 +223,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
}
tvConsumeRecord.setText(info.getPayCount() + "\n 消费记录");
tvFreeDay.setText(info.getRentFreeDays() +"\n 可免费租车 (天)");
tvFreeDay.setText(info.getRentFreeDays() + "\n 可免费租车 (天)");
tvFreeDay.setText(info.getBuyCount() + "\n 购买记录 (次)");
}
......@@ -239,9 +238,18 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
tvVerified.setVisibility(View.VISIBLE);
if (info != null) {
ivMember.setVisibility(View.VISIBLE);
if (info.getIsMember() == 0) {
memberLevel = 1;
if (adapter != null) {
adapter.setMemberLevel(memberLevel);
}
ivMember.setImageResource(R.drawable.mycenter_icon_goldmembership_1);
} else {
memberLevel = info.getMemberLevel();
if (adapter != null) {
adapter.setMemberLevel(memberLevel);
}
switch (info.getMemberLevel()) {
case 1:
ivMember.setImageResource(R.drawable.mycenter_icon_ord_membership);
......
package com.rv.rvmine.member.adapter;
import android.content.Context;
import android.graphics.Color;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.ForegroundColorSpan;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MemberListBean;
import java.util.List;
public class GridMemerAdapter extends BaseAdapter {
private int selecPosition;
private Context mContext;
private List<MemberListBean.MemberCard> mData;
private SelectListener mListener;
public interface SelectListener {
void select(MemberListBean.MemberCard memberCard);
}
public GridMemerAdapter(Context context, List<MemberListBean.MemberCard> lists, SelectListener listener) {
this.mContext = context;
this.mData = lists;
this.mListener = listener;
}
@Override
public int getCount() {
return mData.size();
}
@Override
public Object getItem(int i) {
return mData.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(final int i, View view, ViewGroup viewGroup) {
final MemberListBean.MemberCard memberCard = mData.get(i);
ViewHolder holder;
if (view == null) {
view = LayoutInflater.from(mContext).inflate(R.layout.item_member_detail_view, null);
holder = new ViewHolder();
holder.rl_content = view.findViewById(R.id.rl_content);
holder.tv_discount = view.findViewById(R.id.tv_discount);
holder.tv_free_day = view.findViewById(R.id.tv_free_day);
holder.tv_price = view.findViewById(R.id.tv_price);
holder.tv_type_icon = view.findViewById(R.id.tv_type_icon);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
SpannableString s = new SpannableString("¥" + memberCard.getPrice());
s.setSpan(new AbsoluteSizeSpan(12, true), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new AbsoluteSizeSpan(18, true), 1, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new ForegroundColorSpan(Color.parseColor("#FFB74B")), 1, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
holder.tv_price.setText(s);
holder.tv_discount.setText("永久" + memberCard.getDiscount() / 10 + "折租车");
holder.tv_free_day.setText(memberCard.getNumber() + "天免费租车");
holder.tv_type_icon.setText(memberCard.getName());
switch (memberCard.getLevel()) {
case 1:
holder.tv_type_icon.setBackgroundResource(R.drawable.member_icon_reg_members);
break;
case 2:
holder.tv_type_icon.setBackgroundResource(R.drawable.member_icon_gold_membership);
break;
case 3:
holder.tv_type_icon.setBackgroundResource(R.drawable.member_icon_dia_membership);
break;
}
if (selecPosition == i) {
holder.rl_content.setBackgroundResource(R.drawable.shape_rv_bg_member_selected);
} else {
holder.rl_content.setBackgroundResource(R.drawable.shape_rv_bg_member_unselected);
}
holder.rl_content.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
selecPosition = i;
mListener.select(memberCard);
notifyDataSetChanged();
}
});
return view;
}
private class ViewHolder {
RelativeLayout rl_content;
TextView tv_price;
TextView tv_discount;
TextView tv_free_day;
TextView tv_type_icon;
}
}
package com.rv.rvmine.member.adapter;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
......@@ -13,14 +16,14 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.ruiwenliu.wrapper.util.glide.GlideManager;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MemberListBean;
import com.rv.rvmine.member.view.MemberCardDetailView;
import com.rv.rvmine.member.view.MemberCardView;
import java.util.List;
......@@ -29,23 +32,36 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
private Context mContext;
private List<MemberListBean.MemberCard> mData;
private int selectPosition;
private PayListener payListener;
private int memberLevel;
private GridMemerAdapter adapter;
private MemberListBean.MemberCard selectCard;
public interface PayListener {
void pay(MemberListBean.MemberCard card);
}
public MemberListAdapter(@Nullable List<MemberListBean.MemberCard> data, Context context, PayListener listener) {
public void setMemberLevel(int memberLevel) {
this.memberLevel = memberLevel;
notifyDataSetChanged();
}
public void setDate(List<MemberListBean.MemberCard> data) {
initData(data);
notifyDataSetChanged();
}
public MemberListAdapter(@Nullable List<MemberListBean.MemberCard> data, int memberLevel, Context context, PayListener listener) {
this.memberLevel = memberLevel;
this.mContext = context;
this.payListener = listener;
initData(data);
}
private void initData(List<MemberListBean.MemberCard> data) {
selectPosition = 1;
data.add(0, null);
mData = data;
selectCard = mData.get(1);
}
......@@ -84,6 +100,7 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
private void setHeadViewData(final HeadViewHolder viewHolder) {
setMemeberTop(viewHolder);
SpannableString spannableString = new SpannableString(viewHolder.tv_agreement.getText());
spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FFB74B")), 6, spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
viewHolder.tv_agreement.setText(spannableString);
......@@ -107,34 +124,75 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
@Override
public void onClick(View view) {
if (payListener != null) {
payListener.pay(mData.get(selectPosition));
payListener.pay(selectCard);
}
}
});
initGridView(viewHolder);
viewHolder.btn_buy.setText("立即开通" + selectCard.getName());
viewHolder.btnDisountUse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
toMainActivity();
}
});
viewHolder.gridview.removeAllViews();
for (int i = 1; i < mData.size(); i++) {
if (mData.get(i) != null) {
final int finalI = i;
MemberCardDetailView cardDetailView = new MemberCardDetailView(mContext, mData.get(i), new MemberCardDetailView.MyClickListener() {
@Override
public void onClick(MemberCardDetailView view) {
selectPosition = finalI;
viewHolder.btn_buy.setText("立即开通" + mData.get(selectPosition).getName());
for (int i = 0; i < viewHolder.gridview.getChildCount(); i++) {
if (view != viewHolder.gridview.getChildAt(i)) {
((MemberCardDetailView) viewHolder.gridview.getChildAt(i)).unSelect();
}
}
}
});
if (i == selectPosition) {
cardDetailView.select();
viewHolder.btn_buy.setText("立即开通" + mData.get(selectPosition).getName());
viewHolder.btnFreedayUse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
toMainActivity();
}
});
}
private void toMainActivity() {
ComponentName componentName = new ComponentName(mContext, "com.test.rv.MainActivity");
Intent intent = new Intent();
intent.putExtra("from", "use_member");
intent.setComponent(componentName);
mContext.startActivity(intent);
}
private void initGridView(final HeadViewHolder viewHolder) {
viewHolder.gridview.setNumColumns(mData.size() - 1);
if (adapter == null) {
adapter = new GridMemerAdapter(mContext, mData.subList(1, mData.size()), new GridMemerAdapter.SelectListener() {
@Override
public void select(MemberListBean.MemberCard memberCard) {
selectCard = memberCard;
viewHolder.btn_buy.setText("立即开通" + memberCard.getName());
}
viewHolder.gridview.addView(cardDetailView);
});
}
viewHolder.gridview.setAdapter(adapter);
}
private void setMemeberTop(final HeadViewHolder viewHolder) {
if (memberLevel > 0) {
viewHolder.rlTop.setVisibility(View.VISIBLE);
switch (memberLevel) {
case 1:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_8);
viewHolder.tvDiscountTop.setText("租车8折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_5);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(1).getNumber() + "天");
break;
case 2:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_7);
viewHolder.tvDiscountTop.setText("租车7折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_12);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(2).getNumber() + "天");
break;
case 3:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_6);
viewHolder.tvDiscountTop.setText("租车6折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_28);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(3).getNumber() + "天");
break;
}
}
}
......@@ -164,18 +222,20 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
viewHolder.mcv_free_day.setValue(bean.getNumber());
}
public void setDate(List<MemberListBean.MemberCard> data) {
initData(data);
notifyDataSetChanged();
}
public class HeadViewHolder extends RecyclerView.ViewHolder {
int agreeState = 1; // 选中状态
LinearLayout gridview;
GridView gridview;
TextView tv_agreement;
ImageView img_agree;
Button btn_buy;
RelativeLayout rlTop;
ImageView imgDiscountTop;
TextView tvDiscountTop;
Button btnDisountUse;
ImageView imgFreedayTop;
TextView tvFreedayTop;
Button btnFreedayUse;
public HeadViewHolder(@NonNull View itemView) {
super(itemView);
......@@ -183,6 +243,13 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
tv_agreement = itemView.findViewById(R.id.tv_agreement);
img_agree = itemView.findViewById(R.id.img_agree);
btn_buy = itemView.findViewById(R.id.btn_buy);
rlTop = itemView.findViewById(R.id.rl_member_top);
imgDiscountTop = itemView.findViewById(R.id.img_discount_top);
tvDiscountTop = itemView.findViewById(R.id.tv_discount_top);
btnDisountUse = itemView.findViewById(R.id.btn_disount_use);
imgFreedayTop = itemView.findViewById(R.id.img_freeday_top);
tvFreedayTop = itemView.findViewById(R.id.tv_freeday_top);
btnFreedayUse = itemView.findViewById(R.id.btn_freeday_use);
}
}
......
package com.rv.rvmine.member.view;
import android.content.Context;
import android.graphics.Color;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.ForegroundColorSpan;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MemberListBean;
public class MemberCardDetailView extends LinearLayout {
private int state = 0; // 未选中状态
private MemberListBean.MemberCard memberCard;
private RelativeLayout rl_content;
private TextView tv_price;
private TextView tv_discount;
private TextView tv_free_day;
private TextView tv_type;
private MyClickListener clickListener;
public MemberCardDetailView(Context context, MemberListBean.MemberCard memberCard, MyClickListener clickListener) {
super(context);
this.memberCard = memberCard;
this.clickListener = clickListener;
initView();
}
private void initView() {
View view = LayoutInflater.from(getContext()).inflate(R.layout.item_member_detail_view, null);
rl_content = view.findViewById(R.id.rl_content);
tv_price = view.findViewById(R.id.tv_price);
tv_discount = view.findViewById(R.id.tv_discount);
tv_free_day = view.findViewById(R.id.tv_free_day);
tv_type = view.findViewById(R.id.tv_type_icon);
if (memberCard != null) {
SpannableString s = new SpannableString("¥" + memberCard.getPrice());
s.setSpan(new AbsoluteSizeSpan(12, true), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new AbsoluteSizeSpan(18, true), 1, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
s.setSpan(new ForegroundColorSpan(Color.parseColor("#FFB74B")), 1, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv_price.setText(s);
tv_discount.setText("永久" + memberCard.getDiscount() / 10 + "折租车");
tv_free_day.setText(memberCard.getNumber() + "天免费租车");
tv_type.setText(memberCard.getName());
switch (memberCard.getLevel()) {
case 1:
tv_type.setBackgroundResource(R.drawable.member_icon_reg_members);
break;
case 2:
tv_type.setBackgroundResource(R.drawable.member_icon_gold_membership);
break;
case 3:
tv_type.setBackgroundResource(R.drawable.member_icon_dia_membership);
break;
}
}
rl_content.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
if (state == 0) {
state = 1;
rl_content.setBackgroundResource(R.drawable.shape_rv_bg_member_selected);
clickListener.onClick(MemberCardDetailView.this);
}
}
});
addView(view);
}
public void unSelect() {
state = 0;
rl_content.setBackgroundResource(R.drawable.shape_rv_bg_member_unselected);
}
public void select() {
state = 1;
rl_content.setBackgroundResource(R.drawable.shape_rv_bg_member_selected);
}
public interface MyClickListener {
void onClick(MemberCardDetailView view);
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp" />
<solid android:color="@color/nimeBg" />
<solid android:color="#F8F3C9" />
<stroke
android:width="0.2dp"
android:color="@color/gray_FFB74B" />
......
<?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" />
</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="#BA58EB" />
</shape>
\ No newline at end of file
......@@ -6,7 +6,7 @@
android:orientation="vertical">
<TextView
android:layout_marginLeft="@dimen/size_20"
android:layout_marginLeft="@dimen/dp_10"
android:textStyle="bold"
android:id="@+id/tv_member_type"
android:layout_width="wrap_content"
......@@ -26,7 +26,7 @@
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/size_30"
android:layout_marginLeft="@dimen/size_20"
app:card_type="0" />
<com.rv.rvmine.member.view.MemberCardView
......@@ -34,7 +34,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="@dimen/size_30"
android:layout_marginLeft="@dimen/size_20"
app:card_type="1" />
<com.rv.rvmine.member.view.MemberCardView
......@@ -43,7 +43,7 @@
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/size_30"
android:layout_marginRight="@dimen/size_20"
app:card_type="2" />
</RelativeLayout>
......@@ -51,7 +51,7 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_20"
android:layout_marginLeft="@dimen/size_15"
android:layout_marginTop="@dimen/size_20"
android:gravity="center|left"
android:orientation="horizontal">
......@@ -75,8 +75,8 @@
android:id="@+id/tv_describe"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_30"
android:layout_marginRight="@dimen/size_30"
android:layout_marginLeft="@dimen/size_20"
android:layout_marginRight="@dimen/size_20"
android:background="@drawable/shape_rv_bg_dark_gray"
android:minHeight="@dimen/size_120"
android:padding="@dimen/dp_10" />
......@@ -85,9 +85,9 @@
android:id="@+id/btn_buy"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_40"
android:layout_marginLeft="@dimen/size_30"
android:layout_marginLeft="@dimen/size_20"
android:layout_marginTop="@dimen/size_15"
android:layout_marginRight="@dimen/size_30"
android:layout_marginRight="@dimen/size_20"
android:layout_marginBottom="@dimen/size_20"
android:background="@drawable/shape_rv_bg_dark_yellow"
android:gravity="center"
......
......@@ -2,12 +2,13 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:paddingRight="@dimen/dp_10">
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:layout_weight="1">
<RelativeLayout
android:id="@+id/rl_content"
android:layout_width="@dimen/size_100"
android:layout_width="wrap_content"
android:layout_height="@dimen/size_150"
android:layout_marginTop="@dimen/size_15"
android:background="@drawable/shape_rv_bg_member_unselected">
......
......@@ -5,26 +5,146 @@
android:gravity="center_horizontal"
android:orientation="vertical">
<ImageView
android:layout_width="@dimen/size_200"
android:layout_height="@dimen/dp_40"
android:layout_marginTop="@dimen/size_15"
android:src="@drawable/member_image_mem_privilege_title" />
<RelativeLayout
android:id="@+id/rl_member_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_20"
android:visibility="gone">
<LinearLayout
android:layout_width="@dimen/size_110"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginLeft="@dimen/dp_10"
android:background="@drawable/shape_rv_bg_member_unselected"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/img_discount_top"
android:layout_width="@dimen/size_50"
android:layout_height="@dimen/size_50"
android:layout_marginTop="13dp" />
<TextView
android:id="@+id/tv_discount_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:textSize="@dimen/text_14"
android:textStyle="bold" />
<Button
android:id="@+id/btn_disount_use"
android:layout_width="@dimen/size_80"
android:layout_height="@dimen/size_28"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginBottom="@dimen/size_8"
android:background="@drawable/shape_rv_bg_member_top_purple"
android:gravity="center"
android:text="@string/tv_use_now"
android:textColor="@color/white"
android:textSize="@dimen/sp_12" />
</LinearLayout>
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_width="@dimen/size_110"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_20"
android:layout_centerInParent="true"
android:layout_marginLeft="@dimen/dp_10"
android:background="@drawable/shape_rv_bg_member_unselected"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/img_freeday_top"
android:layout_width="@dimen/size_50"
android:layout_height="@dimen/size_50"
android:layout_marginTop="13dp" />
<TextView
android:id="@+id/tv_freeday_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:textSize="@dimen/text_14"
android:textStyle="bold" />
<Button
android:id="@+id/btn_freeday_use"
android:layout_width="@dimen/size_80"
android:layout_height="@dimen/size_28"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginBottom="@dimen/size_8"
android:background="@drawable/shape_rv_bg_member_top_purple"
android:gravity="center"
android:text="@string/tv_use_now"
android:textColor="@color/white"
android:textSize="@dimen/sp_12" />
</LinearLayout>
<LinearLayout
android:layout_width="@dimen/size_110"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="@dimen/dp_10"
android:numColumns="3"
android:orientation="horizontal" />
android:background="@drawable/shape_rv_bg_member_unselected"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/img_free_top"
android:layout_width="@dimen/size_50"
android:layout_height="@dimen/size_50"
android:layout_marginTop="13dp"
android:src="@drawable/member_icon_free" />
<TextView
android:id="@+id/tv_free_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:text="@string/tv_outdoors_act"
android:textSize="@dimen/text_14"
android:textStyle="bold" />
<Button
android:layout_width="@dimen/size_80"
android:layout_height="@dimen/size_28"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginBottom="@dimen/size_8"
android:background="@drawable/shape_rv_bg_member_top_grap"
android:enabled="false"
android:gravity="center"
android:text="@string/tv_please_wait"
android:textColor="@color/white"
android:textSize="@dimen/sp_12" />
</LinearLayout>
</RelativeLayout>
</HorizontalScrollView>
<ImageView
android:layout_width="160dp"
android:layout_height="@dimen/size_32"
android:layout_marginTop="@dimen/size_15"
android:src="@drawable/member_image_mem_privilege_title" />
<GridView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_5"
android:layout_marginTop="@dimen/size_20"
android:layout_marginRight="@dimen/size_5"
android:orientation="horizontal" />
<LinearLayout
android:layout_width="match_parent"
......@@ -37,15 +157,16 @@
android:id="@+id/img_agree"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_10"
android:paddingLeft="@dimen/dp_10"
android:paddingTop="@dimen/dp_10"
android:paddingRight="@dimen/size_5"
android:paddingBottom="@dimen/dp_10"
android:src="@drawable/common_icon_selected" />
<TextView
android:id="@+id/tv_agreement"
android:layout_width="match_parent"
android:layout_height="@dimen/size_30"
android:layout_marginLeft="@dimen/size_5"
android:drawablePadding="@dimen/size_5"
android:gravity="left|center_vertical"
android:text="@string/tv_agreement" />
......
<?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="match_parent"
android:layout_marginTop="@dimen/size_20"
android:orientation="horizontal">
</LinearLayout>
......@@ -37,11 +37,15 @@
<string name="tv_driver">驾驶人</string>
<string name="tv_traveler">出游人</string>
<string name="tv_my_release">我的发布</string>
<string name="tv_open_membership">立即开通普通会员</string>
<string name="tv_title_member_center">会员中心</string>
<string name="tv_outdoors_act">户外活动</string>
<string name="tv_agreement">同意欣新房车 《会员服务协议会员规则》 </string>
<string name="tv_use_now">马上使用</string>
<string name="tv_please_wait">敬请期待</string>
</resources>
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