Merge remote-tracking branch 'origin/master'

This commit is contained in:
2026-04-20 12:02:58 +08:00
103 changed files with 5142 additions and 735 deletions

View File

@@ -477,6 +477,18 @@
<activity
android:name=".view.settings.PersonalSignatureActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.ContactListActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.VisitorActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.GenderActiveActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.IntimacyListActivity"
android:screenOrientation="portrait" />
<receiver android:name=".view.main.receiver.NotificationClickReceiver" /> <!-- 微信支付 -->
<activity

View File

@@ -66,6 +66,7 @@ public class ConstUrl {
public final static String THIRD = getUrl(BASE_URL, AUTH_FIELD, "third");
public final static String SET_USER_INFO = getUrl(BASE_URL, USER_FIELD, "saveinfo");
public final static String GET_USER_INFO = getUrl(BASE_URL, USER_FIELD, "home");
public final static String INTIMACY_LIST = getUrl(BASE_URL, USER_FIELD, "intimacy_list");
public final static String GET_USER_MY_DYNAMIC = getUrl(BASE_URL, USER_FIELD, "my_dynamic_list");
public final static String GET_USER_IS_VIP = getUrl(BASE_URL, USER_FIELD, "ifVip");
public final static String GET_DYNAMIC_LIST = getUrl(BASE_URL, ZONE_FIELD, "lists");
@@ -115,8 +116,10 @@ public class ConstUrl {
public final static String TRACER_LIST = getUrl(BASE_URL, USER_FIELD, "viewer_list");
public final static String VISITOR_LIST = getUrl(BASE_URL, USER_FIELD, "visitor_list");
public final static String VISITOR_LIST_NEW = getUrl(BASE_URL, USER_FIELD, "visitor_list_new");
public final static String GETADVERT = getUrl(BASE_URL, USER_FIELD, "getAdvert"); //广告
public final static String FOCUS_LIST = getUrl(BASE_URL, USER_FIELD, "follow_list");
public final static String FRIEND_LIST = getUrl(BASE_URL, USER_FIELD, "friend_list");
public final static String FANS_LIST = getUrl(BASE_URL, USER_FIELD, "fans_list");
public final static String RECEIVED_GIFT_LIST = getUrl(BASE_URL, USER_FIELD, "gift_list");
public final static String GET_CHAT_INFO = getUrl(BASE_URL, CHAT_FIELD, "call");
@@ -136,6 +139,7 @@ public class ConstUrl {
public final static String BIND_PHONE = getUrl(BASE_URL, USER_FIELD, "bind_mobile");
public final static String REAL_NAME_ATTEST = getUrl(BASE_URL, "", "attest/realNameAttest");
public final static String BIND_PLATFORM = getUrl(BASE_URL, USER_FIELD, "bind_platform");
public final static String SET_DO_NOT_DISTURB = getUrl(BASE_URL, USER_FIELD, "set_do_not_disturb");
public final static String CHANGE_VIDEO_STATUS = getUrl(BASE_URL, ANCHOR_FIELD, "set_video_status");
public final static String SWITCH_SERVICE_NUM = getUrl(BASE_URL, ANCHOR_FIELD, "switchServiceNum");
public final static String GET_GLOBAL_CONFIG = getUrl(BASE_URL, APP_FIELD, "config");
@@ -173,6 +177,7 @@ public class ConstUrl {
public final static String RECOMMEND_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "recommend_anchors");
public final static String NEW_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "new_anchors");
public final static String ACTIVE_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "active_anchors");
public final static String HOME_DATA = getUrl(BASE_URL, "home/", "index");
public final static String COVER_VIDEO = getUrl(BASE_URL, INDEX_FIELD, "cover_video");
public final static String CITY_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "city_anchors");
public final static String CHAT_TIP = getUrl(BASE_URL, CHAT_FIELD, "chat_tip");

View File

@@ -66,4 +66,6 @@ public class Constant {
public final static String AES_PASSWORD = "!qianyan20260315";
public static boolean IS_LOGIN_AGREEMENT_CHECK = false;
public final static String FRIEND_SELECT = "friend_select";
}

View File

@@ -1,29 +1,117 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.settings.adapter.ContactListAdapter;
import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.model.settings.SocialBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
import org.jetbrains.annotations.NotNull;
public class MainLookMeAdapter extends BaseQuickAdapter<LookMeBean, BaseViewHolder> {
public class MainLookMeAdapter extends BaseQuickAdapter<SocialBean, BaseViewHolder> {
private Context mContext;
private int mType;
public MainLookMeAdapter(int layoutResId, Context context) {
public MainLookMeAdapter(int layoutResId, Context context, int type) {
super(layoutResId);
this.mContext = context;
this.mType = type;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, LookMeBean lookMeBean) {
SimpleDraweeView list_photo = baseViewHolder.getView(R.id.list_photo);
protected void convert(@NotNull BaseViewHolder baseViewHolder, SocialBean bean) {
list_photo.setImageURI(StrU.getResourcePath(lookMeBean.getAvatar_url(), mContext));
SimpleDraweeView photo = baseViewHolder.getView(R.id.list_photo);
TextView name = baseViewHolder.getView(R.id.social_list_name);
View redPoint = baseViewHolder.getView(R.id.social_red_point);
ImageView ivMemberSign = baseViewHolder.getView(R.id.iv_member_sign);
TextView tv_sign = baseViewHolder.getView(R.id.tv_sign);
RelativeLayout rl_online_bg = baseViewHolder.getView(R.id.rl_online_bg);
TextView tv_online = baseViewHolder.getView(R.id.tv_online);
LinearLayout ll_visit_time = baseViewHolder.getView(R.id.ll_visit_time);
TextView tv_add_time = baseViewHolder.getView(R.id.tv_add_time);
TextView tv_visit_number = baseViewHolder.getView(R.id.tv_visit_number);
TextView tv_chat = baseViewHolder.getView(R.id.tv_chat);
RelativeLayout rl_item = baseViewHolder.getView(R.id.rl_item);
if (mType == 0) {
ll_visit_time.setVisibility(View.VISIBLE);
tv_chat.setVisibility(View.GONE);
tv_add_time.setText(bean.getAdd_time() + "访问");
tv_visit_number.setText(bean.getVisit_times() + "");
}else if (mType == 1) {
ll_visit_time.setVisibility(View.GONE);
tv_chat.setVisibility(View.VISIBLE);
tv_chat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NimUIKit.startP2PSession(mContext, bean.getUserid() + "");
}
});
}
photo.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
name.setText(bean.getNickname());
// if (1 == bean.getIs_watch()) {
// redPoint.setVisibility(View.GONE);
// } else {
// redPoint.setVisibility(View.VISIBLE);
// }
if (0 == bean.getVip()) {
ivMemberSign.setVisibility(View.VISIBLE);
ivMemberSign.setImageResource(R.drawable.ic_pvip);
} else if (1 == bean.getVip()) {
ivMemberSign.setVisibility(View.VISIBLE);
ivMemberSign.setImageResource(R.drawable.ic_gvip);
} else {
ivMemberSign.setVisibility(View.GONE);
}
if (TextUtils.isEmpty(bean.getSignature())) {
tv_sign.setVisibility(View.INVISIBLE);
}else {
tv_sign.setVisibility(View.VISIBLE);
tv_sign.setText(bean.getSignature());
}
if (bean.getOnline_status() == 0) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_not_online_bg);
tv_online.setText("离线");
}else if (bean.getOnline_status() == 1) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_online_bg);
tv_online.setText("在线");
}else if (bean.getOnline_status() == 2) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_activi_bg);
tv_online.setText("活跃");
}
rl_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(mContext, MainPageActivity.class);
intent.putExtra("userId", bean.getUserid());
mContext.startActivity(intent); }
});
}
}

View File

@@ -1,9 +1,13 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.cardview.widget.CardView;
@@ -11,15 +15,17 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.utils.UiUtils;
import net.lucode.hackware.magicindicator.buildins.UIUtil;
import org.jetbrains.annotations.NotNull;
public class MainRecommendAdapter extends BaseQuickAdapter<LookMeBean, BaseViewHolder> {
public class MainRecommendAdapter extends BaseQuickAdapter<AnchorBean, BaseViewHolder> {
private Context mContext;
private int mTabType; //1代表推荐 2代表语聊 0代表其他
@@ -36,14 +42,38 @@ public class MainRecommendAdapter extends BaseQuickAdapter<LookMeBean, BaseViewH
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, LookMeBean lookMeBean) {
recommend(baseViewHolder,lookMeBean);
protected void convert(@NotNull BaseViewHolder baseViewHolder, AnchorBean bean) {
recommend(baseViewHolder,bean);
}
private void recommend(BaseViewHolder baseViewHolder, LookMeBean lookMeBean) {
private void recommend(BaseViewHolder baseViewHolder, AnchorBean bean) {
CardView card_view = baseViewHolder.getView(R.id.card_view);
LinearLayout ll_svip_price = baseViewHolder.getView(R.id.ll_svip_price);
LinearLayout ll_svip_price2 = baseViewHolder.getView(R.id.ll_svip_price2);
TextView tv_member_price = baseViewHolder.getView(R.id.tv_member_price);
TextView tv_member_price2 = baseViewHolder.getView(R.id.tv_member_price2);
SimpleDraweeView list_photo = baseViewHolder.getView(R.id.ri_cover);
TextView tv_name = baseViewHolder.getView(R.id.tv_name);
TextView tv_signature = baseViewHolder.getView(R.id.tv_signature);
TextView tv_price = baseViewHolder.getView(R.id.tv_price);
View view_online_status = baseViewHolder.getView(R.id.view_online_status);
TextView tv_online_status = baseViewHolder.getView(R.id.tv_online_status);
LinearLayout ll_star = baseViewHolder.getView(R.id.ll_star);
LinearLayout ll_star2 = baseViewHolder.getView(R.id.ll_star2);
ImageView iv_star_1 = baseViewHolder.getView(R.id.iv_star_1);
ImageView iv_star_2 = baseViewHolder.getView(R.id.iv_star_2);
ImageView iv_star_3 = baseViewHolder.getView(R.id.iv_star_3);
ImageView iv_star_4 = baseViewHolder.getView(R.id.iv_star_4);
ImageView iv_star_5 = baseViewHolder.getView(R.id.iv_star_5);
ImageView iv_star_12 = baseViewHolder.getView(R.id.iv_star_12);
ImageView iv_star_22 = baseViewHolder.getView(R.id.iv_star_22);
ImageView iv_star_32 = baseViewHolder.getView(R.id.iv_star_32);
ImageView iv_star_42 = baseViewHolder.getView(R.id.iv_star_42);
ImageView iv_star_52 = baseViewHolder.getView(R.id.iv_star_52);
if (mTabType == 1) {
int recommend_layout_change = SPUtils.getInt(mContext, "recommend_layout_change");
@@ -51,39 +81,171 @@ public class MainRecommendAdapter extends BaseQuickAdapter<LookMeBean, BaseViewH
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, (int) mContext.getResources().getDimension(R.dimen.dp230));
card_view.setLayoutParams(layoutParams);
tv_name.setTextSize(12);
tv_name.setMaxEms(5);
tv_signature.setTextSize(10);
tv_signature.setTextColor(Color.parseColor("#80FFFFFF"));
tv_signature.setMaxEms(6);
tv_price.setTextSize(8);
if (bean.getMember_discount_price() == 0) {
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.GONE);
} else {
ll_svip_price.setVisibility(View.VISIBLE);
ll_svip_price2.setVisibility(View.GONE);
tv_member_price.setText(bean.getMember_discount_price() + "金币/分");
}
ll_star.setVisibility(View.VISIBLE);
ll_star2.setVisibility(View.GONE);
setStarLevel(bean, iv_star_1, iv_star_2, iv_star_3, iv_star_4, iv_star_5);
}else if (recommend_layout_change == 1) {
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, (int) mContext.getResources().getDimension(R.dimen.dp336));
card_view.setLayoutParams(layoutParams);
tv_name.setTextSize(16);
tv_name.setMaxEms(8);
tv_signature.setTextSize(14);
tv_signature.setTextColor(Color.WHITE);
tv_signature.setMaxEms(12);
tv_price.setTextSize(12);
if (bean.getMember_discount_price() == 0) {
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.GONE);
} else {
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.VISIBLE);
tv_member_price2.setText(bean.getMember_discount_price() + "金币/分");
}
ll_star.setVisibility(View.GONE);
ll_star2.setVisibility(View.VISIBLE);
setStarLevel(bean, iv_star_12, iv_star_22, iv_star_32, iv_star_42, iv_star_52);
}
ll_svip_price.setVisibility(View.VISIBLE);
tv_price.setText(bean.getPrice() + "金币/分");
}else if (mTabType == 2) {
int voice_layout_change = SPUtils.getInt(mContext, "voice_layout_change");
if (voice_layout_change == 0) { //0代表2格 1代表1格
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, (int) mContext.getResources().getDimension(R.dimen.dp230));
card_view.setLayoutParams(layoutParams);
tv_name.setTextSize(12);
tv_name.setMaxEms(5);
tv_signature.setTextSize(10);
tv_signature.setTextColor(Color.parseColor("#80FFFFFF"));
tv_signature.setMaxEms(6);
tv_price.setTextSize(8);
ll_star.setVisibility(View.VISIBLE);
ll_star2.setVisibility(View.GONE);
setStarLevel(bean, iv_star_1, iv_star_2, iv_star_3, iv_star_4, iv_star_5);
}else if (voice_layout_change == 1) {
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, (int) mContext.getResources().getDimension(R.dimen.dp336));
card_view.setLayoutParams(layoutParams);
tv_name.setTextSize(16);
tv_name.setMaxEms(8);
tv_signature.setTextSize(14);
tv_signature.setTextColor(Color.WHITE);
tv_signature.setMaxEms(12);
tv_price.setTextSize(12);
ll_star.setVisibility(View.GONE);
ll_star2.setVisibility(View.VISIBLE);
setStarLevel(bean, iv_star_12, iv_star_22, iv_star_32, iv_star_42, iv_star_52);
}
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.GONE);
tv_price.setText(bean.getVoice_price() + "金币/分");
}else {
LinearLayout.LayoutParams layoutParams =
new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, (int) mContext.getResources().getDimension(R.dimen.dp336));
card_view.setLayoutParams(layoutParams);
ll_svip_price.setVisibility(View.VISIBLE);
tv_name.setTextSize(16);
tv_name.setMaxEms(8);
tv_signature.setTextSize(14);
tv_signature.setTextColor(Color.WHITE);
tv_signature.setMaxEms(12);
tv_price.setTextSize(12);
if (bean.getMember_discount_price() == 0) {
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.GONE);
} else {
ll_svip_price.setVisibility(View.GONE);
ll_svip_price2.setVisibility(View.VISIBLE);
tv_member_price2.setText(bean.getMember_discount_price() + "金币/分");
}
ll_star.setVisibility(View.GONE);
ll_star2.setVisibility(View.VISIBLE);
setStarLevel(bean, iv_star_12, iv_star_22, iv_star_32, iv_star_42, iv_star_52);
tv_price.setText(bean.getPrice() + "金币/分");
}
list_photo.setImageURI(StrU.getResourcePath(bean.getCover(), mContext));
tv_name.setText(bean.getNickname());
tv_signature.setText(bean.getSignature());
tv_signature.setText("我说心动之上 哈哈哈哈");
SimpleDraweeView list_photo = baseViewHolder.getView(R.id.ri_cover);
list_photo.setImageURI(StrU.getResourcePath(lookMeBean.getAvatar_url(), mContext));
if (bean.getOnline_status() == 0) {
view_online_status.setBackgroundResource(R.drawable.shape_999999_oval_bg);
tv_online_status.setText("离线");
}else if (bean.getOnline_status() == 1) {
view_online_status.setBackgroundResource(R.drawable.shape_6ce4b7_oval_bg);
tv_online_status.setText("在线");
}else if (bean.getOnline_status() == 2) {
view_online_status.setBackgroundResource(R.drawable.shape_f2b854_oval_bg);
tv_online_status.setText("活跃");
}
}
private void setStarLevel(AnchorBean bean, ImageView ivStar1, ImageView ivStar2, ImageView ivStar3, ImageView ivStar4, ImageView ivStar5) {
if (bean.getStar_level() == 1) {
ivStar1.setVisibility(View.VISIBLE);
ivStar2.setVisibility(View.GONE);
ivStar3.setVisibility(View.GONE);
ivStar4.setVisibility(View.GONE);
ivStar5.setVisibility(View.GONE);
} else if (bean.getStar_level() == 2) {
ivStar1.setVisibility(View.VISIBLE);
ivStar2.setVisibility(View.VISIBLE);
ivStar3.setVisibility(View.GONE);
ivStar4.setVisibility(View.GONE);
ivStar5.setVisibility(View.GONE);
} else if (bean.getStar_level() == 3) {
ivStar1.setVisibility(View.VISIBLE);
ivStar2.setVisibility(View.VISIBLE);
ivStar3.setVisibility(View.VISIBLE);
ivStar4.setVisibility(View.GONE);
ivStar5.setVisibility(View.GONE);
} else if (bean.getStar_level() == 4) {
ivStar1.setVisibility(View.VISIBLE);
ivStar2.setVisibility(View.VISIBLE);
ivStar3.setVisibility(View.VISIBLE);
ivStar4.setVisibility(View.VISIBLE);
ivStar5.setVisibility(View.GONE);
} else if (bean.getStar_level() == 5) {
ivStar1.setVisibility(View.VISIBLE);
ivStar2.setVisibility(View.VISIBLE);
ivStar3.setVisibility(View.VISIBLE);
ivStar4.setVisibility(View.VISIBLE);
ivStar5.setVisibility(View.VISIBLE);
}
}
}

View File

@@ -246,6 +246,31 @@ public class MainManager {
}
};
// task.start();
task.start(false);
}
public static void getHomeData(BaseActivity activity,
String type,
final int page,
HttpUiCallBack<ChannelAnchorBean> httpUiCallBack) {
HttpWithUiTask<ChannelAnchorBean> task = new HttpWithUiTask<ChannelAnchorBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<ChannelAnchorBean> run() throws Exception {
final String url = ConstUrl.HOME_DATA;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<ChannelAnchorBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("type", type)
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
// task.start();
task.start(false);
}
@@ -600,7 +625,7 @@ public class MainManager {
.setResultType(new TType<HttpResult<MainPageAnchorBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("status", status + "")
.addParam("value", status + "")
.setUrl(url);
HttpRequest request = builder.build();
@@ -611,6 +636,28 @@ public class MainManager {
task.start();
}
public static void changeVideoStatus2(BaseActivity activity,
final int status,
HttpUiCallBack<MainPageAnchorBean> httpUiCallBack) {
HttpWithUiTask<MainPageAnchorBean> task = new HttpWithUiTask<MainPageAnchorBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<MainPageAnchorBean> run() throws Exception {
final String url = ConstUrl.SET_DO_NOT_DISTURB;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<MainPageAnchorBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("do_not_disturb", status + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
public static void changeswitchServiceNum(BaseActivity activity,
final int status,
HttpUiCallBack<MainPageSwitchSwerviceNumBean> httpUiCallBack) {
@@ -904,6 +951,30 @@ public class MainManager {
task.start();
}
public static void getGenderActiveList(BaseActivity activity,
final int gender,
final int page,
HttpUiCallBack<UserGenderListBean> httpUiCallBack) {
HttpWithUiTask<UserGenderListBean> task = new HttpWithUiTask<UserGenderListBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<UserGenderListBean> run() throws Exception {
String url = ConstUrl.GET_ACTIVE_USERS;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<UserGenderListBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("gender", gender + "")
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
public static void getSystemVersion(BaseActivity activity,
HttpUiCallBack<SystemVersionBean> httpUiCallBack) {
HttpWithUiTask<SystemVersionBean> task = new HttpWithUiTask<SystemVersionBean>(activity, httpUiCallBack) {

View File

@@ -0,0 +1,137 @@
package com.xuebiping.bolizhuzi.controller.settings.adapter;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.model.settings.SocialBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
import org.jetbrains.annotations.NotNull;
public class ContactListAdapter extends BaseQuickAdapter<SocialBean, BaseViewHolder> {
private Context mContext;
private int mType;
public ContactListAdapter(int layoutResId, Context context, int type) {
super(layoutResId);
this.mContext = context;
this.mType = type;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, SocialBean bean) {
SimpleDraweeView photo = baseViewHolder.getView(R.id.list_photo);
TextView name = baseViewHolder.getView(R.id.social_list_name);
TextView focus = baseViewHolder.getView(R.id.tv_focus);
View redPoint = baseViewHolder.getView(R.id.social_red_point);
ImageView ivMemberSign = baseViewHolder.getView(R.id.iv_member_sign);
TextView tv_sign = baseViewHolder.getView(R.id.tv_sign);
RelativeLayout rl_online_bg = baseViewHolder.getView(R.id.rl_online_bg);
TextView tv_online = baseViewHolder.getView(R.id.tv_online);
RelativeLayout rl_item = baseViewHolder.getView(R.id.rl_item);
photo.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
name.setText(bean.getNickname());
// if (mType == 0 || mType == 1) {
// focus.setText("已关注");
// focus.setTextColor(Color.parseColor("#dddddd"));
// focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
// }else if (mType == 2) {
// if (bean.getIs_follow() == 1) {
// focus.setText("已关注");
// focus.setTextColor(Color.parseColor("#dddddd"));
// focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
// }else {
// focus.setText("关注");
// focus.setTextColor(mContext.getResources().getColor(R.color.yellow_ffd33e));
// focus.setBackgroundResource(R.drawable.shape_main_color_line_oval_bg);
// }
// }
if (bean.getIs_follow() == 1) {
focus.setText("已关注");
focus.setTextColor(Color.parseColor("#dddddd"));
focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
}else {
focus.setText("关注");
focus.setTextColor(mContext.getResources().getColor(R.color.yellow_ffd33e));
focus.setBackgroundResource(R.drawable.shape_main_color_line_oval_bg);
}
// if (1 == bean.getIs_watch()) {
// redPoint.setVisibility(View.GONE);
// } else {
// redPoint.setVisibility(View.VISIBLE);
// }
if (0 == bean.getVip()) {
ivMemberSign.setVisibility(View.VISIBLE);
ivMemberSign.setImageResource(R.drawable.ic_pvip);
} else if (1 == bean.getVip()) {
ivMemberSign.setVisibility(View.VISIBLE);
ivMemberSign.setImageResource(R.drawable.ic_gvip);
} else {
ivMemberSign.setVisibility(View.GONE);
}
if (TextUtils.isEmpty(bean.getSignature())) {
tv_sign.setVisibility(View.INVISIBLE);
}else {
tv_sign.setVisibility(View.VISIBLE);
tv_sign.setText(bean.getSignature());
}
if (bean.getOnline_status() == 0) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_not_online_bg);
tv_online.setText("离线");
}else if (bean.getOnline_status() == 1) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_online_bg);
tv_online.setText("在线");
}else if (bean.getOnline_status() == 2) {
rl_online_bg.setBackgroundResource(R.drawable.look_me_activi_bg);
tv_online.setText("活跃");
}
focus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (null != mOnFocusClickListener) {
mOnFocusClickListener.onFocusClick(baseViewHolder.getLayoutPosition(), bean.getUserid(), bean.getIs_follow());
}
}
});
rl_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(mContext, MainPageActivity.class);
intent.putExtra("userId", bean.getUserid());
mContext.startActivity(intent); }
});
}
private OnFocusClickListener mOnFocusClickListener;
public void setOnFocusClickListener(OnFocusClickListener onFocusClickListener) {
mOnFocusClickListener = onFocusClickListener;
}
public interface OnFocusClickListener {
void onFocusClick(int position, int user_id, int is_follow);
}
}

View File

@@ -0,0 +1,87 @@
package com.xuebiping.bolizhuzi.controller.settings.adapter;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
import com.flyco.roundview.RoundTextView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit;
import com.xuebiping.bolizhuzi.model.settings.UserInfoBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
import org.jetbrains.annotations.NotNull;
public class GenderActiveAdapter extends BaseQuickAdapter<UserInfoBean, BaseViewHolder> {
private Context mContext;
public GenderActiveAdapter(int layoutResId, Context context) {
super(layoutResId);
this.mContext = context;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, UserInfoBean bean) {
LinearLayout lin_gender_item = baseViewHolder.getView(R.id.lin_gender_item);
SimpleDraweeView user_head = baseViewHolder.getView(R.id.user_head);
View view_online_status = baseViewHolder.getView(R.id.view_online_status);
TextView tv_nick_name = baseViewHolder.getView(R.id.tv_nick_name);
ImageView iv_member_sign = baseViewHolder.getView(R.id.iv_member_sign);
TextView tv_user_info = baseViewHolder.getView(R.id.tv_user_info);
TextView iv_luck_hi = baseViewHolder.getView(R.id.iv_luck_hi);
user_head.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
if (bean.getOnline_status() == 0) {
view_online_status.setBackgroundResource(R.drawable.shape_999999_oval_bg);
}else if (bean.getOnline_status() == 1) {
view_online_status.setBackgroundResource(R.drawable.shape_6ce4b7_oval_bg);
}else if (bean.getOnline_status() == 2) {
view_online_status.setBackgroundResource(R.drawable.shape_f2b854_oval_bg);
}
tv_nick_name.setText(bean.getNickname());
if (0 == bean.getVip()) {
iv_member_sign.setVisibility(View.VISIBLE);
iv_member_sign.setImageResource(R.drawable.ic_pvip);
} else if (1 == bean.getVip()) {
iv_member_sign.setVisibility(View.VISIBLE);
iv_member_sign.setImageResource(R.drawable.ic_gvip);
} else {
iv_member_sign.setVisibility(View.GONE);
}
if (TextUtils.isEmpty(bean.getCity())) {
tv_user_info.setText((bean.getGender() == 2 ? "" : "") + " | " + bean.getAge());
}else {
tv_user_info.setText(bean.getCity() + " | " + (bean.getGender() == 2 ? "" : "") + " | " + bean.getAge());
}
iv_luck_hi.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NimUIKit.startP2PSession(mContext, bean.getUser_id() + "");
}
});
lin_gender_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(mContext, MainPageActivity.class);
intent.putExtra("userId", bean.getUserid());
mContext.startActivity(intent);
}
});
}
}

View File

@@ -12,7 +12,9 @@ import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.main.adapter.ViewHolder;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.settings.MemberPrivilegesInfo;
@@ -44,7 +46,6 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public void setOptions(List<MemberPrivilegesInfo> list) {
mOptions = list;
notifyDataSetChanged();
Log.i("TAG", "setOptions: mOptions---->" + mOptions.size());
}
public List<MemberPrivilegesInfo> getmOptions() {
@@ -65,120 +66,125 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
MemberPrivilegesInfo options = mOptions.get(position);
Holder dataHolder = (Holder) holder;
if (vipType == 0) {
// dataHolder.cl_privilege.setBackgroundResource(R.drawable.member_privilege_bg);
dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip);
// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#61380C"));
// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#A6793E"));
} else {
// dataHolder.cl_privilege.setBackgroundResource(R.drawable.super_member_privilege_bg);
dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip1);
// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#DDD6FF"));
// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#AAA0F0"));
}
switch (options.getId()) {
case 0:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege1);
dataHolder.tv_member_privilege_name.setText("私信畅聊特权");
dataHolder.tv_privilege_dec.setText(options.getDesc());
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege1);
dataHolder.tv_member_privilege_name.setText("加送金币");
dataHolder.tv_privilege_dec.setText("额外赠送金币");
if (TextUtils.equals("VISIBLE", options.getName())) {
dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE);
dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getGoodsList();
}
});
} else {
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
}
}
break;
case 1:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege4);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege2);
}
dataHolder.tv_member_privilege_name.setText("视频畅聊卡");
dataHolder.tv_privilege_dec.setText(options.getDesc());
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MemberTipsDialog tipsDialog = new MemberTipsDialog(mContext, "隐身功能,开启后您的上线、榜单、充值、登录、访问都会隐身,并且群发和速配免打扰。");
tipsDialog.show();
}
});
break;
case 2:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege3);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege3);
}
dataHolder.tv_member_privilege_name.setText("充值加送金币");
dataHolder.tv_privilege_dec.setText("额外赠送金币");
// if (TextUtils.equals("VISIBLE", options.getName())) {
// dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE);
// dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// MemberTipsDialog tipsDialog = new MemberTipsDialog(mContext, "专属客服微信号: Zdhfa1234");
// tipsDialog.show();
// }
// });
dataHolder.iv_privilege_img.setImageURI(ConstUrl.IMAGE_URL + options.getIcon());
dataHolder.tv_member_privilege_name.setText(options.getName());
dataHolder.tv_privilege_dec.setText(options.getDesc());
// if (vipType == 0) {
//// dataHolder.cl_privilege.setBackgroundResource(R.drawable.member_privilege_bg);
// dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip);
//// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#61380C"));
//// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#A6793E"));
// } else {
//// dataHolder.cl_privilege.setBackgroundResource(R.drawable.super_member_privilege_bg);
// dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip1);
//// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#DDD6FF"));
//// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#AAA0F0"));
// }
// switch (options.getId()) {
// case 0:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege1);
// dataHolder.tv_member_privilege_name.setText("私信畅聊特权");
// dataHolder.tv_privilege_dec.setText(options.getDesc());
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// } else {
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege1);
// dataHolder.tv_member_privilege_name.setText("加送金币");
// dataHolder.tv_privilege_dec.setText("额外赠送金币");
// if (TextUtils.equals("VISIBLE", options.getName())) {
// dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE);
// dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// getGoodsList();
// }
// });
// } else {
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// }
// }
break;
case 3:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege7);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege7);
}
dataHolder.tv_member_privilege_name.setText("消息读取状态");
dataHolder.tv_privilege_dec.setText("可查看是否已读");
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
break;
case 4:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege5);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege4);
}
dataHolder.tv_member_privilege_name.setText("专属会员标识");
dataHolder.tv_privilege_dec.setText("头像框、聊天气泡");
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
break;
case 5:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege2);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege5);
}
dataHolder.tv_member_privilege_name.setText("隐身模式");
dataHolder.tv_privilege_dec.setText("全平台隐身畅玩");
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
break;
case 6:
if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege6);
} else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege6);
}
dataHolder.tv_member_privilege_name.setText("聊天气泡框");
dataHolder.tv_privilege_dec.setText("VIP专属聊天框");
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
break;
}
// break;
// case 1:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege4);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege2);
// }
// dataHolder.tv_member_privilege_name.setText("视频畅聊卡");
// dataHolder.tv_privilege_dec.setText(options.getDesc());
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// MemberTipsDialog tipsDialog = new MemberTipsDialog(mContext, "隐身功能,开启后您的上线、榜单、充值、登录、访问都会隐身,并且群发和速配免打扰。");
// tipsDialog.show();
// }
// });
// break;
// case 2:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege3);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege3);
// }
// dataHolder.tv_member_privilege_name.setText("充值加送金币");
// dataHolder.tv_privilege_dec.setText("额外赠送金币");
//// if (TextUtils.equals("VISIBLE", options.getName())) {
//// dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE);
//// dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
//// @Override
//// public void onClick(View v) {
//// MemberTipsDialog tipsDialog = new MemberTipsDialog(mContext, "专属客服微信号: Zdhfa1234");
//// tipsDialog.show();
//// }
//// });
//// } else {
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
//// }
// break;
// case 3:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege7);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege7);
// }
// dataHolder.tv_member_privilege_name.setText("消息读取状态");
// dataHolder.tv_privilege_dec.setText("可查看是否已读");
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// break;
// case 4:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege5);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege4);
// }
// dataHolder.tv_member_privilege_name.setText("专属会员标识");
// dataHolder.tv_privilege_dec.setText("头像框、聊天气泡");
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// break;
// case 5:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege2);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege5);
// }
// dataHolder.tv_member_privilege_name.setText("隐身模式");
// dataHolder.tv_privilege_dec.setText("全平台隐身畅玩");
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// break;
// case 6:
// if (vipType == 0) {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege6);
// } else {
// dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege6);
// }
// dataHolder.tv_member_privilege_name.setText("聊天气泡框");
// dataHolder.tv_privilege_dec.setText("VIP专属聊天框");
// dataHolder.iv_privilege_tip.setVisibility(View.GONE);
// break;
// }
}
@Override
@@ -188,7 +194,7 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public class Holder extends ViewHolder {
ImageView iv_privilege_img;
SimpleDraweeView iv_privilege_img;
TextView tv_member_privilege_name;
TextView tv_privilege_dec;
ImageView iv_privilege_tip;
@@ -204,25 +210,25 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
}
}
private void getGoodsList() {
SettingManager.getRechargeInfo((BaseActivity) mContext, 6, new HttpUiCallBack<RechargeListBean>() {
@Override
public void onSuccess(BaseActivity activity, RechargeListBean result, String message) {
if (result != null && result.getList() != null && result.getList().size() > 0) {
MemberRechargeDialog memberRechargeDialog = new MemberRechargeDialog(activity, result.getList());
memberRechargeDialog.show();
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
// private void getGoodsList() {
// SettingManager.getRechargeInfo((BaseActivity) mContext, 6, new HttpUiCallBack<RechargeListBean>() {
// @Override
// public void onSuccess(BaseActivity activity, RechargeListBean result, String message) {
// if (result != null && result.getList() != null && result.getList().size() > 0) {
// MemberRechargeDialog memberRechargeDialog = new MemberRechargeDialog(activity, result.getList());
// memberRechargeDialog.show();
// }
// }
//
// @Override
// public void onFailure(BaseActivity activity, String tip) {
//
// }
//
// @Override
// public void onException(BaseActivity activity, Throwable e) {
//
// }
// });
// }
}

View File

@@ -0,0 +1,48 @@
package com.xuebiping.bolizhuzi.controller.settings.adapter;
import android.content.Context;
import android.content.Intent;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.model.settings.IntimacyBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
import org.jetbrains.annotations.NotNull;
public class IntimacyAdapter extends BaseQuickAdapter<IntimacyBean, BaseViewHolder> {
private Context mContext;
public IntimacyAdapter(int layoutResId, Context context) {
super(layoutResId);
this.mContext = context;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, IntimacyBean bean) {
RelativeLayout rl_item = baseViewHolder.getView(R.id.rl_item);
SimpleDraweeView user_head = baseViewHolder.getView(R.id.user_head);
TextView tv_nick_name = baseViewHolder.getView(R.id.tv_nick_name);
TextView tv_intimacy = baseViewHolder.getView(R.id.tv_intimacy);
user_head.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
tv_nick_name.setText(bean.getNickname());
tv_intimacy.setText(bean.getTotal_consume_coin() + "");
rl_item.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(mContext, MainPageActivity.class);
intent.putExtra("userId", bean.getUser_id());
mContext.startActivity(intent);
}
});
}
}

View File

@@ -19,6 +19,7 @@ import com.xuebiping.bolizhuzi.model.settings.CancellationBean;
import com.xuebiping.bolizhuzi.model.settings.ChatPriceBean;
import com.xuebiping.bolizhuzi.model.settings.GoddessPrivilegeBean;
import com.xuebiping.bolizhuzi.model.settings.GreetingBean;
import com.xuebiping.bolizhuzi.model.settings.IntimacyListBean;
import com.xuebiping.bolizhuzi.model.settings.InvitationBean;
import com.xuebiping.bolizhuzi.model.settings.InviteDataListBean;
import com.xuebiping.bolizhuzi.model.settings.MemberBean;
@@ -315,6 +316,27 @@ public class SettingManager {
task.start();
}
public static void getIntimacyList(BaseActivity activity, final int page,
HttpUiCallBack<IntimacyListBean> httpUiCallBack) {
HttpWithUiTask<IntimacyListBean> task = new HttpWithUiTask<IntimacyListBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<IntimacyListBean> run() throws Exception {
final String url = ConstUrl.INTIMACY_LIST;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<IntimacyListBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
public static void rankWealth(BaseActivity activity,
final int type, final int page,
HttpUiCallBack<RankListBean> httpUiCallBack) {
@@ -511,6 +533,66 @@ public class SettingManager {
task.start();
}
public static void getLookData(BaseActivity activity,
final int type,
final int page,
HttpUiCallBack<SocialListBean> httpUiCallBack) {
HttpWithUiTask<SocialListBean> task = new HttpWithUiTask<SocialListBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<SocialListBean> run() throws Exception {
String url = null;
if (type == 0) {
url = ConstUrl.VISITOR_LIST_NEW;
} else if (1 == type) {
url = ConstUrl.TRACER_LIST;
}
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<SocialListBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
public static void getContactList(BaseActivity activity,
final int type,
final int page,
HttpUiCallBack<SocialListBean> httpUiCallBack) {
HttpWithUiTask<SocialListBean> task = new HttpWithUiTask<SocialListBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<SocialListBean> run() throws Exception {
String url = null;
if (type == 0) {
url = ConstUrl.FRIEND_LIST;
} else if (1 == type) {
url = ConstUrl.FOCUS_LIST;
} else if (2 == type) {
url = ConstUrl.FANS_LIST;
}
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<SocialListBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
public static void getInviteList(BaseActivity activity, final int page, String user, HttpUiCallBack<
SocialListBean> httpUiCallBack) {
HttpWithUiTask<SocialListBean> task = new HttpWithUiTask<SocialListBean>(activity, httpUiCallBack) {

View File

@@ -65,7 +65,8 @@ public class DropFake extends View {
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// circle
int[] mColors = {0xFFE69EFF, 0xFF925BF7};
// int[] mColors = {0xFFE69EFF, 0xFF925BF7};
int[] mColors = {0xFFF94F2E, 0xFFF94F2E};
Paint circlePaint = DropManager.getInstance().getCirclePaint();
circlePaint.setShader(new LinearGradient(0, 0, circleX + radius, circleY + radius, mColors, null, Shader.TileMode.CLAMP));
canvas.drawCircle(circleX, circleY, radius, circlePaint);

View File

@@ -23,6 +23,33 @@ public class AnchorBean implements Serializable {
private boolean isVideo;
private boolean is_follow;//true关注false未关注
private int anchor_tag;// 1=王牌 2=人气
private int member_discount_price; //会员优惠价格
private int star_level; //星级
private int voice_price; //语聊价格
public int getVoice_price() {
return voice_price;
}
public void setVoice_price(int voice_price) {
this.voice_price = voice_price;
}
public int getStar_level() {
return star_level;
}
public void setStar_level(int star_level) {
this.star_level = star_level;
}
public int getMember_discount_price() {
return member_discount_price;
}
public void setMember_discount_price(int member_discount_price) {
this.member_discount_price = member_discount_price;
}
public int getPrice() {
return price;

View File

@@ -8,9 +8,18 @@ public class AnchorListBean {
private String skill_name;
private String skill_icon;
private int total;
private int total_page;
private List<AnchorBean> anchors = new ArrayList<>();
private List<AnchorBean> list = new ArrayList<>();
public int getTotal_page() {
return total_page;
}
public void setTotal_page(int total_page) {
this.total_page = total_page;
}
public List<AnchorBean> getAnchors() {
return anchors;
}

View File

@@ -4,6 +4,15 @@ public class MainPageAnchorBean {
private int open_video_status;
private int open_voice_status;
private int video_status;
private int do_not_disturb;
public int getDo_not_disturb() {
return do_not_disturb;
}
public void setDo_not_disturb(int do_not_disturb) {
this.do_not_disturb = do_not_disturb;
}
public int getOpen_video_status() {
return open_video_status;

View File

@@ -8,6 +8,7 @@ import java.util.List;
public class UserGenderBean {
private int total;
private int page;
private int total_page;
private List<UserInfoBean> list = new ArrayList<>();
public int getTotal() {
@@ -33,4 +34,12 @@ public class UserGenderBean {
public void setList(List<UserInfoBean> list) {
this.list = list;
}
public int getTotal_page() {
return total_page;
}
public void setTotal_page(int total_page) {
this.total_page = total_page;
}
}

View File

@@ -0,0 +1,41 @@
package com.xuebiping.bolizhuzi.model.settings;
public class IntimacyBean {
private int user_id;
private int total_consume_coin;
private String nickname;
private String avatar;
public int getUser_id() {
return user_id;
}
public void setUser_id(int user_id) {
this.user_id = user_id;
}
public int getTotal_consume_coin() {
return total_consume_coin;
}
public void setTotal_consume_coin(int total_consume_coin) {
this.total_consume_coin = total_consume_coin;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
}

View File

@@ -0,0 +1,35 @@
package com.xuebiping.bolizhuzi.model.settings;
import java.util.ArrayList;
import java.util.List;
public class IntimacyListBean {
private int page;
private int total_page;
private List<IntimacyBean> list = new ArrayList<>();
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
public int getTotal_page() {
return total_page;
}
public void setTotal_page(int total_page) {
this.total_page = total_page;
}
public List<IntimacyBean> getList() {
return list;
}
public void setList(List<IntimacyBean> list) {
this.list = list;
}
}

View File

@@ -13,6 +13,7 @@ public class MemberBean {
private FreeBean free;
private List<String> privilege;
private List<MemberPrivilegesInfo> privileges;
private String notice;
public List<String> getPrivilege() {
return privilege;
@@ -62,6 +63,14 @@ public class MemberBean {
this.free = free;
}
public String getNotice() {
return notice;
}
public void setNotice(String notice) {
this.notice = notice;
}
@Override
public String toString() {
return "MemberBean{" +

View File

@@ -14,6 +14,9 @@ public class SocialBean {
private String city;
private int is_watch = 1;
private int vip = 2;
private String signature;
private int online_status; //0 不在线 1在线 2活跃
private int visit_times;
public int getUserid() {
return userid;
@@ -119,6 +122,30 @@ public class SocialBean {
this.vip = vip;
}
public String getSignature() {
return signature;
}
public void setSignature(String signature) {
this.signature = signature;
}
public int getOnline_status() {
return online_status;
}
public void setOnline_status(int online_status) {
this.online_status = online_status;
}
public int getVisit_times() {
return visit_times;
}
public void setVisit_times(int visit_times) {
this.visit_times = visit_times;
}
@Override
public String toString() {
return "SocialBean{" +

View File

@@ -5,6 +5,7 @@ import java.util.List;
public class SocialListBean {
private List<SocialBean> list = new ArrayList<>();
private int total_page;
private int total;
public List<SocialBean> getList() {
@@ -22,4 +23,12 @@ public class SocialListBean {
public void setTotal(int total) {
this.total = total;
}
public int getTotal_page() {
return total_page;
}
public void setTotal_page(int total_page) {
this.total_page = total_page;
}
}

View File

@@ -40,6 +40,24 @@ public class UserInfoBean {
private String signature;
private UserFrameBean user_frame;
private int user_type;
private int online_status;
private int do_not_disturb;
public int getDo_not_disturb() {
return do_not_disturb;
}
public void setDo_not_disturb(int do_not_disturb) {
this.do_not_disturb = do_not_disturb;
}
public int getOnline_status() {
return online_status;
}
public void setOnline_status(int online_status) {
this.online_status = online_status;
}
public int getUser_type() {
return user_type;

View File

@@ -4,6 +4,7 @@ import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -11,12 +12,18 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.model.settings.SocialBean;
import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,14 +32,19 @@ import java.util.List;
public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListener {
private int mType = 0; //0看过我的 1我的足迹
private View v;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private LinearLayout mRl_no_data;
private MainLookMeAdapter mMainLookMeAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<SocialBean> mData = new ArrayList<>();
@Nullable
@org.jetbrains.annotations.Nullable
@@ -40,34 +52,63 @@ public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListene
public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
v = inflater.inflate(R.layout.fragment_look_me, container, false);
initView(v);
getData(mPage);
getLookData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
mRl_no_data = v.findViewById(R.id.rl_no_data);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity());
mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity(), mType);
mRv_recommend_list.setAdapter(mMainLookMeAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
private void getData(int page) {
private void getLookData(int page){
SettingManager.getLookData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<SocialListBean>() {
@Override
public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
finishFresh();
if (result != null) {
mTotalPage = result.getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<SocialBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
if (mPage == 1) {
mRl_no_data.setVisibility(View.GONE);
mRv_recommend_list.setVisibility(View.VISIBLE);
}
mMainLookMeAdapter.setList(mData);
} else {
if (mPage == 1) {
mRl_no_data.setVisibility(View.VISIBLE);
mRv_recommend_list.setVisibility(View.GONE);
}
}
}
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
}
finishFresh();
mMainLookMeAdapter.setList(mData);
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -78,12 +119,17 @@ public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListene
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getLookData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
getLookData(mPage);
}
}

View File

@@ -11,12 +11,18 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,12 +31,15 @@ import java.util.List;
public class MainFiveStarFragment extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "five_star";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@Nullable
@@ -57,21 +66,42 @@ public class MainFiveStarFragment extends Fragment implements OnRefreshLoadMoreL
}
private void getData(int page) {
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
if (page == 1) {
mData.clear();
}
if (mPage == 1) {
mData.clear();
}
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
finishFresh();
mAdapter.setList(mData);
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -82,7 +112,12 @@ public class MainFiveStarFragment extends Fragment implements OnRefreshLoadMoreL
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -11,12 +11,19 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,12 +32,15 @@ import java.util.List;
public class MainFourStarFragment extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "four_star";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@Nullable
@@ -57,21 +67,42 @@ public class MainFourStarFragment extends Fragment implements OnRefreshLoadMoreL
}
private void getData(int page) {
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
if (page == 1) {
mData.clear();
}
if (mPage == 1) {
mData.clear();
}
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
finishFresh();
mAdapter.setList(mData);
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -82,7 +113,12 @@ public class MainFourStarFragment extends Fragment implements OnRefreshLoadMoreL
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -11,12 +11,18 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,12 +31,15 @@ import java.util.List;
public class MainNewPeopleFragment extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "new";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@Nullable
@@ -57,21 +66,42 @@ public class MainNewPeopleFragment extends Fragment implements OnRefreshLoadMore
}
private void getData(int page) {
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
if (page == 1) {
mData.clear();
}
if (mPage == 1) {
mData.clear();
}
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
finishFresh();
mAdapter.setList(mData);
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -82,7 +112,12 @@ public class MainNewPeopleFragment extends Fragment implements OnRefreshLoadMore
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -22,9 +22,12 @@ import androidx.viewpager.widget.ViewPager;
import com.fengliyan.uikit.UiUtils;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.im.uikit.common.ToastHelper;
import com.xuebiping.bolizhuzi.utils.NoClearSPUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.main.dialog.ShaiXuanDialog;
@@ -62,7 +65,7 @@ public class MainRecommend2Fragment extends Fragment implements View.OnClickList
private MainNewPeopleFragment mNewPeopleFragment;
private MainFiveStarFragment mFiveStarFragment;
private MainFourStarFragment mFourStarFragment;
private MainRecommendActiveFragment mThreeStarFragment;
private MainThreeStarFragment mThreeStarFragment;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
@@ -97,7 +100,7 @@ public class MainRecommend2Fragment extends Fragment implements View.OnClickList
mNewPeopleFragment = new MainNewPeopleFragment();
mFiveStarFragment = new MainFiveStarFragment();
mFourStarFragment = new MainFourStarFragment();
mThreeStarFragment = new MainRecommendActiveFragment();
mThreeStarFragment = new MainThreeStarFragment();
mChannelFragments.add(mLookMeFragment);
mChannelFragments.add(mRecommendFragment);
@@ -145,6 +148,7 @@ public class MainRecommend2Fragment extends Fragment implements View.OnClickList
mViewPagerAdapter.notifyDataSetChanged();
mMainViewPager.setCurrentItem(mIndex);
mMainViewPager.setOffscreenPageLimit(7);
}
private void initMagicIndicator() {
@@ -286,7 +290,7 @@ public class MainRecommend2Fragment extends Fragment implements View.OnClickList
shaiXuanDialog.setRightOnClickListener(new ShaiXuanDialog.OnDialogRightClickListener() {
@Override
public void rightClick(int isSelect) {
ToastHelper.showToast(getContext(),"选择了 " + isSelect);
NoClearSPUtils.saveInt(getActivity(), UserManager.getUserInfo().getUser_id() + Constant.FRIEND_SELECT, isSelect);
}
});
}else if (view == mRl_home_change) {

View File

@@ -11,12 +11,18 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,12 +31,15 @@ import java.util.List;
public class MainThreeStarFragment extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "three_star";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@Nullable
@@ -57,21 +66,42 @@ public class MainThreeStarFragment extends Fragment implements OnRefreshLoadMore
}
private void getData(int page) {
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
if (page == 1) {
mData.clear();
}
if (mPage == 1) {
mData.clear();
}
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
finishFresh();
mAdapter.setList(mData);
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -82,7 +112,12 @@ public class MainThreeStarFragment extends Fragment implements OnRefreshLoadMore
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -12,14 +12,19 @@ import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.model.main.BannerBean;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -28,12 +33,15 @@ import java.util.List;
public class MainVoiceFragment extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "voice";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private GridLayoutManager mGridLayoutManager;
private LinearLayoutManager mLinearLayoutManager;
@@ -84,20 +92,42 @@ public class MainVoiceFragment extends Fragment implements OnRefreshLoadMoreList
private void getData(int page) {
if (page == 1) {
mData.clear();
}
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
for (int i = 0; i < 10; i++) {
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
if (mPage == 1) {
mData.clear();
}
}
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
finishFresh();
mAdapter.setList(mData);
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
@@ -108,7 +138,12 @@ public class MainVoiceFragment extends Fragment implements OnRefreshLoadMoreList
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -15,20 +15,22 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.AnchorBean;
import com.xuebiping.bolizhuzi.model.main.AnchorListBean;
import com.xuebiping.bolizhuzi.model.main.BannerBean;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
import com.xuebiping.bolizhuzi.model.main.MainRecommendListBean;
import com.xuebiping.bolizhuzi.model.main.ChannelAnchorBean;
import com.xuebiping.bolizhuzi.utils.BaseUtils;
import com.xuebiping.bolizhuzi.utils.GlideImageLoader;
import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.main.utils.JumpUtils;
import com.youth.banner.Banner;
import com.youth.banner.listener.OnBannerListener;
@@ -40,19 +42,23 @@ import java.util.List;
public class RecommendFragment2 extends Fragment implements OnRefreshLoadMoreListener {
private String mType = "new";
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_list;
private Banner mBn_recommend;
private MainRecommendAdapter mAdapter;
private int mPage = 1;
private List<LookMeBean> mData = new ArrayList<>();
private List<BannerBean> mData2 = new ArrayList<>();
private int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private List<BannerBean> mBanner = new ArrayList<>();
List<String> images = new ArrayList<>();
private GridLayoutManager mGridLayoutManager;
private LinearLayoutManager mLinearLayoutManager;
private RelativeLayout mRl_banner;
@Nullable
@org.jetbrains.annotations.Nullable
@Override
@@ -101,41 +107,62 @@ public class RecommendFragment2 extends Fragment implements OnRefreshLoadMoreLis
}
private void getData(int page) {
MainManager.getHomeData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<ChannelAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, ChannelAnchorBean result, String message) {
finishFresh();
if (result != null) {
if (page == 1) {
mData.clear();
mData2.clear();
}
if (mPage == 1) {
mBanner.clear();
mBanner = result.getBanner();
if (mBanner != null && mBanner.size() > 0) {
mRl_banner.setVisibility(View.VISIBLE);
banner(mBanner);
}else {
mRl_banner.setVisibility(View.GONE);
}
for (int i = 0; i < 10; i++) {
if (i < 3 && page == 1) {
BannerBean bannerBean = new BannerBean();
bannerBean.setImage("https://img.boxinxinc.cn/images/banner/050ba52eec6c9211436bf82aecfd3f81.jpg");
mData2.add(bannerBean);
mData.clear();
}
AnchorListBean list1 = result.getList();
if (list1 != null) {
mTotalPage = list1.getTotal_page();
List<AnchorBean> list = list1.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
LookMeBean lookMeBean = new LookMeBean();
lookMeBean.setId(i + "");
lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
mData.add(lookMeBean);
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
}
finishFresh();
if (page == 1) {
banner(mData2);
}
mAdapter.setList(mData);
@Override
public void onException(BaseActivity activity, Throwable e) {
Log.d("nail", "onException: " + e);
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
private void banner(List<BannerBean> mBanners) {
private void banner(List<BannerBean> banners) {
images.clear();
if (null != mBanners) {
if (mBanners.size() != 0) {
for (int i = 0; i < mBanners.size(); i++) {
if (null != banners) {
if (banners.size() != 0) {
for (int i = 0; i < banners.size(); i++) {
// images.add(StrU.getResourcePath(mBanners.get(i).getImage(), mContext));
images.add(mBanners.get(i).getImage());
images.add(banners.get(i).getImage());
}
}
}
@@ -146,12 +173,12 @@ public class RecommendFragment2 extends Fragment implements OnRefreshLoadMoreLis
.setOnBannerListener(new OnBannerListener() {
@Override
public void OnBannerClick(int position) {
if (null != mBanners) {
int size = mBanners.size();
if (null != banners) {
int size = banners.size();
if (size != 0) {
int i = position % size;
JumpUtils.jump(mBanners.get(i).getLink_type(),
mBanners.get(i).getLink_url(), getActivity());
JumpUtils.jump(banners.get(i).getLink_type(),
banners.get(i).getLink_url(), getActivity());
// mRv_list.setLayoutManager(mLinearLayoutManager);
// mAdapter.notifyDataSetChanged();
}
@@ -191,7 +218,12 @@ public class RecommendFragment2 extends Fragment implements OnRefreshLoadMoreLis
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
getData(mPage);
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getData(mPage);
}
}
@Override

View File

@@ -17,6 +17,9 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.utils.NoClearSPUtils;
public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
@@ -72,7 +75,16 @@ public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
tv_boy = findViewById(R.id.tv_boy);
tv_girl = findViewById(R.id.tv_girl);
setTxtStyle(tv_all,tv_boy,tv_girl);
int select = NoClearSPUtils.getInt(mContext, UserManager.getUserInfo().getUser_id() + Constant.FRIEND_SELECT, isSelect);
if (select == 0) {
setTxtStyle(tv_all,tv_boy,tv_girl);
}else if (select == 1) {
setTxtStyle(tv_boy,tv_all,tv_girl);
}else if (select == 2) {
setTxtStyle(tv_girl,tv_boy,tv_all);
}
// setTxtStyle(tv_all,tv_boy,tv_girl);
ll_nm_video_call = findViewById(R.id.ll_nm_video_call);
@@ -111,7 +123,7 @@ public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
public void setTxtStyle(TextView textView1,TextView textView2,TextView textView3){
textView1.setTextColor(Color.parseColor("#ffffff"));
textView1.setBackground(mContext.getResources().getDrawable(R.drawable.bg_fb65fd));
textView1.setBackground(mContext.getResources().getDrawable(R.drawable.shape_button_enable));
textView2.setTextColor(Color.parseColor("#999999"));
textView2.setBackground(mContext.getResources().getDrawable(R.drawable.bg_999999_t10));
textView3.setTextColor(Color.parseColor("#999999"));

View File

@@ -87,12 +87,12 @@ public class BindPhoneActivity extends BaseActivity implements View.OnClickListe
mBindWeiboView.setOnClickListener(this);
rl_delete_account.setOnClickListener(this);//注销账号
if (UserManager.getUserInfo().isWomen()) {
bind_certification.setVisibility(View.VISIBLE);
getSelfieExample();
} else {
bind_certification.setVisibility(View.GONE);
}
// if (UserManager.getUserInfo().isWomen()) {
// bind_certification.setVisibility(View.VISIBLE);
// getSelfieExample();
// } else {
// bind_certification.setVisibility(View.GONE);
// }
}
private BindInfoBean mBindInfoBean;

View File

@@ -0,0 +1,118 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.content.Context;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.main.LookMeFragment;
import net.lucode.hackware.magicindicator.MagicIndicator;
import net.lucode.hackware.magicindicator.ViewPagerHelper;
import net.lucode.hackware.magicindicator.buildins.UIUtil;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerTitleView;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.indicators.LinePagerIndicator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.SimplePagerTitleView;
import java.util.ArrayList;
import java.util.List;
public class ContactListActivity extends BaseActivity {
private MagicIndicator mMagicIndicator;
private ViewPager mMainViewPager;
private MainViewPagerAdapter mViewPagerAdapter;
private List<Fragment> mChannelFragments = new ArrayList<>();
private ContactListFragment mFriendFragment;
private ContactListFragment mFocusFragment;
private ContactListFragment mFansFragment;
private List<String> mDataList = new ArrayList<>();
private int mIndex = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_contact_list);
setTitleName("通讯录");
initView();
}
private void initView() {
mMagicIndicator = findViewById(R.id.magic_indicator);
mMainViewPager = findViewById(R.id.main_view_pager);
mFriendFragment = ContactListFragment.newInstance(0);
mFocusFragment = ContactListFragment.newInstance(1);
mFansFragment = ContactListFragment.newInstance(2);
mChannelFragments.add(mFriendFragment);
mChannelFragments.add(mFocusFragment);
mChannelFragments.add(mFansFragment);
mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
mChannelFragments);
mMainViewPager.setAdapter(mViewPagerAdapter);
initMagicIndicator();
mViewPagerAdapter.notifyDataSetChanged();
mMainViewPager.setCurrentItem(mIndex);
}
private void initMagicIndicator() {
mDataList.clear();
mDataList.add("好友");
mDataList.add("关注");
mDataList.add("粉丝");
CommonNavigator commonNavigator = new CommonNavigator(this);
commonNavigator.setAdapter(new CommonNavigatorAdapter() {
@Override
public int getCount() {
return mDataList == null ? 0 : mDataList.size();
}
@Override
public IPagerTitleView getTitleView(Context context, final int index) {
SimplePagerTitleView simplePagerTitleView = new ScaleTransitionPagerTitleView(context);
simplePagerTitleView.setText(mDataList.get(index));
simplePagerTitleView.setTextSize(20);
simplePagerTitleView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
simplePagerTitleView.setNormalColor(Color.parseColor("#33000000"));
simplePagerTitleView.setSelectedColor(Color.parseColor("#000000"));
simplePagerTitleView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mMainViewPager.setCurrentItem(index);
}
});
return simplePagerTitleView;
}
@Override
public IPagerIndicator getIndicator(Context context) {
LinePagerIndicator indicator = new LinePagerIndicator(context);
indicator.setColors(getResources().getColor(R.color.yellow_ffd33e));
indicator.setLineHeight(UIUtil.dip2px(context, 10));
indicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT);
return null;
}
});
mMagicIndicator.setNavigator(commonNavigator);
ViewPagerHelper.bind(mMagicIndicator, mMainViewPager);
}
}

View File

@@ -0,0 +1,185 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.settings.adapter.ContactListAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.main.FollowResultBean;
import com.xuebiping.bolizhuzi.model.settings.SocialBean;
import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.List;
public class ContactListFragment extends Fragment implements OnRefreshLoadMoreListener {
private static final String ARG_PARAM1 = "param1";
private int mType; //0 好友 1 关注 2粉丝
private View v;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private LinearLayout mRl_no_data;
private int mPage = 1;
private int mTotalPage;
private List<SocialBean> mData = new ArrayList<>();
private ContactListAdapter mContactListAdapter;
public ContactListFragment() {
// Required empty public constructor
}
public static ContactListFragment newInstance(int param1) {
ContactListFragment fragment = new ContactListFragment();
Bundle args = new Bundle();
args.putInt(ARG_PARAM1, param1);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mType = getArguments().getInt(ARG_PARAM1);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.fragment_contact_list, container, false);
initView(v);
getContactList(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
mRl_no_data = v.findViewById(R.id.rl_no_data);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
mContactListAdapter = new ContactListAdapter(R.layout.item_contact_list, getActivity(), mType);
mRv_recommend_list.setAdapter(mContactListAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
mContactListAdapter.setOnFocusClickListener(new ContactListAdapter.OnFocusClickListener() {
@Override
public void onFocusClick(int position, int user_id, int is_follow) {
follow(user_id + "", position);
}
});
}
private void follow(String uid, final int position){
DynamicsManager.follow((BaseActivity) getActivity(), uid, new HttpUiCallBack<FollowResultBean>() {
@Override
public void onSuccess(BaseActivity activity, FollowResultBean result, String message) {
mData.get(position).setIs_follow(mData.get(position)
.getIs_follow() == 1? 0 :1);
mContactListAdapter.notifyItemChanged(position);
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "关注失败");
}
});
}
private void getContactList(int page){
SettingManager.getContactList((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<SocialListBean>() {
@Override
public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
finishFresh();
if (result != null) {
mTotalPage = result.getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<SocialBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
if (mPage == 1) {
mRl_no_data.setVisibility(View.GONE);
mRv_recommend_list.setVisibility(View.VISIBLE);
}
mContactListAdapter.setList(mData);
} else {
if (mPage == 1) {
mRl_no_data.setVisibility(View.VISIBLE);
mRv_recommend_list.setVisibility(View.GONE);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
mSmart_refresh.finishLoadMore();
mSmart_refresh.finishRefresh();
}
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getContactList(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getContactList(mPage);
}
}

View File

@@ -0,0 +1,129 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.settings.adapter.GenderActiveAdapter;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.model.main.UserGenderListBean;
import com.xuebiping.bolizhuzi.model.settings.UserInfoBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.List;
public class GenderActiveActivity extends BaseActivity implements OnRefreshLoadMoreListener {
private int mPage = 1;
private int mTotalPage;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private LinearLayout mRl_no_data;
private GenderActiveAdapter mGenderActiveAdapter;
private List<UserInfoBean> mData = new ArrayList<>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gender_activity);
setTitleName("活跃");
initView();
getGenderUserInfo(mPage);
}
private void initView() {
mSmart_refresh = findViewById(R.id.smart_refresh);
mRv_recommend_list = findViewById(R.id.rv_recommend_list);
mRl_no_data = findViewById(R.id.rl_no_data);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(this));
mGenderActiveAdapter = new GenderActiveAdapter(R.layout.item_gender_active, this);
mRv_recommend_list.setAdapter(mGenderActiveAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
public void getGenderUserInfo(int page){
int gender = 1;
if(UserManager.getUserInfo().getGender() == 1){
gender = 2;
}
MainManager.getGenderActiveList(this, gender, page, new HttpUiCallBack<UserGenderListBean>() {
@Override
public void onSuccess(BaseActivity activity, UserGenderListBean result, String message) {
finishFresh();
if (result.getList() != null) {
mTotalPage = result.getList().getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<UserInfoBean> list = result.getList().getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
if (mPage == 1) {
mRl_no_data.setVisibility(View.GONE);
mRv_recommend_list.setVisibility(View.VISIBLE);
}
mGenderActiveAdapter.setList(mData);
} else {
if (mPage == 1) {
mRl_no_data.setVisibility(View.VISIBLE);
mRv_recommend_list.setVisibility(View.GONE);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
finishFresh();
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showFailureMsg(activity, "请重试");
finishFresh();
}
});
}
public void finishFresh() {
mSmart_refresh.finishLoadMore();
mSmart_refresh.finishRefresh();
}
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getGenderUserInfo(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getGenderUserInfo(mPage);
}
}

View File

@@ -23,8 +23,10 @@ import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.alipay.sdk.app.PayTask;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.eventBus.PayEvent;
import com.xuebiping.bolizhuzi.controller.settings.adapter.GeneralOptionsRecyclerAdapter;
@@ -66,20 +68,20 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
private TextView tv_member_time;
private ConstraintLayout lin_vip_shift1, lin_vip_shift2, lin_vip_shift3;
private TextView tv_vip_shift_name1, tv_vip_shift_name2, tv_vip_shift_name3;
private TextView tv_vip_unit1, tv_vip_unit2;
private TextView tv_vip_price1, tv_vip_price2, tv_vip_price3;
private TextView tv_vip_price_hint1, tv_vip_price_hint2, tv_vip_price_hint3;
private ImageView iv_vip_shift1, iv_vip_shift2;
private RecyclerView mOptionView;
private TextView tv_member_setting;
private LinearLayout lin_member_bottom_btn;
private TextView tv_member_open;
private TextView tv_member_sure;
private GeneralOptionsRecyclerAdapter mAdapter;
private int type = 6;
private int type = 0;
private List<MemberPrivilegesInfo> mPrivileges = new ArrayList<>();
private Boolean isVip = false;
private String mSelectedPayMethod = "alipay"; //默认微信
private MemberPayDialog mPayDialog;
@@ -96,6 +98,8 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
private String price3;
private int defaultType = 0;//默认选中会员类型
private OnScrollChange onScrollChange;
private SimpleDraweeView mUser_head;
private TextView mTv_notice;
@Nullable
@Override
@@ -110,28 +114,32 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
private void initView(View v) {
sv_general_member = v.findViewById(R.id.sv_general_member);
tv_member_time = v.findViewById(R.id.tv_member_time);
lin_vip_shift1 = v.findViewById(R.id.lin_vip_shift1);
tv_vip_shift_name1 = v.findViewById(R.id.tv_vip_shift_name1);
tv_vip_unit1 = v.findViewById(R.id.tv_vip_unit1);
tv_vip_price1 = v.findViewById(R.id.tv_vip_price1);
tv_vip_price_hint1 = v.findViewById(R.id.tv_vip_price_hint1);
lin_vip_shift2 = v.findViewById(R.id.lin_vip_shift2);
tv_vip_shift_name2 = v.findViewById(R.id.tv_vip_shift_name2);
tv_vip_unit2 = v.findViewById(R.id.tv_vip_unit2);
tv_vip_price2 = v.findViewById(R.id.tv_vip_price2);
tv_vip_price_hint2 = v.findViewById(R.id.tv_vip_price_hint2);
lin_vip_shift3 = v.findViewById(R.id.lin_vip_shift3);
tv_vip_shift_name3 = v.findViewById(R.id.tv_vip_shift_name3);
tv_vip_price3 = v.findViewById(R.id.tv_vip_price3);
tv_vip_price_hint3 = v.findViewById(R.id.tv_vip_price_hint3);
iv_vip_shift1 = v.findViewById(R.id.iv_vip_shift1);
iv_vip_shift2 = v.findViewById(R.id.iv_vip_shift2);
tv_member_setting = v.findViewById(R.id.tv_member_setting);
lin_member_bottom_btn = v.findViewById(R.id.lin_member_bottom_btn);
tv_member_open = v.findViewById(R.id.tv_member_open);
tv_member_sure = v.findViewById(R.id.tv_member_sure);
mUser_head = v.findViewById(R.id.user_head);
tv_member_time = v.findViewById(R.id.tv_member_time);
lin_vip_shift1 = v.findViewById(R.id.lin_vip_shift1);
tv_vip_shift_name1 = v.findViewById(R.id.tv_vip_shift_name1);
tv_vip_price1 = v.findViewById(R.id.tv_vip_price1);
tv_vip_price_hint1 = v.findViewById(R.id.tv_vip_price_hint1);
lin_vip_shift2 = v.findViewById(R.id.lin_vip_shift2);
tv_vip_shift_name2 = v.findViewById(R.id.tv_vip_shift_name2);
tv_vip_price2 = v.findViewById(R.id.tv_vip_price2);
tv_vip_price_hint2 = v.findViewById(R.id.tv_vip_price_hint2);
lin_vip_shift3 = v.findViewById(R.id.lin_vip_shift3);
tv_vip_shift_name3 = v.findViewById(R.id.tv_vip_shift_name3);
tv_vip_price3 = v.findViewById(R.id.tv_vip_price3);
tv_vip_price_hint3 = v.findViewById(R.id.tv_vip_price_hint3);
mOptionView = v.findViewById(R.id.general_recycler_view);
mTv_notice = v.findViewById(R.id.tv_notice);
mOptionView.setLayoutManager(new GridLayoutManager(requireContext(), 3));
@@ -166,20 +174,25 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
SettingManager.getMemberInfo((BaseActivity) getActivity(), type, new HttpUiCallBack<MemberBean>() {
@Override
public void onSuccess(BaseActivity activity, MemberBean result, String message) {
mTv_notice.setText(result.getNotice());
if (result.getInfo() != null) {
mUser_head.setImageURI(ConstUrl.IMAGE_URL + result.getInfo().getAvatar());
if (!TextUtils.isEmpty(result.getInfo().getExpire_date_new())) {
tv_member_time.setText("有效期至:" + result.getInfo().getExpire_date_new());
isVip = true;
lin_member_bottom_btn.setVisibility(View.VISIBLE);
tv_member_open.setVisibility(View.GONE);
SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, true);
} else {
tv_member_time.setText("1000+用户已开通");
isVip = false;
tv_member_time.setText("你还未开通VIP");
lin_member_bottom_btn.setVisibility(View.GONE);
tv_member_open.setVisibility(View.VISIBLE);
tv_member_open.setText("立即开通");
}
SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, isVip);
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) {
lin_member_bottom_btn.setVisibility(View.GONE);
@@ -189,42 +202,75 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
List<MemberInfoList> list = result.getInfo().getList();
if (list != null && list.size() > 0) {
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
price2 = (int) Double.parseDouble(list.get(1).getPrice()) + list.get(1).getExpires_title();
tv_vip_shift_name2.setText(list.get(1).getName());
tv_vip_price2.setText((int) Double.parseDouble(list.get(1).getPrice()) + "");
tv_vip_price_hint2.setText("原价¥" + list.get(1).getOrigin_price());
if (list.size() == 1) {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.GONE);
lin_vip_shift3.setVisibility(View.GONE);
price3 = (int) Double.parseDouble(list.get(2).getPrice()) + list.get(2).getExpires_title();
tv_vip_shift_name3.setText(list.get(2).getName());
tv_vip_price3.setText((int) Double.parseDouble(list.get(2).getPrice()) + "");
tv_vip_price_hint3.setText("原价¥" + list.get(2).getOrigin_price());
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
goodsId1 = list.get(0).getId();
goodsId2 = list.get(1).getId();
goodsId3 = list.get(2).getId();
goodsId1 = list.get(0).getId();
}else if (list.size() == 2) {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.VISIBLE);
lin_vip_shift3.setVisibility(View.GONE);
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
price2 = (int) Double.parseDouble(list.get(1).getPrice()) + list.get(1).getExpires_title();
tv_vip_shift_name2.setText(list.get(1).getName());
tv_vip_price2.setText((int) Double.parseDouble(list.get(1).getPrice()) + "");
tv_vip_price_hint2.setText("原价¥" + list.get(1).getOrigin_price());
goodsId1 = list.get(0).getId();
goodsId2 = list.get(1).getId();
}else {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.VISIBLE);
lin_vip_shift3.setVisibility(View.VISIBLE);
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
price2 = (int) Double.parseDouble(list.get(1).getPrice()) + list.get(1).getExpires_title();
tv_vip_shift_name2.setText(list.get(1).getName());
tv_vip_price2.setText((int) Double.parseDouble(list.get(1).getPrice()) + "");
tv_vip_price_hint2.setText("原价¥" + list.get(1).getOrigin_price());
price3 = (int) Double.parseDouble(list.get(2).getPrice()) + list.get(2).getExpires_title();
tv_vip_shift_name3.setText(list.get(2).getName());
tv_vip_price3.setText((int) Double.parseDouble(list.get(2).getPrice()) + "");
tv_vip_price_hint3.setText("原价¥" + list.get(2).getOrigin_price());
goodsId1 = list.get(0).getId();
goodsId2 = list.get(1).getId();
goodsId3 = list.get(2).getId();
}
}
mAdapter.setVip_day_free_send(result.getInfo().getVip_day_free_send());
}
mPrivileges.clear();
for (int i = 0; i < 6; i++) {
MemberPrivilegesInfo info = new MemberPrivilegesInfo();
info.setId(i);
if (i == 0) {
info.setDesc("半价无限畅聊");
}
if (i == 1) {
info.setDesc("每日可享1次免费视频单次最长1分钟");
}
// if (i == 2 && isVip) {
// info.setName("VISIBLE");
// for (int i = 0; i < 6; i++) {
// MemberPrivilegesInfo info = new MemberPrivilegesInfo();
// info.setId(i);
// if (i == 0) {
// info.setDesc("半价无限畅聊");
// }
mPrivileges.add(info);
}
// if (i == 1) {
// info.setDesc("每日可享1次免费视频单次最长1分钟");
// }
// mPrivileges.add(info);
// }
mPrivileges.addAll(result.getPrivileges());
mAdapter.setOptions(mPrivileges);
}
@@ -244,41 +290,41 @@ public class GeneralMemberFragment extends Fragment implements View.OnClickListe
public void onClick(View v) {
if (v == tv_member_setting) {
Intent intent = new Intent(getContext(), PrivilegeSettingActivity.class);
intent.putExtra("isVip", isVip);
intent.putExtra("isVip", SPUtils.getBoolean(getActivity(), ConsUser.USER_VIP, false));
startActivity(intent);
} else if (v == lin_vip_shift1) {
lin_vip_shift1.setBackgroundResource(R.drawable.vip_select_bg2);
lin_vip_shift2.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift1.setBackgroundResource(R.mipmap.new_vip_select_bg2);
lin_vip_shift2.setBackgroundResource(R.mipmap.new_vip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.mipmap.new_vip_select_bg1);
defaultType = 0;
if (goodsId1 == 1011) {
List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
list.get(0).setDesc("半价无限畅聊");
list.get(1).setDesc("每日可享1次免费视频单次最长1分钟");
mAdapter.setOptions(list);
}
// if (goodsId1 == 1011) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("半价无限畅聊");
// list.get(1).setDesc("每日可享1次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == lin_vip_shift2) {
lin_vip_shift1.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.drawable.vip_select_bg2);
lin_vip_shift3.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift1.setBackgroundResource(R.mipmap.new_vip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.mipmap.new_vip_select_bg2);
lin_vip_shift3.setBackgroundResource(R.mipmap.new_vip_select_bg1);
defaultType = 1;
if (goodsId2 == 1012) {
List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
list.get(0).setDesc("半价无限畅聊");
list.get(1).setDesc("每日可享2次免费视频单次最长1分钟");
mAdapter.setOptions(list);
}
// if (goodsId2 == 1012) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("半价无限畅聊");
// list.get(1).setDesc("每日可享2次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == lin_vip_shift3) {
lin_vip_shift1.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.drawable.vip_select_bg2);
lin_vip_shift1.setBackgroundResource(R.mipmap.new_vip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.mipmap.new_vip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.mipmap.new_vip_select_bg2);
defaultType = 2;
if (goodsId3 == 1013) {
List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
list.get(0).setDesc("尊享无限文字畅聊");
list.get(1).setDesc("每日可享3次免费视频单次最长1分钟");
mAdapter.setOptions(list);
}
// if (goodsId3 == 1013) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("尊享无限文字畅聊");
// list.get(1).setDesc("每日可享3次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == tv_member_sure) {
if (defaultType == 1) {
goodsId = goodsId2;

View File

@@ -0,0 +1,129 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.settings.adapter.GenderActiveAdapter;
import com.xuebiping.bolizhuzi.controller.settings.adapter.IntimacyAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.model.main.UserGenderListBean;
import com.xuebiping.bolizhuzi.model.settings.IntimacyBean;
import com.xuebiping.bolizhuzi.model.settings.IntimacyListBean;
import com.xuebiping.bolizhuzi.model.settings.UserInfoBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.List;
public class IntimacyListActivity extends BaseActivity implements OnRefreshLoadMoreListener {
private int mPage = 1;
private int mTotalPage;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private LinearLayout mRl_no_data;
private IntimacyAdapter mAdapter;
private List<IntimacyBean> mData = new ArrayList<>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_intimacy);
setTitleName("我的亲密度");
initView();
getIntimacyList(mPage);
}
private void initView() {
mSmart_refresh = findViewById(R.id.smart_refresh);
mRv_recommend_list = findViewById(R.id.rv_recommend_list);
mRl_no_data = findViewById(R.id.rl_no_data);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(this));
mAdapter = new IntimacyAdapter(R.layout.item_intimacy_list, this);
mRv_recommend_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
public void getIntimacyList(int page){
SettingManager.getIntimacyList(this, page, new HttpUiCallBack<IntimacyListBean>() {
@Override
public void onSuccess(BaseActivity activity, IntimacyListBean result, String message) {
finishFresh();
if (result.getList() != null) {
mTotalPage = result.getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<IntimacyBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
if (mPage == 1) {
mRl_no_data.setVisibility(View.GONE);
mRv_recommend_list.setVisibility(View.VISIBLE);
}
mAdapter.setList(mData);
} else {
if (mPage == 1) {
mRl_no_data.setVisibility(View.VISIBLE);
mRv_recommend_list.setVisibility(View.GONE);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
finishFresh();
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showFailureMsg(activity, "请重试");
finishFresh();
}
});
}
public void finishFresh() {
mSmart_refresh.finishLoadMore();
mSmart_refresh.finishRefresh();
}
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getIntimacyList(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getIntimacyList(mPage);
}
}

View File

@@ -0,0 +1,134 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.settings.SocialBean;
import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.List;
public class MeLookFragment extends Fragment implements OnRefreshLoadMoreListener {
private int mType = 1; //0看过我的 1我的足迹
private View v;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private LinearLayout mRl_no_data;
private MainLookMeAdapter mMainLookMeAdapter;
private int mPage = 1;
private int mTotalPage;
private List<SocialBean> mData = new ArrayList<>();
@Nullable
@org.jetbrains.annotations.Nullable
@Override
public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
v = inflater.inflate(R.layout.fragment_look_me, container, false);
initView(v);
getLookData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
mRl_no_data = v.findViewById(R.id.rl_no_data);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity(), mType);
mRv_recommend_list.setAdapter(mMainLookMeAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
private void getLookData(int page){
SettingManager.getLookData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack<SocialListBean>() {
@Override
public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
finishFresh();
if (result != null) {
mTotalPage = result.getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<SocialBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
if (mPage == 1) {
mRl_no_data.setVisibility(View.GONE);
mRv_recommend_list.setVisibility(View.VISIBLE);
}
mMainLookMeAdapter.setList(mData);
} else {
if (mPage == 1) {
mRl_no_data.setVisibility(View.VISIBLE);
mRv_recommend_list.setVisibility(View.GONE);
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
public void finishFresh() {
mSmart_refresh.finishLoadMore();
mSmart_refresh.finishRefresh();
}
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
if (mPage > mTotalPage) {
mSmart_refresh.finishLoadMore();
mSmart_refresh.setNoMoreData(true);
} else {
getLookData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getLookData(mPage);
}
}

View File

@@ -39,7 +39,7 @@ public class MemberActivity extends BaseActivity implements View.OnClickListener
private ViewPager mMainViewPager;
private GeneralMemberFragment mGeneralMemberFragment;
private SuperMemberFragment mSuperMemberFragment;
private SuperMember2Fragment mSuperMemberFragment;
private List<Fragment> mChannelFragments = new ArrayList<>();
private MainViewPagerAdapter mViewPagerAdapter;
@@ -70,11 +70,11 @@ public class MemberActivity extends BaseActivity implements View.OnClickListener
mGeneralMemberFragment = new GeneralMemberFragment();
mGeneralMemberFragment.setOnScrollChange(this);
mSuperMemberFragment = new SuperMemberFragment();
mSuperMemberFragment = new SuperMember2Fragment();
mSuperMemberFragment.setOnScrollChange(this);
mChannelFragments.add(mGeneralMemberFragment);
// mChannelFragments.add(mSuperMemberFragment);
mChannelFragments.add(mSuperMemberFragment);
mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
mChannelFragments);
@@ -106,31 +106,31 @@ public class MemberActivity extends BaseActivity implements View.OnClickListener
private void viewPagerChange(int index) {
switch (index) {
case 0:
title_name_1.setTextColor(Color.parseColor("#643406"));
title_name_1.setTextColor(Color.WHITE);
title_name_1.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
title_bottom_line_1.setVisibility(View.VISIBLE);
title_name_2.setTextColor(Color.parseColor("#9C8D76"));
title_name_2.setTextColor(Color.parseColor("#80ffffff"));
title_name_2.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL));
title_bottom_line_2.setVisibility(View.INVISIBLE);
// tv_member_title.setTextColor(Color.BLACK);
// iv_member_back.setImageResource(R.drawable.ic_return);
mGeneralMemberFragment.scrollTop();
// mGeneralMemberFragment.scrollTop();
tv_member_title_bg.setAlpha(0);
break;
case 1:
title_name_2.setTextColor(Color.parseColor("#FFE5C2"));
title_name_2.setTextColor(Color.WHITE);
title_name_2.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
title_bottom_line_2.setVisibility(View.VISIBLE);
title_name_1.setTextColor(Color.parseColor("#9E94B0"));
title_name_1.setTextColor(Color.parseColor("#80ffffff"));
title_name_1.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL));//加粗
title_bottom_line_1.setVisibility(View.INVISIBLE);
tv_member_title.setTextColor(Color.parseColor("#F3E9F9"));
iv_member_back.setImageResource(R.drawable.ic_return_white);
mSuperMemberFragment.scrollTop();
// tv_member_title.setTextColor(Color.parseColor("#F3E9F9"));
// iv_member_back.setImageResource(R.drawable.ic_return_white);
// mSuperMemberFragment.scrollTop();
tv_member_title_bg.setAlpha(0);
break;

View File

@@ -34,6 +34,7 @@ import com.opensource.svgaplayer.SVGAVideoEntity;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.eventBus.BeAnchorEvent;
import com.xuebiping.bolizhuzi.controller.eventBus.RegisterInfoEvent;
import com.xuebiping.bolizhuzi.controller.eventBus.SocialToSettingEvent;
@@ -49,6 +50,7 @@ import com.xuebiping.bolizhuzi.model.settings.UserFrameBean;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
import com.xuebiping.bolizhuzi.model.settings.WalletIndexBean;
import com.xuebiping.bolizhuzi.model.user.bean.BaseUserInfo;
import com.xuebiping.bolizhuzi.utils.NoClearSPUtils;
import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
@@ -127,6 +129,8 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
private boolean isVip;
private LinearLayout ll_go_edit_layout;
private String mUsercode;
private TextView mTv_go_open;
private int mDo_not_disturb;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
@@ -195,6 +199,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
tv_go_homepage = v.findViewById(R.id.tv_go_homepage);
ll_mine_video_chat = v.findViewById(R.id.ll_mine_video_chat);
mTv_go_open = v.findViewById(R.id.tv_go_open);
rl_user_info.setOnClickListener(this);
ll_go_edit_layout.setOnClickListener(this);
@@ -264,14 +269,17 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
isVip = true;
iv_user_icon1.setVisibility(View.VISIBLE);
iv_user_icon2.setVisibility(View.GONE);
mTv_go_open.setText("已开通VIP");
} else if (1 == result.getUserinfo().getVip()) {
isVip = true;
iv_user_icon1.setVisibility(View.GONE);
iv_user_icon2.setVisibility(View.VISIBLE);
mTv_go_open.setText("已开通SVIP");
} else {
isVip = false;
iv_user_icon1.setVisibility(View.GONE);
iv_user_icon2.setVisibility(View.GONE);
mTv_go_open.setText("立即开通");
}
SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, isVip);
SPUtils.saveString(getActivity(), ConsUser.HIDE_READ_MSG, result.getHide_read_msg());
@@ -308,20 +316,22 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
rtv_new_scan_num.setVisibility(View.GONE);
}
tv_foot_num.setText(result.getUsercount().getFootprint_count());
if (result.getSwitchX() != null) {
mVideoEnableFlag = result.getSwitchX().getOpen_video_status();
}
// if (result.getSwitchX() != null) {
// mVideoEnableFlag = result.getSwitchX().getOpen_video_status();
// }
mDo_not_disturb = result.getUserinfo().getDo_not_disturb();
mOptions1.clear();
mOptions1.add(SettingOptions.RANK);
mOptions1.add(SettingOptions.DONOTMODEL);
mOptions1.add(SettingOptions.MEMBER);
mOptions1.add(SettingOptions.SETFRIEND);
// mOptions1.add(SettingOptions.SETFRIEND);
mOptions1.add(SettingOptions.WALLET);
mOptions1.add(SettingOptions.TASK);
mOptions1.add(SettingOptions.MYMYINTIMACY);
mOptions1.add(SettingOptions.UPAUTH);
mOptions1.add(SettingOptions.CUSTOMER);
mOptions1.add(SettingOptions.BEAUTY);
mOptions1.add(SettingOptions.SETTING);
addOption(mOptions1, lin_my_list1);
@@ -427,27 +437,62 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
});
}
private void changeVideoStatus() {
MainManager.changeVideoStatus((BaseActivity) getActivity(),
(mVideoEnableFlag == 1 ? 0 : 1), new HttpUiCallBack<MainPageAnchorBean>() {
private void changeVideoStatus2(Switch mSwitch) {
MainManager.changeVideoStatus2((BaseActivity) getActivity(),
(mDo_not_disturb == 1 ? 0 : 1), new HttpUiCallBack<MainPageAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, MainPageAnchorBean result, String message) {
mVideoEnableFlag = result.getOpen_video_status();
mDo_not_disturb = result.getDo_not_disturb();
if (mDo_not_disturb == 1) { //已开启勿扰模式
MaleToast.showMessage(activity, "勿扰模式开启成功");
}else {
MaleToast.showMessage(activity, "勿扰模式关闭成功");
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
if (mDo_not_disturb == 1) { //已开启勿扰模式
mSwitch.setChecked(true);
}else {
mSwitch.setChecked(false);
}
}
@Override
public void onException(BaseActivity activity, Throwable e) {
if (mDo_not_disturb == 1) { //已开启勿扰模式
mSwitch.setChecked(true);
}else {
mSwitch.setChecked(false);
}
}
});
}
// private void changeVideoStatus() {
// MainManager.changeVideoStatus((BaseActivity) getActivity(),
// (mVideoEnableFlag == 1 ? 0 : 1), new HttpUiCallBack<MainPageAnchorBean>() {
// @Override
// public void onSuccess(BaseActivity activity, MainPageAnchorBean result, String message) {
// mVideoEnableFlag = result.getOpen_video_status();
// }
//
// @Override
// public void onFailure(BaseActivity activity, String tip) {
// MaleToast.showMessage(activity, tip);
//
// }
//
// @Override
// public void onException(BaseActivity activity, Throwable e) {
//
// }
// });
// }
private void showSVGA(String effect) {
SVGAParser mSVGAParser = SVGAParser.Companion.shareParser();
mSVGAParser.init(requireActivity());
@@ -497,9 +542,11 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
startActivity(intent);
break;
case R.id.ll_foucs://关注
intent = new Intent(getActivity(), SocialActivity.class);
intent.putExtra("socialType", 0);
getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
// intent = new Intent(getActivity(), SocialActivity.class);
// intent.putExtra("socialType", 0);
// getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
intent = new Intent(getActivity(), ContactListActivity.class);
startActivity(intent);
break;
case R.id.ll_fans://粉丝
intent = new Intent(getActivity(), SocialActivity.class);
@@ -507,8 +554,10 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
break;
case R.id.ll_scan://来访
intent = new Intent(getActivity(), SocialActivity.class);
intent.putExtra("socialType", 2);
// intent = new Intent(getActivity(), SocialActivity.class);
// intent.putExtra("socialType", 2);
// startActivity(intent);
intent = new Intent(getActivity(), VisitorActivity.class);
startActivity(intent);
break;
case R.id.ll_foot://足迹
@@ -523,6 +572,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case R.id.cl_income:
intent = new Intent(getActivity(), WalletActivity.class);
startActivity(intent);
break;
case R.id.ll_income:
intent = new Intent(getActivity(), CaibeiRechargeActivity.class);
startActivity(intent);
@@ -543,7 +593,8 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
}
break;
case R.id.ll_mine_video_chat:
MaleToast.showMessage(getActivity(),"我的视频,暂定");
intent = new Intent(getActivity(), GenderActiveActivity.class);
startActivity(intent);
break;
}
}
@@ -594,6 +645,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
TextView mName = view.findViewById(R.id.setting_option_name);
ImageView mArrow = view.findViewById(R.id.iv_option_arrow);
TextView mHint = view.findViewById(R.id.tv_option_hint);
TextView tv_option_hint2 = view.findViewById(R.id.tv_option_hint2);
Switch mSwitch = view.findViewById(R.id.st_option_switch);
SettingOptions options = list.get(i);
switch (options) {
@@ -601,14 +653,16 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
mSwitch.setChecked(mVideoEnableFlag == 1);
mSwitch.setVisibility(View.VISIBLE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.GONE);
mLogo.setImageResource(R.mipmap.icon_my_video);
mName.setText("视频聊天");
mSwitch.setOnClickListener(v -> changeVideoStatus());
// mSwitch.setOnClickListener(v -> changeVideoStatus2());
break;
case CONTRACT:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.drawable.ic_my_certified);
mName.setText("价格设置");
@@ -620,6 +674,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case GUIDE:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.drawable.ic_my_guide);
mName.setText("用户指南");
@@ -646,29 +701,10 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
}
});
break;
case BEAUTY:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
if (gender == 2) {
mLogo.setImageResource(R.drawable.ic_my_beauty);
} else {
mLogo.setImageResource(R.drawable.ic_my_beauty1);
}
mName.setText("美颜设置");
view.setOnClickListener(view17 -> {
if (!BaseApplication.getInstance().showCertificationDialog(getActivity())) {
Intent intent = new Intent(getActivity(), BeautySettingActivity.class);
startActivity(intent);
}
});
break;
case GODDESSPRIVILEGE:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_ntequan);
mName.setText("up主认证");
@@ -681,6 +717,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case VIOLATION:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wd_weigui);
mName.setText("违规公布");
@@ -695,6 +732,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case ADDWECHAT:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wd_addwechat);
mName.setText("微信设置");
@@ -708,6 +746,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case HELLOW:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wd_hellow_set);
mName.setText("招呼设置");
@@ -720,6 +759,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case ITEMS:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wd_items1);
mName.setText("红包卡券");
@@ -733,6 +773,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case RANK:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wd_rank);
mName.setText("排行榜");
@@ -745,11 +786,12 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case DONOTMODEL:
mSwitch.setVisibility(View.VISIBLE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.VISIBLE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_do_not_model);
mName.setText("勿扰模式");
if (mVideoEnableFlag == 1) { //已开启勿扰模式
if (mDo_not_disturb == 1) { //已开启勿扰模式
mSwitch.setChecked(true);
}else {
mSwitch.setChecked(false);
@@ -758,7 +800,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
mSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
changeVideoStatus();
changeVideoStatus2(mSwitch);
}
});
break;
@@ -766,11 +808,12 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
mSwitch.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_vip);
if (gender == 2) {
mHint.setVisibility(View.VISIBLE);
} else {
mHint.setVisibility(View.GONE);
}
mHint.setVisibility(View.GONE);
// if (gender == 2) {
// mHint.setVisibility(View.VISIBLE);
// } else {
// mHint.setVisibility(View.GONE);
// }
mName.setText("会员权限");
view.setOnClickListener(v -> {
Intent intent = new Intent(getActivity(), PrivilegeSettingActivity.class);
@@ -781,6 +824,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case SETFRIEND:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_set_friend);
mName.setText("交友偏好");
@@ -790,7 +834,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
shaiXuanDialog.setRightOnClickListener(new ShaiXuanDialog.OnDialogRightClickListener() {
@Override
public void rightClick(int isSelect) {
ToastHelper.showToast(getContext(),"选择了 " + isSelect);
NoClearSPUtils.saveInt(getActivity(), UserManager.getUserInfo().getUser_id() + Constant.FRIEND_SELECT, isSelect);
}
});
});
@@ -798,6 +842,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case WALLET:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_wallet);
mName.setText("我的钱包");
@@ -809,6 +854,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case TASK:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_task_mine);
mName.setText("任务中心");
@@ -820,16 +866,18 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case MYMYINTIMACY:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_intimacy);
mName.setText("我的亲密度");
view.setOnClickListener(view16 -> {
MaleToast.showMessage(getActivity(),"我的亲密度");
startActivity(new Intent(getActivity(), IntimacyListActivity.class));
});
break;
case UPAUTH:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_ntequan);
mName.setText("up主认证");
@@ -840,6 +888,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case CUSTOMER:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_service);
mName.setText("在线客服");
@@ -847,9 +896,22 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
NimUIKit.startP2PSession(getActivity(), "4");
});
break;
case BEAUTY:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_set_friend);
mName.setText("美颜设置");
view.setOnClickListener(view17 -> {
Intent intent = new Intent(getActivity(), BeautySettingActivity.class);
startActivity(intent);
});
break;
case SETTING:
mSwitch.setVisibility(View.GONE);
mHint.setVisibility(View.GONE);
tv_option_hint2.setVisibility(View.GONE);
mArrow.setVisibility(View.VISIBLE);
mLogo.setImageResource(R.mipmap.ic_my_setting_new);
mName.setText("系统设置");

View File

@@ -0,0 +1,597 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.graphics.Paint;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.widget.NestedScrollView;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.alipay.sdk.app.PayTask;
import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.uikit.toast.MaleToast;
import com.sand.qzf.paytypesdk.base.CallBack;
import com.sand.qzf.paytypesdk.base.PayTypeSdk;
import com.sand.qzf.paytypesdk.base.Resp;
import com.tencent.mm.opensdk.modelpay.PayReq;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.eventBus.PayEvent;
import com.xuebiping.bolizhuzi.controller.settings.adapter.GeneralOptionsRecyclerAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.settings.MemberBean;
import com.xuebiping.bolizhuzi.model.settings.MemberInfoList;
import com.xuebiping.bolizhuzi.model.settings.MemberPrivilegesInfo;
import com.xuebiping.bolizhuzi.model.settings.PayBean;
import com.xuebiping.bolizhuzi.model.settings.PayConfigBean;
import com.xuebiping.bolizhuzi.model.settings.WXPayTypeBean;
import com.xuebiping.bolizhuzi.model.settings.WeChatPayInfoBean;
import com.xuebiping.bolizhuzi.utils.PayUtils;
import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.PayWebViewActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.view.MemberPayDialog;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import de.greenrobot.event.EventBus;
public class SuperMember2Fragment extends Fragment implements View.OnClickListener {
private NestedScrollView sv_general_member;
private TextView tv_member_time;
private ConstraintLayout lin_vip_shift1, lin_vip_shift2, lin_vip_shift3;
private TextView tv_vip_shift_name1, tv_vip_shift_name2, tv_vip_shift_name3;
private TextView tv_vip_price1, tv_vip_price2, tv_vip_price3;
private TextView tv_vip_price_hint1, tv_vip_price_hint2, tv_vip_price_hint3;
private RecyclerView mOptionView;
private TextView tv_member_setting;
private LinearLayout lin_member_bottom_btn;
private TextView tv_member_open;
private TextView tv_member_sure;
private GeneralOptionsRecyclerAdapter mAdapter;
private int type = 1;
private List<MemberPrivilegesInfo> mPrivileges = new ArrayList<>();
private String mSelectedPayMethod = "alipay"; //默认微信
private MemberPayDialog mPayDialog;
boolean isWXHF;//微信支付是否是走汇付的微信小程序
private String ghOriId;
private int mini_program_type;
private int goodsId;
private int goodsId1;
private int goodsId2;
private int goodsId3;
private String price;
private String price1;
private String price2;
private String price3;
private int defaultType = 0;//默认选中会员类型
private GeneralMemberFragment.OnScrollChange onScrollChange;
private SimpleDraweeView mUser_head;
private TextView mTv_notice;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_super_member2, container, false);
EventBus.getDefault().register(this);
initView(v);
// getData(type);
getWXPayType();
return v;
}
private void initView(View v) {
sv_general_member = v.findViewById(R.id.sv_general_member);
tv_member_setting = v.findViewById(R.id.tv_member_setting);
lin_member_bottom_btn = v.findViewById(R.id.lin_member_bottom_btn);
tv_member_open = v.findViewById(R.id.tv_member_open);
tv_member_sure = v.findViewById(R.id.tv_member_sure);
mUser_head = v.findViewById(R.id.user_head);
tv_member_time = v.findViewById(R.id.tv_member_time);
lin_vip_shift1 = v.findViewById(R.id.lin_vip_shift1);
tv_vip_shift_name1 = v.findViewById(R.id.tv_vip_shift_name1);
tv_vip_price1 = v.findViewById(R.id.tv_vip_price1);
tv_vip_price_hint1 = v.findViewById(R.id.tv_vip_price_hint1);
lin_vip_shift2 = v.findViewById(R.id.lin_vip_shift2);
tv_vip_shift_name2 = v.findViewById(R.id.tv_vip_shift_name2);
tv_vip_price2 = v.findViewById(R.id.tv_vip_price2);
tv_vip_price_hint2 = v.findViewById(R.id.tv_vip_price_hint2);
lin_vip_shift3 = v.findViewById(R.id.lin_vip_shift3);
tv_vip_shift_name3 = v.findViewById(R.id.tv_vip_shift_name3);
tv_vip_price3 = v.findViewById(R.id.tv_vip_price3);
tv_vip_price_hint3 = v.findViewById(R.id.tv_vip_price_hint3);
mOptionView = v.findViewById(R.id.general_recycler_view);
mTv_notice = v.findViewById(R.id.tv_notice);
mOptionView.setLayoutManager(new GridLayoutManager(requireContext(), 3));
if (null == mAdapter) {
mAdapter = new GeneralOptionsRecyclerAdapter(getActivity(), 1);
mAdapter.setOptions(mPrivileges);
mOptionView.setAdapter(mAdapter);
mOptionView.setNestedScrollingEnabled(true);
}
tv_vip_price_hint1.setPaintFlags(tv_vip_price_hint1.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
tv_vip_price_hint2.setPaintFlags(tv_vip_price_hint2.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
tv_vip_price_hint3.setPaintFlags(tv_vip_price_hint3.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
lin_vip_shift1.setOnClickListener(this);
lin_vip_shift2.setOnClickListener(this);
lin_vip_shift3.setOnClickListener(this);
tv_member_setting.setOnClickListener(this);
tv_member_sure.setOnClickListener(this);
tv_member_open.setOnClickListener(this);
sv_general_member.setNestedScrollingEnabled(true);
// sv_general_member.setOnScrollChangeListener(new View.OnScrollChangeListener() {
// @Override
// public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
// if (onScrollChange != null) {
// onScrollChange.scrollChange(scrollY);
// }
// }
// });
}
private void getData(int type) {
SettingManager.getMemberInfo((BaseActivity) getActivity(), type, new HttpUiCallBack<MemberBean>() {
@Override
public void onSuccess(BaseActivity activity, MemberBean result, String message) {
mTv_notice.setText(result.getNotice());
if (result.getInfo() != null) {
mUser_head.setImageURI(ConstUrl.IMAGE_URL + result.getInfo().getAvatar());
if (!TextUtils.isEmpty(result.getInfo().getExpire_date_new())) {
tv_member_time.setText("有效期至:" + result.getInfo().getExpire_date_new());
lin_member_bottom_btn.setVisibility(View.VISIBLE);
tv_member_open.setVisibility(View.GONE);
SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, true);
} else {
tv_member_time.setText("你还未开通SVIP");
lin_member_bottom_btn.setVisibility(View.GONE);
tv_member_open.setVisibility(View.VISIBLE);
tv_member_open.setText("立即开通");
}
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) {
lin_member_bottom_btn.setVisibility(View.GONE);
tv_member_open.setVisibility(View.VISIBLE);
tv_member_open.setText("邀请好友开通");
}
List<MemberInfoList> list = result.getInfo().getList();
if (list != null && list.size() > 0) {
if (list.size() == 1) {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.GONE);
lin_vip_shift3.setVisibility(View.GONE);
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
goodsId1 = list.get(0).getId();
}else if (list.size() == 2) {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.VISIBLE);
lin_vip_shift3.setVisibility(View.GONE);
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
price2 = (int) Double.parseDouble(list.get(1).getPrice()) + list.get(1).getExpires_title();
tv_vip_shift_name2.setText(list.get(1).getName());
tv_vip_price2.setText((int) Double.parseDouble(list.get(1).getPrice()) + "");
tv_vip_price_hint2.setText("原价¥" + list.get(1).getOrigin_price());
goodsId1 = list.get(0).getId();
goodsId2 = list.get(1).getId();
}else {
lin_vip_shift1.setVisibility(View.VISIBLE);
lin_vip_shift2.setVisibility(View.VISIBLE);
lin_vip_shift3.setVisibility(View.VISIBLE);
price1 = (int) Double.parseDouble(list.get(0).getPrice()) + list.get(0).getExpires_title();
tv_vip_shift_name1.setText(list.get(0).getName());
tv_vip_price1.setText((int) Double.parseDouble(list.get(0).getPrice()) + "");
tv_vip_price_hint1.setText("原价¥" + list.get(0).getOrigin_price());
price2 = (int) Double.parseDouble(list.get(1).getPrice()) + list.get(1).getExpires_title();
tv_vip_shift_name2.setText(list.get(1).getName());
tv_vip_price2.setText((int) Double.parseDouble(list.get(1).getPrice()) + "");
tv_vip_price_hint2.setText("原价¥" + list.get(1).getOrigin_price());
price3 = (int) Double.parseDouble(list.get(2).getPrice()) + list.get(2).getExpires_title();
tv_vip_shift_name3.setText(list.get(2).getName());
tv_vip_price3.setText((int) Double.parseDouble(list.get(2).getPrice()) + "");
tv_vip_price_hint3.setText("原价¥" + list.get(2).getOrigin_price());
goodsId1 = list.get(0).getId();
goodsId2 = list.get(1).getId();
goodsId3 = list.get(2).getId();
}
}
mAdapter.setVip_day_free_send(result.getInfo().getVip_day_free_send());
}
mPrivileges.clear();
// for (int i = 0; i < 6; i++) {
// MemberPrivilegesInfo info = new MemberPrivilegesInfo();
// info.setId(i);
// if (i == 0) {
// info.setDesc("半价无限畅聊");
// }
// if (i == 1) {
// info.setDesc("每日可享1次免费视频单次最长1分钟");
// }
//// if (i == 2 && isVip) {
//// info.setName("VISIBLE");
//// }
// mPrivileges.add(info);
// }
mPrivileges.addAll(result.getPrivileges());
mAdapter.setOptions(mPrivileges);
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
@Override
public void onClick(View v) {
if (v == tv_member_setting) {
Intent intent = new Intent(getContext(), PrivilegeSettingActivity.class);
intent.putExtra("isVip", SPUtils.getBoolean(getActivity(), ConsUser.USER_VIP, false));
startActivity(intent);
} else if (v == lin_vip_shift1) {
lin_vip_shift1.setBackgroundResource(R.mipmap.svip_select_bg2);
lin_vip_shift2.setBackgroundResource(R.mipmap.svip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.mipmap.svip_select_bg1);
defaultType = 0;
// if (goodsId1 == 1011) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("半价无限畅聊");
// list.get(1).setDesc("每日可享1次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == lin_vip_shift2) {
lin_vip_shift1.setBackgroundResource(R.mipmap.svip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.mipmap.svip_select_bg2);
lin_vip_shift3.setBackgroundResource(R.mipmap.svip_select_bg1);
defaultType = 1;
// if (goodsId2 == 1012) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("半价无限畅聊");
// list.get(1).setDesc("每日可享2次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == lin_vip_shift3) {
lin_vip_shift1.setBackgroundResource(R.mipmap.svip_select_bg1);
lin_vip_shift2.setBackgroundResource(R.mipmap.svip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.mipmap.svip_select_bg2);
defaultType = 2;
// if (goodsId3 == 1013) {
// List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
// list.get(0).setDesc("尊享无限文字畅聊");
// list.get(1).setDesc("每日可享3次免费视频单次最长1分钟");
// mAdapter.setOptions(list);
// }
} else if (v == tv_member_sure) {
if (defaultType == 1) {
goodsId = goodsId2;
price = price2;
} else if (defaultType == 2) {
goodsId = goodsId3;
price = price3;
} else {
goodsId = goodsId1;
price = price1;
}
showPay(goodsId);
} else if (v == tv_member_open) {
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) {
Intent intent = new Intent(getContext(), InvitationActivity.class);
startActivity(intent);
} else {
if (defaultType == 1) {
goodsId = goodsId2;
price = price2;
} else if (defaultType == 2) {
goodsId = goodsId3;
price = price3;
} else {
goodsId = goodsId1;
price = price1;
}
showPay(goodsId);
}
}
}
/**
* 支付方式
*/
private void showPay(final int id) {
SettingManager.payConfig((BaseActivity) getActivity(), new HttpUiCallBack<PayConfigBean>() {
@Override
public void onSuccess(BaseActivity activity, PayConfigBean result, String tips) {
mPayDialog = new MemberPayDialog(getActivity(), result, "SVIP " + price);
mPayDialog.setOnClickPayListener(new MemberPayDialog.OnClickPayListener() {
@Override
public void onClickPayListener(String selectedPayMethod) {
mSelectedPayMethod = selectedPayMethod;
confirmToPay(id);
mPayDialog.dismiss();
}
});
mPayDialog.show();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "获取支付信息失败");
}
});
}
private String mOrderInfo;
public static int SDK_PAY_FLAG = 101;
private Runnable mPayRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(getActivity());
Map<String, String> result = alipay.payV2(mOrderInfo, true);
String code = result.get("resultStatus");
if (!TextUtils.isEmpty(code)) {
if ("9000".equals(code)) {
Message msg = new Message();
msg.what = SDK_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
}
}
};
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == SDK_PAY_FLAG) {
getData(type);
}
}
};
void getWXPayType() {
SettingManager.getWechatPaySite((BaseActivity) getActivity(), new HttpUiCallBack<WXPayTypeBean>() {
@Override
public void onSuccess(BaseActivity activity, WXPayTypeBean result, String tips) {
isWXHF = result.getWechat_type() == 3;
ghOriId = result.getGh_ori_id();
mini_program_type = result.getMini_program_type();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
private void confirmToPay(int id) {
if (isWXHF && mSelectedPayMethod.equals("wechat")) {
PayUtils.wxminiPay(getActivity(), id, 1, ghOriId, mini_program_type);
return;
}
SettingManager.payToRecharge((BaseActivity) getActivity(), mSelectedPayMethod,
id + "", 1, new HttpUiCallBack<PayBean>() {
@Override
public void onSuccess(BaseActivity activity, PayBean result, String message) {
if ("alipay".equals(mSelectedPayMethod)) {
if (result.getPay_platform_type() == 1) {
if (null != result.getPayinfo()) {
mOrderInfo = result.getPayinfo();
Thread payThread = new Thread(mPayRunnable);
payThread.start();
}
} else if (result.getPay_platform_type() == 2) {
if (null != result.getPayinfo()) {
mOrderInfo = result.getPayinfo();
PayUtils.ailWeb(mOrderInfo, getActivity());
}
} else if (result.getPay_platform_type() == 4) {
Intent intent = new Intent(getActivity(), PayWebViewActivity.class);
intent.putExtra("ClickUrl", result.getKqPayInfo());
getActivity().startActivity(intent);
} else if (result.getPay_platform_type() == 5) {
PayUtils.SFTPay(getActivity(), result.getPayinfo());
} else {
PayTypeSdk.getInstance().cashierPay(getActivity(), result.getSandpayinfo().getCashierUrl(), new CallBack() {
@Override
public void onResult(Resp resp) {
if (resp.status.equals(Resp.SUCCESS) || resp.status.equals(Resp.FINISH)) {
getData(type);
}
}
});
}
} else if ("wechat".equals(mSelectedPayMethod)) {
if (result.getPay_platform_type() == 1) {
IWXAPI wxapi = WXAPIFactory.createWXAPI(getActivity(), Constant.WECHAT_APP_ID, false);
WeChatPayInfoBean wechatpayinfo = result.getWechatpayinfo();
//调起微信支付
PayReq req = new PayReq();
req.appId = Constant.WECHAT_APP_ID;
req.partnerId = wechatpayinfo.getMch_id(); //商户号
req.prepayId = wechatpayinfo.getPrepay_id(); //预付款id
req.nonceStr = wechatpayinfo.getNonce_str();
req.timeStamp = wechatpayinfo.getTimestamp() + "";
req.packageValue = "Sign=WXPay"; //固定值
req.sign = wechatpayinfo.getPaySign();
//先检测是否安装了微信
boolean isWXAppInstalledAndSupported = wxapi.isWXAppInstalled();
if (isWXAppInstalledAndSupported) {
wxapi.registerApp(Constant.WECHAT_APP_ID);
wxapi.sendReq(req);
} else {
MaleToast.showMessage(getActivity(), "未安装微信,不能支付");
}
} else if (result.getPay_platform_type() == 2) {
PayTypeSdk.getInstance().cashierPay(getActivity(), result.getSandpayinfo().getCashierUrl(), new CallBack() {
@Override
public void onResult(Resp resp) {
if (resp.status.equals(Resp.SUCCESS) || resp.status.equals(Resp.FINISH)) {
}
}
});
} else if (result.getPay_platform_type() == 4) {
Intent intent = new Intent(getContext(), PayWebViewActivity.class);
intent.putExtra("ClickUrl", result.getKqPayInfo());
getActivity().startActivity(intent);
} else if (result.getPay_platform_type() == 5) {
PayUtils.SFTPay(getActivity(), result.getPayinfo());
}
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
Log.e("", "");
}
@Override
public void onException(BaseActivity activity, Throwable e) {
Log.e("", "");
}
});
}
private void memberAuthority(final String type, final int value) {
SettingManager.memberAuthority((BaseActivity) getActivity(), type, value, new HttpUiCallBack<Object>() {
@Override
public void onSuccess(BaseActivity activity, Object result, String message) {
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
//微信支付成功后回调
public void onEventMainThread(PayEvent event) {
int errCode = event.getErrCode();
if (errCode == 0) {
MaleToast.showSuccessMsg(getActivity(), "充值成功");
getData(type);
} else if (errCode == -2) {
MaleToast.showFailureMsg(getActivity(), "充值取消");
} else {
MaleToast.showFailureMsg(getActivity(), "充值失败");
}
}
@Override
public void onResume() {
super.onResume();
getData(type);
}
@Override
public void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
if (null != mPayDialog && mPayDialog.isShowing()) {
mPayDialog.dismiss();
}
}
public void scrollTop() {
// if (sv_general_member != null) {
// sv_general_member.post(new Runnable() {
// @Override
// public void run() {
// sv_general_member.smoothScrollTo(0, 0);
// }
// });
// }
}
public interface OnScrollChange {
void scrollChange(int i);
}
public void setOnScrollChange(GeneralMemberFragment.OnScrollChange onScrollChange) {
this.onScrollChange = onScrollChange;
}
}

View File

@@ -14,14 +14,17 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.widget.NestedScrollView;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.StaggeredGridLayoutManager;
import com.alipay.sdk.app.PayTask;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.eventBus.PayEvent;
import com.xuebiping.bolizhuzi.controller.settings.adapter.GeneralOptionsRecyclerAdapter;
@@ -61,7 +64,7 @@ import de.greenrobot.event.EventBus;
public class SuperMemberFragment extends Fragment implements View.OnClickListener {
private NestedScrollView sv_super_member;
private TextView tv_member_time;
private ImageView iv_plus_tips;
private RecyclerView mOptionView;
@@ -70,7 +73,7 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
private TextView tv_super_member_price;
private TextView tv_super_member_sure;
private GeneralOptionsRecyclerAdapter mAdapter;
private int type = 5;
private int type = 1;
private List<MemberPrivilegesInfo> mPrivileges = new ArrayList<>();
@@ -81,7 +84,15 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
private int mini_program_type;
private OnScrollChange onScrollChange;
private int goodsId;
private int goodsId1;
private int goodsId2;
private int goodsId3;
private String price;
private int defaultType = 0;//默认选中会员类型
private SimpleDraweeView mUser_head;
private ConstraintLayout lin_vip_shift1, lin_vip_shift2, lin_vip_shift3;
private TextView tv_vip_shift_name1, tv_vip_shift_name2, tv_vip_shift_name3;
@Nullable
@Override
@@ -115,14 +126,23 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
}
private void initView(View v) {
sv_super_member = v.findViewById(R.id.sv_super_member);
tv_member_time = v.findViewById(R.id.tv_member_time);
iv_plus_tips = v.findViewById(R.id.iv_plus_tips);
tv_super_member_setting = v.findViewById(R.id.tv_super_member_setting);
rl_super_member_bottom = v.findViewById(R.id.rl_super_member_bottom);
tv_super_member_price = v.findViewById(R.id.tv_super_member_price);
tv_super_member_sure = v.findViewById(R.id.tv_super_member_sure);
mOptionView = v.findViewById(R.id.general_recycler_view);
mUser_head = v.findViewById(R.id.user_head);
tv_member_time = v.findViewById(R.id.tv_member_time);
lin_vip_shift1 = v.findViewById(R.id.lin_vip_shift1);
tv_vip_shift_name1 = v.findViewById(R.id.tv_vip_shift_name1);
// tv_vip_price1 = v.findViewById(R.id.tv_vip_price1);
// tv_vip_price_hint1 = v.findViewById(R.id.tv_vip_price_hint1);
mOptionView.setLayoutManager(new StaggeredGridLayoutManager(2,
StaggeredGridLayoutManager.VERTICAL) {
@Override
@@ -141,20 +161,26 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
iv_plus_tips.setOnClickListener(this);
tv_super_member_sure.setOnClickListener(this);
tv_super_member_setting.setOnClickListener(this);
sv_super_member.setOnScrollChangeListener(new View.OnScrollChangeListener() {
@Override
public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
if (onScrollChange != null) {
onScrollChange.scrollChange(scrollY);
}
}
});
lin_vip_shift1.setOnClickListener(this);
// sv_super_member.setOnScrollChangeListener(new View.OnScrollChangeListener() {
// @Override
// public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
// if (onScrollChange != null) {
// onScrollChange.scrollChange(scrollY);
// }
// }
// });
}
private void getData(int type) {
SettingManager.getMemberInfo((BaseActivity) getActivity(), type, new HttpUiCallBack<MemberBean>() {
@Override
public void onSuccess(BaseActivity activity, MemberBean result, String message) {
mUser_head.setImageURI(ConstUrl.IMAGE_URL + result.getInfo().getAvatar());
if (result.getInfo() != null) {
if (!TextUtils.isEmpty(result.getInfo().getExpire_date_new())) {
tv_member_time.setText("有效期至:" + result.getInfo().getExpire_date_new());
@@ -162,12 +188,12 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
rl_super_member_bottom.setVisibility(View.GONE);
tv_super_member_setting.setVisibility(View.VISIBLE);
} else {
tv_member_time.setText("1000+用户已开通");
tv_member_time.setText("你还未开通SVIP");
isVip = false;
rl_super_member_bottom.setVisibility(View.VISIBLE);
tv_super_member_setting.setVisibility(View.GONE);
}
SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, isVip);
// SPUtils.saveBoolean(getActivity(), ConsUser.USER_VIP, isVip);
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) {
rl_super_member_bottom.setVisibility(View.VISIBLE);
tv_super_member_setting.setVisibility(View.GONE);
@@ -223,6 +249,17 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
Intent intent = new Intent(getContext(), PrivilegeSettingActivity.class);
intent.putExtra("isVip", isVip);
startActivity(intent);
}else if (v == lin_vip_shift1) {
lin_vip_shift1.setBackgroundResource(R.drawable.vip_select_bg2);
lin_vip_shift2.setBackgroundResource(R.drawable.vip_select_bg1);
lin_vip_shift3.setBackgroundResource(R.drawable.vip_select_bg1);
defaultType = 0;
if (goodsId1 == 1011) {
List<MemberPrivilegesInfo> list = mAdapter.getmOptions();
list.get(0).setDesc("半价无限畅聊");
list.get(1).setDesc("每日可享1次免费视频单次最长1分钟");
mAdapter.setOptions(list);
}
}
}
@@ -448,16 +485,16 @@ public class SuperMemberFragment extends Fragment implements View.OnClickListene
}
}
public void scrollTop() {
if (sv_super_member != null) {
sv_super_member.post(new Runnable() {
@Override
public void run() {
sv_super_member.smoothScrollTo(0, 0);
}
});
}
}
// public void scrollTop() {
// if (sv_super_member != null) {
// sv_super_member.post(new Runnable() {
// @Override
// public void run() {
// sv_super_member.smoothScrollTo(0, 0);
// }
// });
// }
// }
public interface OnScrollChange {
void scrollChange(int i);

View File

@@ -0,0 +1,115 @@
package com.xuebiping.bolizhuzi.view.settings;
import android.content.Context;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.main.LookMeFragment;
import net.lucode.hackware.magicindicator.MagicIndicator;
import net.lucode.hackware.magicindicator.ViewPagerHelper;
import net.lucode.hackware.magicindicator.buildins.UIUtil;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerTitleView;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.indicators.LinePagerIndicator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.SimplePagerTitleView;
import java.util.ArrayList;
import java.util.List;
public class VisitorActivity extends BaseActivity {
private MagicIndicator mMagicIndicator;
private ViewPager mMainViewPager;
private MainViewPagerAdapter mViewPagerAdapter;
private List<Fragment> mChannelFragments = new ArrayList<>();
private LookMeFragment mLookMeFragment;
private MeLookFragment mMeLookFragment;
private List<String> mDataList = new ArrayList<>();
private int mIndex = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_visittor);
setTitleName("访客");
initView();
}
private void initView() {
mMagicIndicator = findViewById(R.id.magic_indicator);
mMainViewPager = findViewById(R.id.main_view_pager);
mLookMeFragment = new LookMeFragment();
mMeLookFragment = new MeLookFragment();
mChannelFragments.add(mLookMeFragment);
mChannelFragments.add(mMeLookFragment);
mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
mChannelFragments);
mMainViewPager.setAdapter(mViewPagerAdapter);
initMagicIndicator();
mViewPagerAdapter.notifyDataSetChanged();
mMainViewPager.setCurrentItem(mIndex);
}
private void initMagicIndicator() {
mDataList.clear();
mDataList.add("看过我的");
mDataList.add("我的足迹");
CommonNavigator commonNavigator = new CommonNavigator(this);
commonNavigator.setAdapter(new CommonNavigatorAdapter() {
@Override
public int getCount() {
return mDataList == null ? 0 : mDataList.size();
}
@Override
public IPagerTitleView getTitleView(Context context, final int index) {
SimplePagerTitleView simplePagerTitleView = new ScaleTransitionPagerTitleView(context);
simplePagerTitleView.setText(mDataList.get(index));
simplePagerTitleView.setTextSize(20);
simplePagerTitleView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
simplePagerTitleView.setNormalColor(Color.parseColor("#33000000"));
simplePagerTitleView.setSelectedColor(Color.parseColor("#000000"));
simplePagerTitleView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mMainViewPager.setCurrentItem(index);
}
});
return simplePagerTitleView;
}
@Override
public IPagerIndicator getIndicator(Context context) {
LinePagerIndicator indicator = new LinePagerIndicator(context);
indicator.setColors(getResources().getColor(R.color.yellow_ffd33e));
indicator.setLineHeight(UIUtil.dip2px(context, 10));
indicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT);
return null;
}
});
mMagicIndicator.setNavigator(commonNavigator);
ViewPagerHelper.bind(mMagicIndicator, mMainViewPager);
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 879 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 171 KiB

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient android:angle="0"
android:startColor="#F2B854"
android:endColor="#F8D77A"/>
<corners android:radius="@dimen/dp16"/>
</shape>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#999999"/>
<corners android:radius="@dimen/dp16"/>
</shape>

View File

@@ -3,7 +3,5 @@
android:shape="oval">
<solid android:color="#6CE4B7"/>
<size android:height="@dimen/dp8" android:width="@dimen/dp8"/>
<stroke android:width="@dimen/dp1" android:color="@color/white"/>
</shape>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#999999"/>
</shape>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="1dp" android:color="#dddddd"/>
<corners android:radius="45dp"/>
</shape>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#F2B854"/>
</shape>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="1dp" android:color="@color/yellow_ffd33e"/>
<corners android:radius="45dp"/>
</shape>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="2dp"/>
<solid android:color="#FFE5C2"/>
<solid android:color="@color/white"/>
</shape>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="2dp"/>
<solid android:color="#643406"/>
<solid android:color="@color/white"/>
</shape>

View File

@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="270"
android:endColor="#EE7874"
android:startColor="#F3C89B" />
<!-- <gradient-->
<!-- android:angle="270"-->
<!-- android:endColor="#EE7874"-->
<!-- android:startColor="#F3C89B" />-->
<solid android:color="@color/yellow_ffd33e"/>
<corners android:radius="10dp" />
</shape>

View File

@@ -184,6 +184,7 @@
</RelativeLayout>
<RelativeLayout
android:visibility="gone"
android:id="@+id/bind_certification"
android:layout_width="match_parent"
android:layout_height="48dp"
@@ -226,6 +227,7 @@
</RelativeLayout>
<RelativeLayout
android:visibility="gone"
android:id="@+id/bind_phone_confirm_weixin"
android:layout_width="match_parent"
android:layout_height="48dp"
@@ -268,6 +270,7 @@
</RelativeLayout>
<RelativeLayout
android:visibility="gone"
android:id="@+id/bind_phone_confirm_qq"
android:layout_width="match_parent"
android:layout_height="48dp"

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<LinearLayout
android:layout_marginLeft="@dimen/dp12"
android:id="@+id/rl_head"
android:layout_width="match_parent"
android:layout_height="@dimen/dp48">
<net.lucode.hackware.magicindicator.MagicIndicator
android:id="@+id/magic_indicator"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp48"
android:layout_gravity="center_vertical" />
</LinearLayout>
<androidx.viewpager.widget.ViewPager
android:id="@+id/main_view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/rl_head" />
</RelativeLayout>

View File

@@ -0,0 +1,74 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:viewBindingIgnore="true">
<LinearLayout
android:id="@+id/ll_content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible">
<com.scwang.smartrefresh.layout.header.ClassicsHeader
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:srlEnableLastTime="false" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/rl_no_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp100"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/dp150"
android:layout_height="@dimen/dp88"
android:src="@mipmap/icon_img_no_black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp5"
android:text="暂无数据"
android:textColor="@color/three_text"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_recommend_list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>
<com.scwang.smartrefresh.layout.footer.ClassicsFooter
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</LinearLayout>
</LinearLayout>

View File

@@ -0,0 +1,74 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:viewBindingIgnore="true">
<LinearLayout
android:id="@+id/ll_content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible">
<com.scwang.smartrefresh.layout.header.ClassicsHeader
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:srlEnableLastTime="false" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/rl_no_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp100"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/dp150"
android:layout_height="@dimen/dp88"
android:src="@mipmap/icon_img_no_black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp5"
android:text="暂无数据"
android:textColor="@color/three_text"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_recommend_list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>
<com.scwang.smartrefresh.layout.footer.ClassicsFooter
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</LinearLayout>
</LinearLayout>

View File

@@ -56,7 +56,6 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_member_title">
@@ -73,8 +72,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="普通会员"
android:textColor="@color/three_text"
android:text="VIP"
android:textColor="@color/white"
android:textSize="18sp" />
<View
@@ -99,8 +98,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="超级会员"
android:textColor="@color/three_text"
android:text="SVIP"
android:textColor="@color/white"
android:textSize="18sp" />
<View

View File

@@ -396,7 +396,7 @@
android:layout_marginStart="16dp"
android:layout_marginTop="28dp"
android:layout_marginEnd="16dp"
android:background="@drawable/open_vip_btn"
android:background="@drawable/shape_button_enable"
android:gravity="center"
android:text="开通会员"
android:textColor="@color/white"

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<LinearLayout
android:layout_marginLeft="@dimen/dp12"
android:id="@+id/rl_head"
android:layout_width="match_parent"
android:layout_height="@dimen/dp48">
<net.lucode.hackware.magicindicator.MagicIndicator
android:id="@+id/magic_indicator"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp48"
android:layout_gravity="center_vertical" />
</LinearLayout>
<androidx.viewpager.widget.ViewPager
android:id="@+id/main_view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/rl_head" />
</RelativeLayout>

View File

@@ -0,0 +1,75 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:viewBindingIgnore="true">
<LinearLayout
android:id="@+id/ll_content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible">
<com.scwang.smartrefresh.layout.header.ClassicsHeader
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:srlEnableLastTime="false" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/rl_no_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp100"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/dp150"
android:layout_height="@dimen/dp88"
android:src="@mipmap/icon_img_no_black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp5"
android:text="暂无数据"
android:textColor="@color/three_text"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_recommend_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/dp_10" />
</LinearLayout>
</LinearLayout>
<com.scwang.smartrefresh.layout.footer.ClassicsFooter
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</LinearLayout>
</LinearLayout>

View File

@@ -1,114 +1,101 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:viewBindingIgnore="true">
<!-- <androidx.core.widget.NestedScrollView-->
<!-- android:id="@+id/sv_general_member"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:layout_alignParentTop="true"-->
<!-- android:background="@mipmap/ly_ic_member_vip"-->
<!-- android:scrollbars="none">-->
<LinearLayout
<androidx.core.widget.NestedScrollView
android:id="@+id/sv_general_member"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:background="@mipmap/ic_member_vip"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical">
android:fillViewport="true"
android:scrollbars="none">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="57dp"
android:layout_marginEnd="16dp"
android:background="@drawable/ic_general_member_header_bg"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="20dp"
android:text="VIP享专属特权"
android:textColor="#FFD692"
android:textSize="20dp"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp">
<ImageView
android:id="@+id/member_my_photo1"
android:layout_width="26dp"
android:layout_height="26dp"
android:src="@drawable/ic_member_photo1" />
<ImageView
android:id="@+id/member_my_photo2"
android:layout_width="26dp"
android:layout_height="26dp"
android:layout_marginStart="-8dp"
android:layout_toEndOf="@+id/member_my_photo1"
android:src="@drawable/ic_member_photo2" />
<ImageView
android:id="@+id/member_my_photo3"
android:layout_width="26dp"
android:layout_height="26dp"
android:layout_marginStart="-8dp"
android:layout_toEndOf="@+id/member_my_photo2"
android:src="@drawable/ic_member_photo3" />
</RelativeLayout>
<TextView
android:id="@+id/tv_member_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="14dp"
android:text="1000+用户已开通"
android:textColor="#80FFFFFF"
android:textSize="12dp" />
</LinearLayout>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="8dp"
android:src="@drawable/ic_member_diamond1" />
</RelativeLayout>
<com.flyco.roundview.RoundLinearLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="-18dp"
android:orientation="vertical"
fresco:rv_backgroundColor="#2F2A24"
fresco:rv_cornerRadius_TL="20dp"
fresco:rv_cornerRadius_TR="20dp">
android:layout_alignParentTop="true"
android:background="@mipmap/ic_member_vip"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="150dp"
android:layout_marginRight="16dp"
android:background="@drawable/ic_general_member_header_bg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginTop="16dp"
android:layout_marginRight="16dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_vip_tag" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:text="特权"
android:textColor="#814D1A"
android:textSize="16sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/user_head"
android:layout_width="16dp"
android:layout_height="16dp"
android:scaleType="fitXY"
app:roundAsCircle="true"
app:roundingBorderColor="#814D1A"
app:roundingBorderWidth="2dp" />
<TextView
android:id="@+id/tv_member_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:text="你还未开通VIP"
android:textColor="#814D1A"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="聊天倾诉,一路陪伴美好时光"
android:textColor="@color/one_text"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
@@ -122,9 +109,9 @@
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="会员专享权益"
android:textColor="#DDDEDE"
android:textSize="16dp"
android:text="会员套餐"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
@@ -137,7 +124,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="22dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="16dp"
android:orientation="horizontal">
@@ -147,7 +134,7 @@
android:layout_height="wrap_content"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg2"
android:background="@mipmap/new_vip_select_bg2"
android:orientation="vertical"
android:paddingTop="16dp">
@@ -155,9 +142,10 @@
android:id="@+id/tv_vip_shift_name1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="月度会员"
android:text="月"
android:textColor="@color/white"
android:textSize="14dp"
android:textStyle="bold"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
@@ -178,7 +166,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
@@ -186,7 +174,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
@@ -197,21 +185,12 @@
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="#80FFFFFF"
android:textColor="@color/white"
android:textSize="12dp"
android:visibility="invisible"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
<ImageView
android:id="@+id/iv_vip_shift1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_select"
android:visibility="gone"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
@@ -221,10 +200,11 @@
android:layout_marginStart="7dp"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg1"
android:background="@mipmap/new_vip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -252,7 +232,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
@@ -260,7 +240,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="128"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
@@ -271,7 +251,7 @@
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥228"
android:textColor="#80FFFFFF"
android:textColor="@color/white"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
@@ -285,14 +265,6 @@
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/iv_vip_shift2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_select"
android:visibility="gone"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
@@ -301,10 +273,11 @@
android:layout_height="wrap_content"
android:layout_marginStart="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg1"
android:background="@mipmap/new_vip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -332,7 +305,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
@@ -340,7 +313,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="#F9C644"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
@@ -351,7 +324,7 @@
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="#80FFFFFF"
android:textColor="@color/white"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
@@ -376,30 +349,102 @@
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
<androidx.core.widget.NestedScrollView
android:id="@+id/sv_general_member"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_line1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="会员权益"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_line2" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/general_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:scrollbars="none">
android:layout_marginLeft="10dp"
android:layout_marginTop="16dp"
android:layout_marginRight="10dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_marginTop="20dp"
android:layout_gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="更多会员权益敬请期待..."
android:textColor="@color/white"
android:textSize="12sp"
/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/general_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="16dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="100dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</com.flyco.roundview.RoundLinearLayout>
</LinearLayout>
<!-- </androidx.core.widget.NestedScrollView>-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_line1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="注意事项"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_member_line2" />
</LinearLayout>
<RelativeLayout
android:layout_marginBottom="100dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginTop="20dp"
android:background="@drawable/ic_general_member_header_bg"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_notice"
android:layout_margin="16dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1.请确保在网络良好的情况支付,为保证充值顺利,请在充值期间不要进行其他操作\n\n2.VIP属于虚拟商品一经购买不得退换\n\n3.原充值购买VIP会员的用户将自动升级为SVIP会员\n\n4.原赠送的VIP会员保持不变\n\n5.VIP会员视频折扣-10金币SVIP会员视频折扣-20金币"
android:textColor="@color/white"
android:textSize="12sp"
/>
</RelativeLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
<LinearLayout
android:id="@+id/lin_member_bottom"

View File

@@ -11,6 +11,7 @@
android:layout_height="@dimen/dp48">
<LinearLayout
android:visibility="gone"
android:id="@+id/ll_select"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -37,6 +38,7 @@
</LinearLayout>
<net.lucode.hackware.magicindicator.MagicIndicator
android:layout_marginLeft="6dp"
android:id="@+id/magic_indicator"
android:layout_width="1000dp"
android:layout_height="match_parent"

View File

@@ -37,7 +37,7 @@
android:layout_marginTop="@dimen/dp10"
android:layout_marginLeft="@dimen/dp5"
android:layout_marginRight="@dimen/dp5"
android:layout_marginBottom="@dimen/dp10" />
android:layout_marginBottom="@dimen/dp50" />
</LinearLayout>

View File

@@ -69,7 +69,7 @@
android:layout_marginTop="@dimen/dp10"
android:layout_marginLeft="@dimen/dp5"
android:layout_marginRight="@dimen/dp5"
android:layout_marginBottom="@dimen/dp10"
android:layout_marginBottom="@dimen/dp50"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -374,18 +374,18 @@
<com.flyco.roundview.RoundTextView
android:id="@+id/rtv_new_scan_num"
android:layout_width="12dp"
android:layout_height="12dp"
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_toEndOf="@id/ll_scan"
android:gravity="center"
android:text=""
android:textColor="@color/white"
android:textSize="8sp"
android:textSize="12sp"
android:visibility="invisible"
app:layout_constraintStart_toEndOf="@+id/tv_scan_num"
app:layout_constraintTop_toTopOf="parent"
app:rv_backgroundColor="@color/mainColor"
app:rv_cornerRadius="7dp" />
app:rv_backgroundColor="#f94f2e"
app:rv_cornerRadius="9dp" />
<TextView
android:id="@+id/tv_scan"
@@ -403,6 +403,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:visibility="gone"
android:id="@+id/ll_foot"
android:layout_width="match_parent"
android:layout_height="match_parent"

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
@@ -7,18 +8,16 @@
tools:viewBindingIgnore="true">
<androidx.core.widget.NestedScrollView
android:id="@+id/sv_super_member"
android:id="@+id/sv_general_member"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_marginBottom="40dp"
android:background="@mipmap/ic_member_svip"
android:fillViewport="true"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="60dp"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:background="@mipmap/ic_member_svip"
android:focusable="true"
android:focusableInTouchMode="true"
@@ -26,75 +25,71 @@
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="140dp"
android:layout_marginEnd="16dp">
android:layout_height="180dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="150dp"
android:layout_marginRight="16dp"
android:background="@drawable/ic_super_member_top_bg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:background="@drawable/ic_super_member_top_bg"
android:orientation="vertical">
android:layout_marginLeft="16dp"
android:layout_marginTop="16dp"
android:layout_marginRight="16dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_vip_tag" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="32dp"
android:text="SVIP享专属特权"
android:textColor="#E2C5FB"
android:textSize="18dp"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:text="特权"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<RelativeLayout
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp">
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:id="@+id/member_my_photo1"
android:layout_width="28dp"
android:layout_height="28dp"
android:src="@drawable/ic_member_photo1" />
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/user_head"
android:layout_width="16dp"
android:layout_height="16dp"
android:scaleType="fitXY"
app:roundAsCircle="true"
app:roundingBorderColor="@color/white"
app:roundingBorderWidth="2dp" />
<ImageView
android:id="@+id/member_my_photo2"
android:layout_width="28dp"
android:layout_height="28dp"
android:layout_marginStart="-8dp"
android:layout_toEndOf="@+id/member_my_photo1"
android:src="@drawable/ic_member_photo2" />
<ImageView
android:id="@+id/member_my_photo3"
android:layout_width="28dp"
android:layout_height="28dp"
android:layout_marginStart="-8dp"
android:layout_toEndOf="@+id/member_my_photo2"
android:src="@drawable/ic_member_photo3" />
</RelativeLayout>
<TextView
android:id="@+id/tv_member_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="14dp"
android:text="1000+用户已开通"
android:textColor="#F8D9F9"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_member_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:text="你还未开通VIP"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
<ImageView
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="20dp"
android:src="@drawable/ic_member_diamond2" />
android:layout_centerInParent="true"
android:text="聊天倾诉,一路陪伴美好时光"
android:textColor="@color/white"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
@@ -114,9 +109,9 @@
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="SVIP专享权益"
android:textColor="#DDD6FF"
android:textSize="16dp"
android:text="会员套餐"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
@@ -125,6 +120,235 @@
android:src="@drawable/ic_super_member_line2" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="16dp"
android:orientation="horizontal">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg2"
android:orientation="vertical"
android:paddingTop="16dp">
<TextView
android:id="@+id/tv_vip_shift_name1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="单月"
android:textColor="@color/white"
android:textSize="14dp"
android:textStyle="bold"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint1"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name1">
<TextView
android:id="@+id/tv_vip_unit1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="#F9C644"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="#80FFFFFF"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="7dp"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="年度会员"
android:textColor="@color/white"
android:textSize="14dp"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint2"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name2">
<TextView
android:id="@+id/tv_vip_unit2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="128"
android:textColor="#F9C644"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥228"
android:textColor="#80FFFFFF"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="新用户立减100"
android:visibility="gone"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="7dp"
android:layout_weight="1"
android:background="@drawable/vip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="月度会员"
android:textColor="@color/white"
android:textSize="14dp"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint3"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name3">
<TextView
android:id="@+id/tv_vip_unit3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="#F9C644"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="#F9C644"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="#80FFFFFF"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
<com.flyco.roundview.RoundTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingStart="10dp"
android:paddingTop="1dp"
android:paddingEnd="10dp"
android:paddingBottom="1dp"
android:text="热门"
android:textColor="#A05912"
android:textSize="11dp"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent"
fresco:rv_backgroundColor="#FFD89E"
fresco:rv_cornerRadius_BR="12dp"
fresco:rv_cornerRadius_TL="12dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@@ -0,0 +1,508 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:viewBindingIgnore="true">
<androidx.core.widget.NestedScrollView
android:id="@+id/sv_general_member"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:background="@mipmap/ic_member_svip"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="150dp"
android:layout_marginRight="16dp"
android:background="@drawable/ic_super_member_top_bg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginTop="16dp"
android:layout_marginRight="16dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_svip_tag" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:text="特权"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/user_head"
android:layout_width="16dp"
android:layout_height="16dp"
android:scaleType="fitXY"
app:roundAsCircle="true"
app:roundingBorderColor="@color/white"
app:roundingBorderWidth="2dp" />
<TextView
android:id="@+id/tv_member_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:text="你还未开通SVIP"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="聊天倾诉,一路陪伴美好时光"
android:textColor="@color/white"
android:textSize="15sp"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="会员套餐"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line2" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="16dp"
android:orientation="horizontal">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@mipmap/svip_select_bg2"
android:orientation="vertical"
android:paddingTop="16dp">
<TextView
android:id="@+id/tv_vip_shift_name1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="单月"
android:textColor="@color/white"
android:textSize="14dp"
android:textStyle="bold"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint1"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name1">
<TextView
android:id="@+id/tv_vip_unit1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="@color/white"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="7dp"
android:layout_marginEnd="7dp"
android:layout_weight="1"
android:background="@mipmap/svip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="年度会员"
android:textColor="@color/white"
android:textSize="14dp"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint2"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name2">
<TextView
android:id="@+id/tv_vip_unit2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="128"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥228"
android:textColor="@color/white"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="新用户立减100"
android:visibility="gone"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/lin_vip_shift3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="7dp"
android:layout_weight="1"
android:background="@mipmap/svip_select_bg1"
android:orientation="vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_vip_shift_name3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="月度会员"
android:textColor="@color/white"
android:textSize="14dp"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginBottom="12dp"
android:orientation="horizontal"
fresco:layout_constraintBottom_toTopOf="@+id/tv_vip_price_hint3"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toBottomOf="@+id/tv_vip_shift_name3">
<TextView
android:id="@+id/tv_vip_unit3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="¥"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
android:id="@+id/tv_vip_price3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="18"
android:textColor="@color/white"
android:textSize="28dp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/tv_vip_price_hint3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="¥38"
android:textColor="@color/white"
android:textSize="12dp"
fresco:layout_constraintBottom_toBottomOf="parent"
fresco:layout_constraintEnd_toEndOf="parent"
fresco:layout_constraintStart_toStartOf="parent" />
<com.flyco.roundview.RoundTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingStart="10dp"
android:paddingTop="1dp"
android:paddingEnd="10dp"
android:paddingBottom="1dp"
android:text="热门"
android:textColor="#A05912"
android:textSize="11dp"
fresco:layout_constraintStart_toStartOf="parent"
fresco:layout_constraintTop_toTopOf="parent"
fresco:rv_backgroundColor="#FFD89E"
fresco:rv_cornerRadius_BR="12dp"
fresco:rv_cornerRadius_TL="12dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="会员权益"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line2" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/general_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="16dp"
android:layout_marginRight="10dp" />
<TextView
android:layout_marginTop="20dp"
android:layout_gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="更多会员权益敬请期待..."
android:textColor="@color/white"
android:textSize="12sp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:text="注意事项"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_super_member_line2" />
</LinearLayout>
<RelativeLayout
android:layout_marginBottom="100dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginTop="20dp"
android:background="@drawable/ic_super_member_top_bg"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_notice"
android:layout_margin="16dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1.请确保在网络良好的情况支付,为保证充值顺利,请在充值期间不要进行其他操作\n\n2.VIP属于虚拟商品一经购买不得退换\n\n3.原充值购买VIP会员的用户将自动升级为SVIP会员\n\n4.原赠送的VIP会员保持不变\n\n5.VIP会员视频折扣-10金币SVIP会员视频折扣-20金币"
android:textColor="@color/white"
android:textSize="12sp"
/>
</RelativeLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
<LinearLayout
android:id="@+id/lin_member_bottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@color/transparent"
android:gravity="center_horizontal"
android:orientation="vertical">
<TextView
android:id="@+id/tv_member_open"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="20dp"
android:layout_marginBottom="30dp"
android:background="@drawable/ic_buy_vip_btn_bg"
android:gravity="center"
android:text="立即开通"
android:textColor="@color/one_text"
android:textSize="16dp"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/lin_member_bottom_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="20dp"
android:layout_marginBottom="30dp"
android:background="@drawable/ic_vip_bottom_btn_bg"
android:gravity="center"
android:visibility="gone">
<TextView
android:id="@+id/tv_member_setting"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="设置特权"
android:textColor="@color/one_text"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/tv_member_sure"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="继续购买"
android:textColor="@color/one_text"
android:textSize="16dp"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:viewBindingIgnore="true">
<RelativeLayout
android:id="@+id/rl_item"
android:layout_width="match_parent"
android:layout_height="80dp">
<View
android:visibility="gone"
android:id="@+id/social_red_point"
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_centerVertical="true"
android:layout_marginLeft="3dp"
android:background="@drawable/shape_red_point"
android:gravity="center_vertical" />
<RelativeLayout
android:id="@+id/rl_list_photo"
android:layout_width="@dimen/dp50"
android:layout_height="@dimen/dp50"
android:layout_centerVertical="true"
android:layout_marginLeft="16dp">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/list_photo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
fresco:roundAsCircle="true" />
<RelativeLayout
android:id="@+id/rl_online_bg"
android:layout_width="@dimen/dp30"
android:layout_height="@dimen/dp16"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="@drawable/look_me_online_bg">
<TextView
android:id="@+id/tv_online"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="在线"
android:textColor="@color/white"
android:textSize="10sp" />
</RelativeLayout>
</RelativeLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="15dp"
android:layout_toRightOf="@+id/rl_list_photo"
android:gravity="center_vertical"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical">
<TextView
android:textStyle="bold"
android:id="@+id/social_list_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="醉红颜"
android:textColor="@color/one_text"
android:textSize="15sp" />
<ImageView
android:visibility="gone"
android:id="@+id/iv_member_sign"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp8"
android:src="@drawable/ic_pvip" />
</LinearLayout>
<TextView
android:ellipsize="end"
android:maxLines="2"
android:layout_marginRight="80dp"
android:id="@+id/tv_sign"
android:layout_marginTop="@dimen/dp6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="很高兴见到你"
android:textColor="@color/three_text"
android:textSize="12sp" />
</LinearLayout>
<TextView
android:id="@+id/tv_focus"
android:layout_width="72dp"
android:layout_height="24dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="16dp"
android:background="@drawable/shape_dddddd_line_oval_bg"
android:gravity="center"
android:text="已关注"
android:textColor="#dddddd"
android:textSize="14sp" />
</RelativeLayout>
<View
android:layout_marginLeft="80dp"
android:layout_width="match_parent"
android:layout_height="2px"
android:background="@color/bottomCuttingLine" />
</LinearLayout>

View File

@@ -0,0 +1,106 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/lin_gender_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/transparent"
android:orientation="vertical">
<com.flyco.roundview.RoundRelativeLayout
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp20"
android:clipChildren="false"
android:paddingVertical="@dimen/dp16"
app:rv_backgroundColor="@color/white"
app:rv_cornerRadius="10dp">
<RelativeLayout
android:id="@+id/rl_user_head"
android:layout_marginLeft="16dp"
android:layout_width="@dimen/dp50"
android:layout_height="@dimen/dp50">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/user_head"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:roundAsCircle="true" />
<View
android:id="@+id/view_online_status"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="2dp"
android:layout_marginRight="2dp"
android:background="@drawable/shape_999999_oval_bg"
android:layout_width="10dp"
android:layout_height="10dp" />
</RelativeLayout>
<LinearLayout
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/rl_user_head"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_nick_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="10dp"
android:gravity="center"
android:singleLine="true"
android:textColor="@color/one_text"
android:textSize="16dp"
android:textStyle="bold"
tools:text="小可爱" />
<ImageView
android:visibility="gone"
android:id="@+id/iv_member_sign"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dp8"
android:src="@drawable/ic_pvip" />
</LinearLayout>
<TextView
android:id="@+id/tv_user_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_marginTop="4dp"
android:text="哈哈哈哈"
android:textColor="@color/two_text"
android:textSize="12dp" />
</LinearLayout>
<TextView
android:id="@+id/iv_luck_hi"
android:layout_width="@dimen/dp60"
android:layout_height="@dimen/dp30"
android:textSize="@dimen/dp12"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp15"
android:gravity="center"
android:textColor="#E472ED"
android:background="@drawable/shape_button_e472ed_border"
android:text="聊一聊"/>
</com.flyco.roundview.RoundRelativeLayout>
</LinearLayout>

View File

@@ -14,12 +14,11 @@
android:layout_height="wrap_content"
android:minHeight="102dp">
<ImageView
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/iv_privilege_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="44dp"
android:layout_height="44dp"
android:layout_marginTop="8dp"
android:src="@drawable/ic_privilege1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -52,6 +51,7 @@
tools:text="每日免费聊100条" />
<ImageView
android:visibility="gone"
android:id="@+id/iv_privilege_tip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -89,12 +89,14 @@
android:layout_height="@dimen/dp20">
<View
android:id="@+id/view_online_status"
android:layout_gravity="center_vertical"
android:background="@drawable/bg_online_round"
android:background="@drawable/shape_6ce4b7_oval_bg"
android:layout_width="@dimen/dp8"
android:layout_height="@dimen/dp8"/>
<TextView
android:id="@+id/tv_online_status"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dp4"
android:layout_width="wrap_content"
@@ -116,14 +118,62 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:visibility="gone"
android:layout_marginBottom="@dimen/dp8"
android:id="@+id/ll_star2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:orientation="horizontal">
<ImageView
android:id="@+id/iv_star_12"
android:layout_width="@dimen/dp14"
android:layout_height="@dimen/dp14"
android:src="@mipmap/ic_main_star" />
<ImageView
android:id="@+id/iv_star_22"
android:layout_width="@dimen/dp14"
android:layout_height="@dimen/dp14"
android:layout_marginLeft="@dimen/dp4"
android:src="@mipmap/ic_main_star" />
<ImageView
android:id="@+id/iv_star_32"
android:layout_width="@dimen/dp14"
android:layout_height="@dimen/dp14"
android:layout_marginLeft="@dimen/dp4"
android:src="@mipmap/ic_main_star" />
<ImageView
android:id="@+id/iv_star_42"
android:layout_width="@dimen/dp14"
android:layout_height="@dimen/dp14"
android:layout_marginLeft="@dimen/dp4"
android:src="@mipmap/ic_main_star" />
<ImageView
android:id="@+id/iv_star_52"
android:layout_width="@dimen/dp14"
android:layout_height="@dimen/dp14"
android:layout_marginLeft="@dimen/dp4"
android:src="@mipmap/ic_main_star" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_centerVertical="true"
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxEms="5"
android:maxLines="1"
android:text="佳茵ovo"
android:textColor="@color/white"
android:textSize="12sp"
@@ -134,7 +184,7 @@
android:layout_alignParentRight="true"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp18"
android:layout_height="@dimen/dp16"
android:background="@drawable/bg_svip_chat_price">
<TextView
@@ -147,6 +197,7 @@
android:textColor="#F5ECCC"/>
<TextView
android:id="@+id/tv_member_price"
android:layout_marginRight="@dimen/dp6"
android:layout_marginLeft="@dimen/dp4"
android:layout_width="wrap_content"
@@ -156,6 +207,37 @@
android:textSize="@dimen/dp8"
/>
</LinearLayout>
<LinearLayout
android:visibility="gone"
android:id="@+id/ll_svip_price2"
android:layout_alignParentRight="true"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp28"
android:background="@drawable/bg_svip_chat_price">
<TextView
android:layout_marginLeft="@dimen/dp6"
android:textSize="@dimen/dp12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SVIP"
android:textStyle="bold"
android:textColor="#F5ECCC"/>
<TextView
android:textStyle="bold"
android:id="@+id/tv_member_price2"
android:layout_marginRight="@dimen/dp6"
android:layout_marginLeft="@dimen/dp32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="140金币/分"
android:textColor="#fff5eccc"
android:textSize="@dimen/dp12"
/>
</LinearLayout>
</RelativeLayout>
<RelativeLayout
@@ -164,6 +246,7 @@
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_signature"
android:maxEms="6"
android:maxLines="1"
android:ellipsize="end"
@@ -171,17 +254,18 @@
android:layout_height="wrap_content"
android:text="我说心动至上哈哈哈"
android:textColor="#80FFFFFF"
android:textSize="12sp"
android:textSize="10sp"
/>
<TextView
android:id="@+id/tv_price"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="160金币/分"
android:textColor="#ffffffff"
android:textSize="@dimen/dp8"
android:textSize="8dp"
/>
</RelativeLayout>
</LinearLayout>

View File

@@ -0,0 +1,186 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:viewBindingIgnore="true">
<RelativeLayout
android:id="@+id/rl_item"
android:layout_width="match_parent"
android:layout_height="80dp">
<RelativeLayout
android:id="@+id/rl_list_photo"
android:layout_width="@dimen/dp50"
android:layout_height="@dimen/dp50"
android:layout_centerVertical="true"
android:layout_marginLeft="16dp">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/user_head"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
fresco:roundAsCircle="true" />
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_online_bg"-->
<!-- android:layout_width="@dimen/dp30"-->
<!-- android:layout_height="@dimen/dp16"-->
<!-- android:layout_alignParentBottom="true"-->
<!-- android:layout_centerHorizontal="true"-->
<!-- android:background="@drawable/look_me_online_bg">-->
<!-- <TextView-->
<!-- android:id="@+id/tv_online"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_centerInParent="true"-->
<!-- android:text="在线"-->
<!-- android:textColor="@color/white"-->
<!-- android:textSize="10sp" />-->
<!-- </RelativeLayout>-->
</RelativeLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="15dp"
android:layout_toRightOf="@+id/rl_list_photo"
android:gravity="center_vertical"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical">
<TextView
android:textStyle="bold"
android:id="@+id/tv_nick_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="醉红颜"
android:textColor="@color/one_text"
android:textSize="15sp" />
<ImageView
android:visibility="gone"
android:id="@+id/iv_member_sign"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp8"
android:src="@drawable/ic_pvip" />
</LinearLayout>
<!-- <TextView-->
<!-- android:ellipsize="end"-->
<!-- android:maxLines="2"-->
<!-- android:layout_marginRight="80dp"-->
<!-- android:id="@+id/tv_sign"-->
<!-- android:layout_marginTop="@dimen/dp6"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="很高兴见到你"-->
<!-- android:textColor="@color/three_text"-->
<!-- android:textSize="12sp" />-->
<LinearLayout
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:src="@drawable/ic_guard_love"/>
<TextView
android:id="@+id/tv_intimacy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp6"
android:text="0"
android:textColor="#E53620"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<!-- <LinearLayout-->
<!-- android:id="@+id/ll_visit_time"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginRight="16dp"-->
<!-- android:orientation="vertical"-->
<!-- android:visibility="gone">-->
<!-- <TextView-->
<!-- android:layout_gravity="end|right"-->
<!-- android:id="@+id/tv_add_time"-->
<!-- android:layout_marginTop="@dimen/dp6"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="01/25访问"-->
<!-- android:textColor="@color/three_text"-->
<!-- android:textSize="12sp" />-->
<!-- <LinearLayout-->
<!-- android:layout_marginTop="@dimen/dp6"-->
<!-- android:layout_gravity="center_vertical"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:orientation="horizontal">-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="共 "-->
<!-- android:textColor="@color/three_text"-->
<!-- android:textSize="14sp"-->
<!-- />-->
<!-- <TextView-->
<!-- android:id="@+id/tv_visit_number"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="1次"-->
<!-- android:textColor="@color/yellow_ffd33e"-->
<!-- android:textSize="14sp"-->
<!-- />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text=" 访问"-->
<!-- android:textColor="@color/three_text"-->
<!-- android:textSize="14sp"-->
<!-- />-->
<!-- </LinearLayout>-->
<!-- </LinearLayout>-->
<!-- <TextView-->
<!-- android:visibility="gone"-->
<!-- android:id="@+id/tv_chat"-->
<!-- android:layout_width="60dp"-->
<!-- android:layout_height="30dp"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginRight="16dp"-->
<!-- android:background="@drawable/shape_button_enable"-->
<!-- android:gravity="center"-->
<!-- android:text="发消息"-->
<!-- android:textColor="@color/white"-->
<!-- android:textSize="12sp" />-->
</RelativeLayout>
</LinearLayout>

View File

@@ -1,21 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:fresco="http://schemas.android.com/apk/res-auto">
android:orientation="vertical"
tools:viewBindingIgnore="true">
<LinearLayout
android:layout_marginTop="@dimen/dp10"
android:layout_marginBottom="@dimen/dp10"
android:layout_marginLeft="@dimen/dp16"
android:layout_marginRight="@dimen/dp16"
<RelativeLayout
android:id="@+id/rl_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
android:layout_height="80dp">
<View
android:visibility="gone"
android:id="@+id/social_red_point"
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_centerVertical="true"
android:layout_marginLeft="3dp"
android:background="@drawable/shape_red_point"
android:gravity="center_vertical" />
<RelativeLayout
android:id="@+id/rl_list_photo"
android:layout_width="@dimen/dp50"
android:layout_height="@dimen/dp50">
android:layout_height="@dimen/dp50"
android:layout_centerVertical="true"
android:layout_marginLeft="16dp">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/list_photo"
@@ -45,64 +57,119 @@
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dp12"
android:layout_height="match_parent"
android:layout_marginLeft="15dp"
android:layout_toRightOf="@+id/rl_list_photo"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/tv_name"
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="瑞恩 Rain"
android:textColor="@color/one_text"
android:textSize="15sp"
android:textStyle="bold" />
android:orientation="horizontal"
android:gravity="center_vertical">
<TextView
android:textStyle="bold"
android:id="@+id/social_list_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="醉红颜"
android:textColor="@color/one_text"
android:textSize="15sp" />
<ImageView
android:visibility="gone"
android:id="@+id/iv_member_sign"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp8"
android:src="@drawable/ic_pvip" />
</LinearLayout>
<TextView
android:id="@+id/tv_time"
android:ellipsize="end"
android:maxLines="2"
android:layout_marginRight="80dp"
android:id="@+id/tv_sign"
android:layout_marginTop="@dimen/dp6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp6"
android:text="1小时前在线"
android:text="很高兴见到你"
android:textColor="@color/three_text"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:layout_gravity="center_vertical"
android:id="@+id/ll_visit_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="16dp"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:layout_gravity="end|right"
android:id="@+id/tv_add_time"
android:layout_marginTop="@dimen/dp6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:text="01/25访问"
android:textColor="@color/three_text"
android:textSize="14sp"
/>
android:textSize="12sp" />
<TextView
android:id="@+id/tv_visit_number"
<LinearLayout
android:layout_marginTop="@dimen/dp6"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1次"
android:textColor="@color/yellow_ffd33e"
android:textSize="14sp"
/>
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" 访问"
android:textColor="@color/three_text"
android:textSize="14sp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" "
android:textColor="@color/three_text"
android:textSize="14sp"
/>
<TextView
android:id="@+id/tv_visit_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1次"
android:textColor="@color/yellow_ffd33e"
android:textSize="14sp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" 访问"
android:textColor="@color/three_text"
android:textSize="14sp"
/>
</LinearLayout>
</LinearLayout>
<TextView
android:visibility="gone"
android:id="@+id/tv_chat"
android:layout_width="60dp"
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="16dp"
android:background="@drawable/shape_button_enable"
android:gravity="center"
android:text="发消息"
android:textColor="@color/white"
android:textSize="12sp" />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
</LinearLayout>

View File

@@ -45,6 +45,19 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:visibility="gone"
android:id="@+id/tv_option_hint2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:text="开启后只可拨打不能接听"
android:textColor="@color/three_text"
android:textSize="12dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@+id/setting_option_name"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_option_hint"
android:layout_width="wrap_content"

View File

@@ -58,6 +58,7 @@
android:orientation="horizontal">
<TextView
android:textStyle="bold"
android:layout_weight="1"
android:id="@+id/tv_all"
android:layout_width="match_parent"
@@ -65,19 +66,20 @@
android:layout_gravity="center"
android:layout_marginRight="@dimen/dp6"
android:layout_marginLeft="@dimen/dp6"
android:background="@drawable/bg_fb65fd"
android:background="@drawable/shape_button_enable"
android:gravity="center"
android:text="全部"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp17" />
android:textSize="@dimen/dp13" />
<TextView
android:textStyle="bold"
android:layout_weight="1"
android:id="@+id/tv_boy"
android:layout_width="match_parent"
android:layout_height="@dimen/dp44"
android:textColor="#999999"
android:textSize="@dimen/dp17"
android:textSize="@dimen/dp13"
android:text="男up"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp6"
@@ -86,18 +88,19 @@
android:background="@drawable/bg_999999_t10"/>
<TextView
android:textStyle="bold"
android:layout_weight="1"
android:id="@+id/tv_girl"
android:layout_width="match_parent"
android:layout_height="@dimen/dp44"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp17"
android:textColor="#999999"
android:textSize="@dimen/dp13"
android:layout_marginLeft="@dimen/dp6"
android:layout_marginRight="@dimen/dp6"
android:text="女up"
android:layout_gravity="center"
android:gravity="center"
android:background="@drawable/bg_fb65fd"/>
android:background="@drawable/bg_999999_t10"/>
</LinearLayout>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

After

Width:  |  Height:  |  Size: 250 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 263 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 904 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Some files were not shown because too many files have changed in this diff Show More