Compare commits

..

30 Commits

Author SHA1 Message Date
nail
292e0b8964 测试 2026-05-03 02:12:49 +08:00
nail
cc66d8a355 优化 2026-05-02 20:57:45 +08:00
nail
43e289e2a9 等级,发布动态 2026-05-01 03:30:07 +08:00
nail
fc40082e5a 等级,发布动态 2026-05-01 03:27:26 +08:00
07afb20438 Merge remote-tracking branch 'origin/master' 2026-04-28 13:17:12 +08:00
baf078c47f 编辑资料相册添加一个默认图片 2026-04-28 13:16:50 +08:00
nail
84344feef5 im调整 2026-04-27 19:39:51 +08:00
nail
ab54122829 个人展示页 2026-04-25 18:21:19 +08:00
0c5496e4bb BUG已改 2026-04-23 09:57:16 +08:00
c86e91e12e BUG已改 2026-04-23 09:51:32 +08:00
1917e6c1d8 编辑资料性别 2026-04-22 23:57:05 +08:00
62e03918da 编辑资料界面修改和接口走通,up认证界面问题已修 2026-04-22 20:33:48 +08:00
252d724b17 编辑资料接口走通 2026-04-21 00:19:12 +08:00
fa7bafa23e Merge remote-tracking branch 'origin/master' 2026-04-20 12:02:58 +08:00
beac977eef 邀请界面接口数据已接,暂定,后续接口修改再改 2026-04-20 12:02:50 +08:00
nail
fb7862c380 首页 2026-04-17 15:33:34 +08:00
nail
0d66fdaf43 会员 2026-04-12 21:36:32 +08:00
nail
73f07201d9 关注,访客模块 2026-04-10 19:33:27 +08:00
57c85bc333 up主认证功能已测试 2026-04-09 20:48:55 +08:00
nail
bacfd44ecf IM模块 2026-04-07 17:20:35 +08:00
5340175551 up主认证功能和邀请有礼的UI 2026-04-06 20:34:38 +08:00
c8cc7bbdfe Merge remote-tracking branch 'origin/master' 2026-04-03 22:36:11 +08:00
806c537b48 up主认证界面 2026-04-03 22:36:01 +08:00
nail
48ee31e542 我的界面 2026-04-03 19:37:02 +08:00
nail
984824ce6c 动态修改 2026-04-03 15:58:38 +08:00
nail
cd79d348b8 修改首页 2026-03-31 23:19:33 +08:00
nail
a6865363a8 修改首页 2026-03-31 23:01:52 +08:00
nail
408ad19d22 修改首页 2026-03-28 20:06:49 +08:00
nail
f54e65c601 Merge branch 'master' of https://git.jindashengwl.cn/androidOne/qianyanAndroid 2026-03-28 19:19:05 +08:00
nail
0c3bc88a29 修改首页 2026-03-28 19:18:53 +08:00
366 changed files with 26190 additions and 3320 deletions

View File

@@ -166,7 +166,7 @@ android {
// } // }
oss { oss {
applicationId "com.xuebiping.bolizhuzi" applicationId "com.xuebiping.bolizhuzi"
buildConfigField "boolean", "IS_DEV", "false" buildConfigField "boolean", "IS_DEV", "true"
buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"' buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"' buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"' buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
@@ -348,6 +348,7 @@ android {
implementation project(path: ':storage') implementation project(path: ':storage')
implementation project(path: ':yunxinkit') implementation project(path: ':yunxinkit')
implementation project(':faceunity') implementation project(':faceunity')
implementation project(':magicindicator')
//EventBus //EventBus
implementation 'de.greenrobot:eventbus:2.4.0' implementation 'de.greenrobot:eventbus:2.4.0'
implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.8.0' implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.8.0'
@@ -378,7 +379,7 @@ android {
implementation 'com.flyco.roundview:FlycoRoundView_Lib:1.1.4@aar' implementation 'com.flyco.roundview:FlycoRoundView_Lib:1.1.4@aar'
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6' implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6'
implementation 'com.github.eralpyucel:CircleProgressView:v1.1' implementation 'com.github.eralpyucel:CircleProgressView:v1.1'
//implementation 'com.github.CarGuo.GSYVideoPlayer:GSYVideoPlayer:v8.1.0' // implementation 'com.github.CarGuo.GSYVideoPlayer:GSYVideoPlayer:v8.1.0'
implementation 'com.shuyu:GSYVideoPlayer:8.1.0' implementation 'com.shuyu:GSYVideoPlayer:8.1.0'
implementation 'com.googlecode.mp4parser:isoparser:1.1.21' implementation 'com.googlecode.mp4parser:isoparser:1.1.21'
@@ -398,6 +399,11 @@ android {
implementation 'com.devzld:expandlayout:1.0.0' implementation 'com.devzld:expandlayout:1.0.0'
implementation 'io.github.lucksiege:pictureselector:v3.11.2' implementation 'io.github.lucksiege:pictureselector:v3.11.2'
implementation 'com.github.Dimezis:BlurView:version-3.1.0' implementation 'com.github.Dimezis:BlurView:version-3.1.0'
implementation "com.scwang.smartrefresh:SmartRefreshLayout:1.1.0-x"
// implementation "com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6" //3.0.2更换了很多API
// implementation 'io.github.carguo:gsyvideoplayer:12.1.0'
} }
} }

View File

@@ -0,0 +1,18 @@
{
"version": 2,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.xuebiping.bolizhuzi",
"variantName": "ossRelease",
"elements": [
{
"type": "SINGLE",
"filters": [],
"versionCode": 1,
"versionName": "1.0.0",
"outputFile": "siyu_v1.0.0_oss_release.apk"
}
]
}

Binary file not shown.

View File

@@ -174,6 +174,18 @@
<activity <activity
android:name=".view.base.BaseActivity" android:name=".view.base.BaseActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.settings.PersonalJobActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.PersonalSchoolActivity"
android:screenOrientation="portrait" />
<activity
android:name=".view.settings.PhotoListTwoActivity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".view.register.RegisterActivity" android:name=".view.register.RegisterActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
@@ -232,6 +244,9 @@
<activity <activity
android:name=".view.settings.InvitationDataActivity" android:name=".view.settings.InvitationDataActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.settings.WxCodeActivity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".view.settings.SocialActivity" android:name=".view.settings.SocialActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
@@ -257,15 +272,24 @@
<activity <activity
android:name=".view.main.GiftReceivedActivity" android:name=".view.main.GiftReceivedActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.main.GiftReceived2Activity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".view.dynamics.activity.ImageDisplayActivity" android:name=".view.dynamics.activity.ImageDisplayActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".view.dynamics.activity.DynamicPostActivity" android:name=".view.dynamics.activity.DynamicPostActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.dynamics.activity.DynamicPublishActivity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".view.main.MainPageActivity" android:name=".view.main.MainPageActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.main.MainPageCommentActivity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".view.main.AllChannelActivity" android:name=".view.main.AllChannelActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
@@ -357,6 +381,10 @@
<activity <activity
android:name=".view.main.GenderUserAndMibiRankActivity" android:name=".view.main.GenderUserAndMibiRankActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.news.activity.CateRecordActivity"
android:screenOrientation="portrait" />
<activity <activity
android:name=".wxapi.WXEntryActivity" android:name=".wxapi.WXEntryActivity"
android:configChanges="keyboardHidden|orientation|screenSize" android:configChanges="keyboardHidden|orientation|screenSize"
@@ -406,6 +434,10 @@
<activity <activity
android:name=".view.main.VideoFinishActivity" android:name=".view.main.VideoFinishActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.main.VideoFinish2Activity"
android:screenOrientation="portrait"
android:theme="@style/activity_dialog"/>
<activity android:name=".view.news.activity.FakeActivity" /> <activity android:name=".view.news.activity.FakeActivity" />
<activity <activity
android:name=".view.news.activity.Fake2Activity" android:name=".view.news.activity.Fake2Activity"
@@ -470,6 +502,18 @@
<activity <activity
android:name=".view.settings.PersonalSignatureActivity" android:name=".view.settings.PersonalSignatureActivity"
android:screenOrientation="portrait" /> 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" /> <!-- 微信支付 --> <receiver android:name=".view.main.receiver.NotificationClickReceiver" /> <!-- 微信支付 -->
<activity <activity
@@ -889,6 +933,9 @@
<activity <activity
android:name=".view.dynamics.activity.PageVideoPlayActivity" android:name=".view.dynamics.activity.PageVideoPlayActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".view.dynamics.activity.PageVideoPlay2Activity"
android:screenOrientation="portrait" />
<activity android:name=".view.settings.GoddessPrivilegeActivity" /> <activity android:name=".view.settings.GoddessPrivilegeActivity" />
<activity android:name=".view.settings.CancellationActivity" /> <activity android:name=".view.settings.CancellationActivity" />
<activity android:name=".view.settings.BindBankActivity" /> <activity android:name=".view.settings.BindBankActivity" />

View File

@@ -20,11 +20,12 @@ public class ConstUrl {
"http://pre-api.jindashengkj.cn/"; "http://pre-api.jindashengkj.cn/";
//public static final String WEBSOCKTURL = "saws://192.168.32.106:11119/acc1"; //public static final String WEBSOCKTURL = "saws://192.168.32.106:11119/acc1";
public static final String WEBSOCKTURL = "ws://red.nndongqing.cn/acc1"; public static final String WEBSOCKTURL = "ws://red.nndongqing.cn/acc1";
public static final String SOCKET_USERSTATIS_DEBUG = "wss://pre.ws.ncaicai.tech?user_id="; public static final String SOCKET_USERSTATIS_DEBUG = "wss://pre.ws.whnuanbeinikj.cn?user_id=";
public static final String SOCKET_USERSTATIS = "wss://ws.whnuanbeinikj.cn?user_id="; public static final String SOCKET_USERSTATIS = "wss://ws.whnuanbeinikj.cn?user_id=";
public static final String SOCKET_SPEED_DATE = DEBUG ? (DEBUG1 ? "wss://pre.ws.whnuanbeinikj.cn/speed?token=" : "wss://ws.whnuanbeinikj.cn/speed?token=") : public static final String SOCKET_SPEED_DATE = DEBUG ? (DEBUG1 ? "wss://pre.ws.whnuanbeinikj.cn/speed?token=" : "wss://ws.whnuanbeinikj.cn/speed?token=") :
"wss://ws.whnuanbeinikj.cn/speed?token="; "wss://ws.whnuanbeinikj.cn/speed?token=";
public final static String IMAGE_URL = "http://xqasset.whnuanbeinikj.cn/"; //public final static String IMAGE_URL = "http://qianyan-asset.oss-cn-shanghai.aliyuncs.com/";
public final static String IMAGE_URL = "http://oss.jindashengkj.cn/";
public final static String BASE_URL = BASE_ROOT + "api/"; public final static String BASE_URL = BASE_ROOT + "api/";
public final static String APP_FIELD = "app/"; public final static String APP_FIELD = "app/";
public final static String AUTH_FIELD = "passport/"; public final static String AUTH_FIELD = "passport/";
@@ -65,6 +66,7 @@ public class ConstUrl {
public final static String THIRD = getUrl(BASE_URL, AUTH_FIELD, "third"); 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 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 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_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_USER_IS_VIP = getUrl(BASE_URL, USER_FIELD, "ifVip");
public final static String GET_DYNAMIC_LIST = getUrl(BASE_URL, ZONE_FIELD, "lists"); public final static String GET_DYNAMIC_LIST = getUrl(BASE_URL, ZONE_FIELD, "lists");
@@ -81,6 +83,7 @@ public class ConstUrl {
public final static String FREEANCHOR = getUrl(BASE_URL, MAIN_FIELD, "freeAnchor"); public final static String FREEANCHOR = getUrl(BASE_URL, MAIN_FIELD, "freeAnchor");
public final static String CHANNEL_DATA = getUrl(BASE_URL, CHANNEL_FIELD, "anchors"); public final static String CHANNEL_DATA = getUrl(BASE_URL, CHANNEL_FIELD, "anchors");
public final static String MAIN_PAGE_DATA = getUrl(BASE_URL, USER_FIELD, "info"); public final static String MAIN_PAGE_DATA = getUrl(BASE_URL, USER_FIELD, "info");
public final static String WECHAT_INTIMACY = getUrl(BASE_URL, USER_FIELD, "getWechatIntimacy");
public final static String GET_ALL_CHANNELS = getUrl(BASE_URL, CHANNEL_FIELD, "lists"); public final static String GET_ALL_CHANNELS = getUrl(BASE_URL, CHANNEL_FIELD, "lists");
public final static String BE_ANCHOR_STATUS = getUrl(BASE_URL, ANCHOR_FIELD, "join"); public final static String BE_ANCHOR_STATUS = getUrl(BASE_URL, ANCHOR_FIELD, "join");
public final static String GET_SELFIE_EXAMPLE = getUrl(BASE_URL, ANCHOR_FIELD, "camera_audit"); public final static String GET_SELFIE_EXAMPLE = getUrl(BASE_URL, ANCHOR_FIELD, "camera_audit");
@@ -114,8 +117,10 @@ public class ConstUrl {
public final static String TRACER_LIST = getUrl(BASE_URL, USER_FIELD, "viewer_list"); 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 = 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 GETADVERT = getUrl(BASE_URL, USER_FIELD, "getAdvert"); //广告
public final static String FOCUS_LIST = getUrl(BASE_URL, USER_FIELD, "follow_list"); 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 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 RECEIVED_GIFT_LIST = getUrl(BASE_URL, USER_FIELD, "gift_list");
public final static String GET_CHAT_INFO = getUrl(BASE_URL, CHAT_FIELD, "call"); public final static String GET_CHAT_INFO = getUrl(BASE_URL, CHAT_FIELD, "call");
@@ -135,6 +140,7 @@ public class ConstUrl {
public final static String BIND_PHONE = getUrl(BASE_URL, USER_FIELD, "bind_mobile"); 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 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 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 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 SWITCH_SERVICE_NUM = getUrl(BASE_URL, ANCHOR_FIELD, "switchServiceNum");
public final static String GET_GLOBAL_CONFIG = getUrl(BASE_URL, APP_FIELD, "config"); public final static String GET_GLOBAL_CONFIG = getUrl(BASE_URL, APP_FIELD, "config");
@@ -154,6 +160,7 @@ public class ConstUrl {
public final static String DO_COMPLAINT = getUrl(BASE_URL, USER_FIELD, "report"); public final static String DO_COMPLAINT = getUrl(BASE_URL, USER_FIELD, "report");
public final static String DO_BLACK = getUrl(BASE_URL, USER_FIELD, "black"); public final static String DO_BLACK = getUrl(BASE_URL, USER_FIELD, "black");
public final static String GET_USER_DYNAMIC_LIST = getUrl(BASE_URL, USER_FIELD, "dynamic_list"); public final static String GET_USER_DYNAMIC_LIST = getUrl(BASE_URL, USER_FIELD, "dynamic_list");
public final static String MAIN_COMMENT_LIST = getUrl(BASE_URL, USER_FIELD, "comment_list");
public final static String GET_WITHDRAW_INFO = getUrl(BASE_URL, WALLET_FIELD, "withdraw"); public final static String GET_WITHDRAW_INFO = getUrl(BASE_URL, WALLET_FIELD, "withdraw");
public final static String BIND_ACCOUNT = getUrl(BASE_URL, WALLET_FIELD, "bind_alipay"); public final static String BIND_ACCOUNT = getUrl(BASE_URL, WALLET_FIELD, "bind_alipay");
public final static String GET_BIND_ACCOUNT = getUrl(BASE_URL, WALLET_FIELD, "alipay"); public final static String GET_BIND_ACCOUNT = getUrl(BASE_URL, WALLET_FIELD, "alipay");
@@ -172,6 +179,7 @@ public class ConstUrl {
public final static String RECOMMEND_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "recommend_anchors"); 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 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 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 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 CITY_ANCHORS = getUrl(BASE_URL, INDEX_FIELD, "city_anchors");
public final static String CHAT_TIP = getUrl(BASE_URL, CHAT_FIELD, "chat_tip"); public final static String CHAT_TIP = getUrl(BASE_URL, CHAT_FIELD, "chat_tip");
@@ -243,6 +251,10 @@ public class ConstUrl {
public final static String TURNTABLE_WINNING_RECORD = getUrl(BASE_URL, "", "activity/turntableWinningRecord"); public final static String TURNTABLE_WINNING_RECORD = getUrl(BASE_URL, "", "activity/turntableWinningRecord");
public final static String YEAR_TREASURE_HUNT = getUrl(BASE_URL, "", "activity/yearTreasureHunt"); public final static String YEAR_TREASURE_HUNT = getUrl(BASE_URL, "", "activity/yearTreasureHunt");
public final static String up_auth_detail = getUrl(BASE_URL, "", "/attest/up_auth_detail");
public final static String up_auth_save = getUrl(BASE_URL, "", "/attest/up_auth_save");
public final static String up_auth_submit = getUrl(BASE_URL, "", "/attest/up_auth_submit");
public static String getUrl(String base, String field, String method) { public static String getUrl(String base, String field, String method) {
return base + field + method; return base + field + method;
} }

View File

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

View File

@@ -136,7 +136,7 @@ public class DynamicsAdapter extends BaseAdapter {
public View getView(int i, View view, ViewGroup viewGroup) { public View getView(int i, View view, ViewGroup viewGroup) {
Holder holder = null; Holder holder = null;
if (null == view) { if (null == view) {
view = View.inflate(mContext, R.layout.item_dynamic_list1, null); view = View.inflate(mContext, R.layout.item_dynamic_list, null);
holder = initView(view); holder = initView(view);
} else { } else {
holder = (Holder) view.getTag(R.id.tag_second); holder = (Holder) view.getTag(R.id.tag_second);
@@ -155,7 +155,7 @@ public class DynamicsAdapter extends BaseAdapter {
holder.newPeopleImageView.setVisibility(View.GONE); holder.newPeopleImageView.setVisibility(View.GONE);
holder.realPeopleImageView.setVisibility(View.GONE); holder.realPeopleImageView.setVisibility(View.GONE);
holder.tv_see_count.setText("已有"+bean.getLike_count()+"次浏览"); // holder.tv_see_count.setText("已有"+bean.getLike_count()+"次浏览");
if (bean.getGender() == 1) { if (bean.getGender() == 1) {
holder.realPeopleImageView.setVisibility(View.VISIBLE); holder.realPeopleImageView.setVisibility(View.VISIBLE);

View File

@@ -195,8 +195,8 @@ public class DynamicsAdapter1 extends BaseAdapter {
} else { } else {
holder.msgBtn.setVisibility(View.INVISIBLE); holder.msgBtn.setVisibility(View.INVISIBLE);
} }
//holder.likeCountLabel.setText(bean.getLike_count() + ""); holder.likeCountLabel.setText(bean.getLike_count() + "");
// holder.commentCountLabel.setText(bean.getComment_count() + ""); holder.commentCountLabel.setText(bean.getComment_count() + "");
final int index = i; final int index = i;
holder.name.setText(bean.getNickname()); holder.name.setText(bean.getNickname());
holder.head.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext)); holder.head.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
@@ -226,14 +226,14 @@ public class DynamicsAdapter1 extends BaseAdapter {
holder.years.setCompoundDrawables(drawableLeft, null, null, null); holder.years.setCompoundDrawables(drawableLeft, null, null, null);
} }
holder.years.setText(bean.getAge() + ""); holder.years.setText(bean.getAge() + "");
holder.location.setText(bean.getCity() + " | " + bean.getCreate_time()); // holder.location.setText(bean.getCity() + " | " + bean.getCreate_time());
holder.location.setText(bean.getCreate_time());
// holder.info.setText(bean.getContent()); // holder.info.setText(bean.getContent());
//TODO 显示浏览次数 //TODO 显示浏览次数
holder.tv_see_count.setText("已有"+bean.getLike_count()+"次浏览"); holder.tv_see_count.setText("已有"+bean.getLike_count()+"次浏览");
//TODO 显示话题 holder.tv_dynamic_level.setText("LV." + bean.getLevel());
holder.tv_topic.setText("# 只想发个自拍");
holder.info.setText(bean.getContent(), bean.getExpand(), new ExpandLayout.OnExpandListener() { holder.info.setText(bean.getContent(), bean.getExpand(), new ExpandLayout.OnExpandListener() {
@Override @Override
@@ -248,31 +248,34 @@ public class DynamicsAdapter1 extends BaseAdapter {
NimUIKit.startChat(bean.getUser_id(), mContext); NimUIKit.startChat(bean.getUser_id(), mContext);
} }
}); });
/*holder.commentImageView.setOnClickListener(new View.OnClickListener() { holder.commentImageView.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (dynamicCommentCallback != null) { if (dynamicCommentCallback != null) {
dynamicCommentCallback.commentDynamic(bean); dynamicCommentCallback.commentDynamic(bean);
} else {
Intent intent = new Intent(mContext, DynamicDetailActivity.class);
intent.putExtra("dynamic_id", bean.getId());
mContext.startActivity(intent);
} }
// else {
// Intent intent = new Intent(mContext, DynamicDetailActivity.class);
// intent.putExtra("dynamic_id", bean.getId());
// mContext.startActivity(intent);
// }
} }
});*/ });
holder.getMenu.setOnClickListener(new View.OnClickListener() { holder.getMenu.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (String.valueOf(SPUtils.getInt(mContext, ConsUser.USER_ID)).equals(mDynamicsItemList.get(index).getUser_id())) { // if (String.valueOf(SPUtils.getInt(mContext, ConsUser.USER_ID)).equals(mDynamicsItemList.get(index).getUser_id())) {
if (null != mOnMunuDeleteClickListener) { // if (null != mOnMunuDeleteClickListener) {
//
// mOnMunuDeleteClickListener.onMenuDelete(index, mDynamicsItemList);
// }
// } else {
// if (null != mMenuClickListener) {
// mMenuClickListener.onMenuClicked(index);
// }
// }
mOnMunuDeleteClickListener.onMenuDelete(index, mDynamicsItemList); NimUIKit.startChat("4", mContext);
}
} else {
if (null != mMenuClickListener) {
mMenuClickListener.onMenuClicked(index);
}
}
} }
}); });
@@ -295,11 +298,11 @@ public class DynamicsAdapter1 extends BaseAdapter {
addImageView(holder, bean.getImages()); addImageView(holder, bean.getImages());
/* if (bean.getIs_like() == 1) { if (bean.getIs_like() == 1) {
holder.likeImageView.setImageResource(R.mipmap.feed_heart_); holder.likeImageView.setImageResource(R.mipmap.feed_heart_);
} else { } else {
holder.likeImageView.setImageResource(R.mipmap.feed_heart); holder.likeImageView.setImageResource(R.mipmap.feed_heart);
}*/ }
holder.head.setOnClickListener(new View.OnClickListener() { holder.head.setOnClickListener(new View.OnClickListener() {
@Override @Override
@@ -309,7 +312,7 @@ public class DynamicsAdapter1 extends BaseAdapter {
mContext.startActivity(intent); mContext.startActivity(intent);
} }
}); });
/* holder.likeImageView.setOnClickListener(new View.OnClickListener() { holder.likeImageView.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (likeDynamicCallback != null) { if (likeDynamicCallback != null) {
@@ -317,7 +320,7 @@ public class DynamicsAdapter1 extends BaseAdapter {
} }
} }
});*/ });
view.setTag(R.id.tag_second, holder); view.setTag(R.id.tag_second, holder);
return view; return view;
@@ -539,14 +542,15 @@ public class DynamicsAdapter1 extends BaseAdapter {
holder.dynamic_image_num = v.findViewById(R.id.dynamic_image_num); holder.dynamic_image_num = v.findViewById(R.id.dynamic_image_num);
holder.imageListView3 = v.findViewById(R.id.dynamic_list_image_list_3); holder.imageListView3 = v.findViewById(R.id.dynamic_list_image_list_3);
holder.msgBtn = v.findViewById(R.id.msgBtn); holder.msgBtn = v.findViewById(R.id.msgBtn);
// holder.commentCountLabel = v.findViewById(R.id.commentCountLabel); holder.commentCountLabel = v.findViewById(R.id.commentCountLabel);
//holder.likeCountLabel = v.findViewById(R.id.likeCountLabel); holder.likeCountLabel = v.findViewById(R.id.likeCountLabel);
// holder.likeImageView = v.findViewById(R.id.likeImageView); holder.likeImageView = v.findViewById(R.id.likeImageView);
// holder.commentImageView = v.findViewById(R.id.commentImageView); holder.commentImageView = v.findViewById(R.id.commentImageView);
holder.realPeopleImageView = v.findViewById(R.id.realPeopleImageView); holder.realPeopleImageView = v.findViewById(R.id.realPeopleImageView);
holder.newPeopleImageView = v.findViewById(R.id.newPeopleImageView); holder.newPeopleImageView = v.findViewById(R.id.newPeopleImageView);
holder.rl_dynamic_item = v.findViewById(R.id.rl_dynamic_item); holder.rl_dynamic_item = v.findViewById(R.id.rl_dynamic_item);
holder.tv_topic = v.findViewById(R.id.tv_topic); holder.tv_dynamic_level = v.findViewById(R.id.tv_dynamic_level);
return holder; return holder;
} }
@@ -558,8 +562,8 @@ public class DynamicsAdapter1 extends BaseAdapter {
TextView years; TextView years;
ImageView iv_sex; ImageView iv_sex;
ExpandLayout info; ExpandLayout info;
// TextView commentCountLabel; TextView commentCountLabel;
// TextView likeCountLabel; TextView likeCountLabel;
LinearLayout imageListView1; LinearLayout imageListView1;
ConstraintLayout imageListView2; ConstraintLayout imageListView2;
SimpleDraweeView dynamic_image1; SimpleDraweeView dynamic_image1;
@@ -571,12 +575,13 @@ public class DynamicsAdapter1 extends BaseAdapter {
TextView tv_see_count; TextView tv_see_count;
ImageView getMenu; ImageView getMenu;
ImageView msgBtn; ImageView msgBtn;
//ImageView likeImageView; ImageView likeImageView;
// ImageView commentImageView; ImageView commentImageView;
ImageView realPeopleImageView; ImageView realPeopleImageView;
ImageView newPeopleImageView; ImageView newPeopleImageView;
RelativeLayout rl_dynamic_item; RelativeLayout rl_dynamic_item;
TextView tv_topic; TextView tv_dynamic_level;
} }
public void delete(int index) { public void delete(int index) {

View File

@@ -0,0 +1,35 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
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.main.GiftReceivedItemBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import org.jetbrains.annotations.NotNull;
public class GiftReceived2Adapter extends BaseQuickAdapter<GiftReceivedItemBean, BaseViewHolder> {
private Context mContext;
public GiftReceived2Adapter(int layoutResId, Context context) {
super(layoutResId);
this.mContext = context;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, GiftReceivedItemBean bean) {
SimpleDraweeView gift_received_logo = baseViewHolder.getView(R.id.gift_received_logo);
TextView gift_received_name = baseViewHolder.getView(R.id.gift_received_name);
TextView gift_received_number = baseViewHolder.getView(R.id.gift_received_number);
gift_received_logo.setImageURI(StrU.getResourcePath(bean.getImg(), mContext));
gift_received_name.setText(bean.getName());
gift_received_number.setText("x" + bean.getTotal());
}
}

View File

@@ -0,0 +1,171 @@
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<SocialBean, BaseViewHolder> {
private Context mContext;
private int mType;
public MainLookMeAdapter(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);
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);
RelativeLayout rl_level = baseViewHolder.getView(R.id.rl_level);
ImageView iv_level = baseViewHolder.getView(R.id.iv_level);
TextView tv_level = baseViewHolder.getView(R.id.tv_level);
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 (bean.getVip() == 0 || bean.getVip() == 1) {
ivMemberSign.setVisibility(View.VISIBLE);
}else {
ivMemberSign.setVisibility(View.GONE);
}
int level = bean.getLevel();
tv_level.setText(level + "");
if (bean.getGender() == 1) {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg1);
iv_level.setImageResource(R.mipmap.ic_modle_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg2);
iv_level.setImageResource(R.mipmap.ic_modle_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg3);
iv_level.setImageResource(R.mipmap.ic_modle_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg4);
iv_level.setImageResource(R.mipmap.ic_modle_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg5);
iv_level.setImageResource(R.mipmap.ic_modle_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg6);
iv_level.setImageResource(R.mipmap.ic_modle_6);
}
}else {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg1);
iv_level.setImageResource(R.mipmap.ic_use_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg2);
iv_level.setImageResource(R.mipmap.ic_use_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg3);
iv_level.setImageResource(R.mipmap.ic_use_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg4);
iv_level.setImageResource(R.mipmap.ic_use_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg5);
iv_level.setImageResource(R.mipmap.ic_use_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg6);
iv_level.setImageResource(R.mipmap.ic_use_6);
}
}
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

@@ -0,0 +1,144 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
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.main.MainPageCommentInfoBean;
import com.xuebiping.bolizhuzi.utils.StrU;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class MainPageCommentAdapter extends BaseQuickAdapter<MainPageCommentInfoBean, BaseViewHolder> {
private Context mContext;
private int[] mImage_bg = new int[]{R.drawable.shape_comment1_bg, R.drawable.shape_comment2_bg, R.drawable.shape_comment3_bg, R.drawable.shape_comment4_bg, R.drawable.shape_comment5_bg};
public MainPageCommentAdapter(int layoutResId, Context context) {
super(layoutResId);
this.mContext = context;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, MainPageCommentInfoBean bean) {
SimpleDraweeView list_photo = baseViewHolder.getView(R.id.list_photo);
TextView tv_name = baseViewHolder.getView(R.id.tv_name);
RelativeLayout rl_level = baseViewHolder.getView(R.id.rl_level);
ImageView iv_level = baseViewHolder.getView(R.id.iv_level);
TextView tv_level = baseViewHolder.getView(R.id.tv_level);
TextView tv_comment1 = baseViewHolder.getView(R.id.tv_comment1);
TextView tv_comment2 = baseViewHolder.getView(R.id.tv_comment2);
TextView tv_comment3 = baseViewHolder.getView(R.id.tv_comment3);
list_photo.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
tv_name.setText(bean.getNickname());
int level = bean.getLevel();
tv_level.setText(level + "");
if (bean.getGender() == 1) {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg1);
iv_level.setImageResource(R.mipmap.ic_modle_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg2);
iv_level.setImageResource(R.mipmap.ic_modle_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg3);
iv_level.setImageResource(R.mipmap.ic_modle_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg4);
iv_level.setImageResource(R.mipmap.ic_modle_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg5);
iv_level.setImageResource(R.mipmap.ic_modle_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg6);
iv_level.setImageResource(R.mipmap.ic_modle_6);
}
}else {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg1);
iv_level.setImageResource(R.mipmap.ic_use_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg2);
iv_level.setImageResource(R.mipmap.ic_use_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg3);
iv_level.setImageResource(R.mipmap.ic_use_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg4);
iv_level.setImageResource(R.mipmap.ic_use_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg5);
iv_level.setImageResource(R.mipmap.ic_use_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg6);
iv_level.setImageResource(R.mipmap.ic_use_6);
}
}
List<String> labels = bean.getLabels();
if (labels != null && labels.size() > 0) {
if (labels.size() == 1) {
tv_comment1.setVisibility(View.VISIBLE);
tv_comment2.setVisibility(View.GONE);
tv_comment3.setVisibility(View.GONE);
tv_comment1.setText(labels.get(0));
if (bean.getAttitude() == 1) { //喜欢
int x = (int) (Math.random() * 5);
tv_comment1.setBackgroundResource(mImage_bg[x]);
}else {
tv_comment1.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
}
}else if (labels.size() == 2) {
tv_comment1.setVisibility(View.VISIBLE);
tv_comment2.setVisibility(View.VISIBLE);
tv_comment3.setVisibility(View.GONE);
tv_comment1.setText(labels.get(0));
tv_comment2.setText(labels.get(1));
if (bean.getAttitude() == 1) { //喜欢
int x = (int) (Math.random() * 5);
tv_comment1.setBackgroundResource(mImage_bg[x]);
int x2 = (int) (Math.random() * 5);
tv_comment2.setBackgroundResource(mImage_bg[x2]);
}else {
tv_comment1.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
tv_comment2.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
}
}else {
tv_comment1.setVisibility(View.VISIBLE);
tv_comment2.setVisibility(View.VISIBLE);
tv_comment3.setVisibility(View.VISIBLE);
tv_comment1.setText(labels.get(0));
tv_comment2.setText(labels.get(1));
tv_comment3.setText(labels.get(2));
if (bean.getAttitude() == 1) { //喜欢
int x = (int) (Math.random() * 5);
tv_comment1.setBackgroundResource(mImage_bg[x]);
int x2 = (int) (Math.random() * 5);
tv_comment2.setBackgroundResource(mImage_bg[x2]);
int x3 = (int) (Math.random() * 5);
tv_comment2.setBackgroundResource(mImage_bg[x3]);
}else {
tv_comment1.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
tv_comment2.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
tv_comment3.setBackgroundResource(R.drawable.shape_comment_dislike_bg);
}
}
}
}
}

View File

@@ -0,0 +1,256 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.cardview.widget.CardView;
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.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
import org.jetbrains.annotations.NotNull;
public class MainRecommendAdapter extends BaseQuickAdapter<AnchorBean, BaseViewHolder> {
private Context mContext;
private int mTabType; //1代表推荐 2代表语聊 0代表其他
public MainRecommendAdapter(int layoutResId, Context context) {
super(layoutResId);
this.mContext = context;
}
public MainRecommendAdapter(int layoutResId, Context context, int tabType) {
super(layoutResId);
this.mContext = context;
this.mTabType = tabType;
}
@Override
protected void convert(@NotNull BaseViewHolder baseViewHolder, AnchorBean bean) {
recommend(baseViewHolder,bean);
}
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");
if (recommend_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);
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);
}
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);
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());
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("活跃");
}
card_view.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 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

@@ -0,0 +1,40 @@
package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.ColorTransitionPagerTitleView;
/**
* 带颜色渐变和缩放的指示器标题
* 博客: http://hackware.lucode.net
* Created by hackware on 2016/6/26.
*/
public class ScaleTransitionPagerTitleView extends ColorTransitionPagerTitleView {
private float mMinScale = 0.75f;
public ScaleTransitionPagerTitleView(Context context) {
super(context);
}
@Override
public void onEnter(int index, int totalCount, float enterPercent, boolean leftToRight) {
super.onEnter(index, totalCount, enterPercent, leftToRight); // 实现颜色渐变
setScaleX(mMinScale + (1.0f - mMinScale) * enterPercent);
setScaleY(mMinScale + (1.0f - mMinScale) * enterPercent);
}
@Override
public void onLeave(int index, int totalCount, float leavePercent, boolean leftToRight) {
super.onLeave(index, totalCount, leavePercent, leftToRight); // 实现颜色渐变
setScaleX(1.0f + (mMinScale - 1.0f) * leavePercent);
setScaleY(1.0f + (mMinScale - 1.0f) * leavePercent);
}
public float getMinScale() {
return mMinScale;
}
public void setMinScale(float minScale) {
mMinScale = minScale;
}
}

View File

@@ -1,6 +1,7 @@
package com.xuebiping.bolizhuzi.controller.main.adapter; package com.xuebiping.bolizhuzi.controller.main.adapter;
import android.content.Context; import android.content.Context;
import android.text.TextUtils;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.BaseAdapter; import android.widget.BaseAdapter;
@@ -53,19 +54,23 @@ public class SearchAdapter extends BaseAdapter {
holder = (Holder) view.getTag(); holder = (Holder) view.getTag();
} }
if (0 == bean.getVip()) { // if (0 == bean.getVip()) {
holder.ivMemberSign.setVisibility(View.VISIBLE); // holder.ivMemberSign.setVisibility(View.VISIBLE);
holder.ivMemberSign.setImageResource(R.drawable.ic_pvip); // holder.ivMemberSign.setImageResource(R.drawable.ic_pvip);
} else if (1 == bean.getVip()) { // } else if (1 == bean.getVip()) {
holder.ivMemberSign.setVisibility(View.VISIBLE); // holder.ivMemberSign.setVisibility(View.VISIBLE);
holder.ivMemberSign.setImageResource(R.drawable.ic_gvip); // holder.ivMemberSign.setImageResource(R.drawable.ic_gvip);
} else { // } else {
holder.ivMemberSign.setVisibility(View.GONE); // holder.ivMemberSign.setVisibility(View.GONE);
} // }
holder.mPhoto.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext)); holder.mPhoto.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
holder.mName.setText(bean.getNickname()); holder.mName.setText(bean.getNickname());
holder.mInfo.setText(bean.getCity() + " | " + bean.getAge() + ""); // holder.mInfo.setText(bean.getCity() + " | " + bean.getAge() + "岁");
if (!TextUtils.isEmpty(bean.getSignature())) {
holder.mInfo.setText(bean.getSignature());
}
holder.mTime.setText(bean.getDateline()); holder.mTime.setText(bean.getDateline());
view.setTag(holder); view.setTag(holder);
return view; return view;

View File

@@ -26,9 +26,11 @@ import com.xuebiping.bolizhuzi.model.main.GlobalConfigBean;
import com.xuebiping.bolizhuzi.model.main.GroupCallBean; import com.xuebiping.bolizhuzi.model.main.GroupCallBean;
import com.xuebiping.bolizhuzi.model.main.GuardListBean; import com.xuebiping.bolizhuzi.model.main.GuardListBean;
import com.xuebiping.bolizhuzi.model.main.IsKidModelBean; import com.xuebiping.bolizhuzi.model.main.IsKidModelBean;
import com.xuebiping.bolizhuzi.model.main.LookWechatBean;
import com.xuebiping.bolizhuzi.model.main.MainBean; import com.xuebiping.bolizhuzi.model.main.MainBean;
import com.xuebiping.bolizhuzi.model.main.MainPageAnchorBean; import com.xuebiping.bolizhuzi.model.main.MainPageAnchorBean;
import com.xuebiping.bolizhuzi.model.main.MainPageBean; import com.xuebiping.bolizhuzi.model.main.MainPageBean;
import com.xuebiping.bolizhuzi.model.main.MainPageCommentListBean;
import com.xuebiping.bolizhuzi.model.main.MainPageSwitchSwerviceNumBean; import com.xuebiping.bolizhuzi.model.main.MainPageSwitchSwerviceNumBean;
import com.xuebiping.bolizhuzi.model.main.PrizeBean; import com.xuebiping.bolizhuzi.model.main.PrizeBean;
import com.xuebiping.bolizhuzi.model.main.RedEnvelopesBean; import com.xuebiping.bolizhuzi.model.main.RedEnvelopesBean;
@@ -246,6 +248,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();
task.start(false); task.start(false);
} }
@@ -364,6 +391,27 @@ public class MainManager {
task.start(); task.start();
} }
public static void getWechatIntimacy(BaseActivity activity,
final int to_uid, HttpUiCallBack<LookWechatBean> httpUiCallBack) {
HttpWithUiTask<LookWechatBean> task = new HttpWithUiTask<LookWechatBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<LookWechatBean> run() throws Exception {
final String url = ConstUrl.WECHAT_INTIMACY;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<LookWechatBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("to_uid", to_uid + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
public static void getAllChannels(BaseActivity activity, public static void getAllChannels(BaseActivity activity,
HttpUiCallBack<List<SkillAnchorBean>> httpUiCallBack) { HttpUiCallBack<List<SkillAnchorBean>> httpUiCallBack) {
HttpWithUiTask<List<SkillAnchorBean>> task = new HttpWithUiTask<List<SkillAnchorBean>>(activity, httpUiCallBack) { HttpWithUiTask<List<SkillAnchorBean>> task = new HttpWithUiTask<List<SkillAnchorBean>>(activity, httpUiCallBack) {
@@ -600,7 +648,7 @@ public class MainManager {
.setResultType(new TType<HttpResult<MainPageAnchorBean>>() { .setResultType(new TType<HttpResult<MainPageAnchorBean>>() {
}).setHttpMethod(HttpMethod.POST) }).setHttpMethod(HttpMethod.POST)
.addParam("status", status + "") .addParam("value", status + "")
.setUrl(url); .setUrl(url);
HttpRequest request = builder.build(); HttpRequest request = builder.build();
@@ -611,6 +659,28 @@ public class MainManager {
task.start(); 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, public static void changeswitchServiceNum(BaseActivity activity,
final int status, final int status,
HttpUiCallBack<MainPageSwitchSwerviceNumBean> httpUiCallBack) { HttpUiCallBack<MainPageSwitchSwerviceNumBean> httpUiCallBack) {
@@ -904,6 +974,54 @@ public class MainManager {
task.start(); task.start();
} }
public static void getMainCommentList(BaseActivity activity,
final String uid,
final int page,
HttpUiCallBack<MainPageCommentListBean> httpUiCallBack) {
HttpWithUiTask<MainPageCommentListBean> task = new HttpWithUiTask<MainPageCommentListBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<MainPageCommentListBean> run() throws Exception {
String url = ConstUrl.MAIN_COMMENT_LIST;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<MainPageCommentListBean>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("user_id", uid)
.addParam("page", page + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start(false);
}
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, public static void getSystemVersion(BaseActivity activity,
HttpUiCallBack<SystemVersionBean> httpUiCallBack) { HttpUiCallBack<SystemVersionBean> httpUiCallBack) {
HttpWithUiTask<SystemVersionBean> task = new HttpWithUiTask<SystemVersionBean>(activity, httpUiCallBack) { HttpWithUiTask<SystemVersionBean> task = new HttpWithUiTask<SystemVersionBean>(activity, httpUiCallBack) {
@@ -963,7 +1081,7 @@ public class MainManager {
} }
}; };
task.start(); task.start(false);
} }
public static void evaluateVideo(BaseActivity activity, public static void evaluateVideo(BaseActivity activity,
@@ -991,6 +1109,35 @@ public class MainManager {
task.start(); task.start();
} }
public static void evaluateVideo2(BaseActivity activity,
final String roomId,
final int score,
int attitude,
String label_names,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
String url = ConstUrl.EVALUATE_VIDEO;
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("room_id", roomId)
.addParam("score", score + "")
.addParam("attitude", attitude + "")
.addParam("label_names", label_names + "")
.setUrl(url);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/** /**
* 用户活跃更新 * 用户活跃更新
* *

View File

@@ -194,6 +194,8 @@ public class RegisterManager {
builder.addParam("cityId", (String) map.get("city")); builder.addParam("cityId", (String) map.get("city"));
builder.addParam("birthday", (String) map.get("birthday")); builder.addParam("birthday", (String) map.get("birthday"));
builder.addParam("job", (String) map.get("job")); builder.addParam("job", (String) map.get("job"));
builder.addParam("height", (String) map.get("height"));
builder.addParam("school", (String) map.get("school"));
builder.addParam("del_video", (String) map.get("del_video")); builder.addParam("del_video", (String) map.get("del_video"));
if (null != map.get("inviteId") && !"".equals(map.get("inviteId"))) { if (null != map.get("inviteId") && !"".equals(map.get("inviteId"))) {
builder.addParam("invite_code", (String) map.get("inviteId")); builder.addParam("invite_code", (String) map.get("inviteId"));

View File

@@ -0,0 +1,143 @@
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 (bean.getVip() == 0 || bean.getVip() == 1) {
ivMemberSign.setVisibility(View.VISIBLE);
}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.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.facebook.drawee.view.SimpleDraweeView;
import com.xuebiping.bolizhuzi.R; 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.main.adapter.ViewHolder;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager; import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.settings.MemberPrivilegesInfo; import com.xuebiping.bolizhuzi.model.settings.MemberPrivilegesInfo;
@@ -44,7 +46,6 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public void setOptions(List<MemberPrivilegesInfo> list) { public void setOptions(List<MemberPrivilegesInfo> list) {
mOptions = list; mOptions = list;
notifyDataSetChanged(); notifyDataSetChanged();
Log.i("TAG", "setOptions: mOptions---->" + mOptions.size());
} }
public List<MemberPrivilegesInfo> getmOptions() { public List<MemberPrivilegesInfo> getmOptions() {
@@ -65,120 +66,125 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
MemberPrivilegesInfo options = mOptions.get(position); MemberPrivilegesInfo options = mOptions.get(position);
Holder dataHolder = (Holder) holder; Holder dataHolder = (Holder) holder;
if (vipType == 0) {
// dataHolder.cl_privilege.setBackgroundResource(R.drawable.member_privilege_bg); dataHolder.iv_privilege_img.setImageURI(ConstUrl.IMAGE_URL + options.getIcon());
dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip); dataHolder.tv_member_privilege_name.setText(options.getName());
// 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.tv_privilege_dec.setText(options.getDesc());
dataHolder.iv_privilege_tip.setVisibility(View.GONE);
} else { // if (vipType == 0) {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege1); //// dataHolder.cl_privilege.setBackgroundResource(R.drawable.member_privilege_bg);
dataHolder.tv_member_privilege_name.setText("加送金币"); // dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip);
dataHolder.tv_privilege_dec.setText("额外赠送金币"); //// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#61380C"));
if (TextUtils.equals("VISIBLE", options.getName())) { //// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#A6793E"));
dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE); // } else {
dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() { //// dataHolder.cl_privilege.setBackgroundResource(R.drawable.super_member_privilege_bg);
@Override // dataHolder.iv_privilege_tip.setImageResource(R.drawable.ic_privilege_tip1);
public void onClick(View v) { //// dataHolder.tv_member_privilege_name.setTextColor(Color.parseColor("#DDD6FF"));
getGoodsList(); //// dataHolder.tv_privilege_dec.setTextColor(Color.parseColor("#AAA0F0"));
} // }
}); // switch (options.getId()) {
} else { // case 0:
dataHolder.iv_privilege_tip.setVisibility(View.GONE); // if (vipType == 0) {
} // dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege1);
} // dataHolder.tv_member_privilege_name.setText("私信畅聊特权");
break; // dataHolder.tv_privilege_dec.setText(options.getDesc());
case 1: // dataHolder.iv_privilege_tip.setVisibility(View.GONE);
if (vipType == 0) { // } else {
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_privilege4); // dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege1);
} else { // dataHolder.tv_member_privilege_name.setText("加送金币");
dataHolder.iv_privilege_img.setImageResource(R.drawable.ic_super_privilege2); // dataHolder.tv_privilege_dec.setText("额外赠送金币");
}
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())) { // if (TextUtils.equals("VISIBLE", options.getName())) {
// dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE); // dataHolder.iv_privilege_tip.setVisibility(View.VISIBLE);
// dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() { // dataHolder.iv_privilege_tip.setOnClickListener(new View.OnClickListener() {
// @Override // @Override
// public void onClick(View v) { // public void onClick(View v) {
// MemberTipsDialog tipsDialog = new MemberTipsDialog(mContext, "专属客服微信号: Zdhfa1234"); // getGoodsList();
// tipsDialog.show();
// } // }
// }); // });
// } else { // } else {
dataHolder.iv_privilege_tip.setVisibility(View.GONE); // 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();
//// }
//// });
//// } 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 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 @Override
@@ -188,7 +194,7 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
public class Holder extends ViewHolder { public class Holder extends ViewHolder {
ImageView iv_privilege_img; SimpleDraweeView iv_privilege_img;
TextView tv_member_privilege_name; TextView tv_member_privilege_name;
TextView tv_privilege_dec; TextView tv_privilege_dec;
ImageView iv_privilege_tip; ImageView iv_privilege_tip;
@@ -204,25 +210,25 @@ public class GeneralOptionsRecyclerAdapter extends RecyclerView.Adapter {
} }
} }
private void getGoodsList() { // private void getGoodsList() {
SettingManager.getRechargeInfo((BaseActivity) mContext, 6, new HttpUiCallBack<RechargeListBean>() { // SettingManager.getRechargeInfo((BaseActivity) mContext, 6, new HttpUiCallBack<RechargeListBean>() {
@Override // @Override
public void onSuccess(BaseActivity activity, RechargeListBean result, String message) { // public void onSuccess(BaseActivity activity, RechargeListBean result, String message) {
if (result != null && result.getList() != null && result.getList().size() > 0) { // if (result != null && result.getList() != null && result.getList().size() > 0) {
MemberRechargeDialog memberRechargeDialog = new MemberRechargeDialog(activity, result.getList()); // MemberRechargeDialog memberRechargeDialog = new MemberRechargeDialog(activity, result.getList());
memberRechargeDialog.show(); // memberRechargeDialog.show();
} // }
} // }
//
@Override // @Override
public void onFailure(BaseActivity activity, String tip) { // public void onFailure(BaseActivity activity, String tip) {
//
} // }
//
@Override // @Override
public void onException(BaseActivity activity, Throwable e) { // public void onException(BaseActivity activity, Throwable e) {
//
} // }
}); // });
} // }
} }

View File

@@ -127,13 +127,13 @@ public class InfoEditPhotoRecyclerAdapter extends RecyclerView.Adapter implement
} else if (0 == position) { } else if (0 == position) {
dataHolder.mDeleteView.setVisibility(View.VISIBLE); dataHolder.mDeleteView.setVisibility(View.VISIBLE);
dataHolder.mHeadPhotoView.setVisibility(View.VISIBLE); dataHolder.mHeadPhotoView.setVisibility(GONE);
dataHolder.mPhotoView.setVisibility(GONE); dataHolder.mPhotoView.setVisibility(View.VISIBLE);
dataHolder.mEmptyView.setVisibility(GONE); dataHolder.mEmptyView.setVisibility(GONE);
if (imagePath.contains("uploads/")) { if (imagePath.contains("uploads/")) {
dataHolder.mHeadPhotoView.setImageURI(StrU.getResourcePath(imagePath, mContext)); dataHolder.mPhotoView.setImageURI(StrU.getResourcePath(imagePath, mContext));
} else { } else {
dataHolder.mHeadPhotoView.setImageURI("file://" + imagePath); dataHolder.mPhotoView.setImageURI("file://" + imagePath);
} }
} else { } else {

View File

@@ -0,0 +1,109 @@
package com.xuebiping.bolizhuzi.controller.settings.adapter;
import android.content.Context;
import android.content.Intent;
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.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);
RelativeLayout rl_level = baseViewHolder.getView(R.id.rl_level);
ImageView iv_level = baseViewHolder.getView(R.id.iv_level);
TextView tv_level = baseViewHolder.getView(R.id.tv_level);
LinearLayout ll_unlock = baseViewHolder.getView(R.id.ll_unlock);
TextView tv_unlock_desc = baseViewHolder.getView(R.id.tv_unlock_desc);
TextView tv_lock = baseViewHolder.getView(R.id.tv_lock);
user_head.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
tv_nick_name.setText(bean.getNickname());
tv_intimacy.setText(bean.getTotal_consume_coin() + "");
int unlock_status = bean.getUnlock_status();
if (unlock_status == 1) {
ll_unlock.setVisibility(View.GONE);
tv_lock.setVisibility(View.VISIBLE);
}else {
ll_unlock.setVisibility(View.VISIBLE);
tv_unlock_desc.setText(bean.getUnlock_desc());
}
int level = bean.getLevel();
tv_level.setText(level + "");
if (bean.getGender() == 1) {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg1);
iv_level.setImageResource(R.mipmap.ic_modle_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg2);
iv_level.setImageResource(R.mipmap.ic_modle_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg3);
iv_level.setImageResource(R.mipmap.ic_modle_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg4);
iv_level.setImageResource(R.mipmap.ic_modle_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg5);
iv_level.setImageResource(R.mipmap.ic_modle_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg6);
iv_level.setImageResource(R.mipmap.ic_modle_6);
}
}else {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg1);
iv_level.setImageResource(R.mipmap.ic_use_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg2);
iv_level.setImageResource(R.mipmap.ic_use_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg3);
iv_level.setImageResource(R.mipmap.ic_use_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg4);
iv_level.setImageResource(R.mipmap.ic_use_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg5);
iv_level.setImageResource(R.mipmap.ic_use_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg6);
iv_level.setImageResource(R.mipmap.ic_use_6);
}
}
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

@@ -1,23 +1,29 @@
package com.xuebiping.bolizhuzi.controller.settings.adapter.constant; package com.xuebiping.bolizhuzi.controller.settings.adapter.constant;
public enum SettingOptions { public enum SettingOptions {
WALLET,
CONTRACT,//价格设置 CONTRACT,//价格设置
INVITATION, INVITATION,
GUIDE,//用户指南 GUIDE,//用户指南
RANK,
CUSTOMER,//客服
MISSIONS, MISSIONS,
BEAUTY,//美颜设置 BEAUTY,//美颜设置
MEMBER,//会员特权
OFFICIAL, OFFICIAL,
SETTING,//设置
GODDESSPRIVILEGE, //女神特权 GODDESSPRIVILEGE, //女神特权
VIOLATION,//违规公布 VIOLATION,//违规公布
ADDWECHAT,//添加微信 ADDWECHAT,//添加微信
HELLOW,//招呼设置 HELLOW,//招呼设置
ITEMS,//我的道具 ITEMS,//我的道具
VIDEO, //视频聊天 VIDEO, //视频聊天
DETAIL,//账单明细
RANK, //排行榜
DONOTMODEL, //勿扰模式
MEMBER,//会员特权
SETFRIEND, //交友偏好
WALLET, //钱包
TASK, //每日任务 TASK, //每日任务
DETAIL//账单明细 MYMYINTIMACY, //我的亲密度
UPAUTH, //up主认证
CUSTOMER,//客服
SETTING,//设置
} }

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.ChatPriceBean;
import com.xuebiping.bolizhuzi.model.settings.GoddessPrivilegeBean; import com.xuebiping.bolizhuzi.model.settings.GoddessPrivilegeBean;
import com.xuebiping.bolizhuzi.model.settings.GreetingBean; 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.InvitationBean;
import com.xuebiping.bolizhuzi.model.settings.InviteDataListBean; import com.xuebiping.bolizhuzi.model.settings.InviteDataListBean;
import com.xuebiping.bolizhuzi.model.settings.MemberBean; import com.xuebiping.bolizhuzi.model.settings.MemberBean;
@@ -33,6 +34,7 @@ import com.xuebiping.bolizhuzi.model.settings.SettingBrandBean;
import com.xuebiping.bolizhuzi.model.settings.SignDataListBean; import com.xuebiping.bolizhuzi.model.settings.SignDataListBean;
import com.xuebiping.bolizhuzi.model.settings.SkillSettingBean; import com.xuebiping.bolizhuzi.model.settings.SkillSettingBean;
import com.xuebiping.bolizhuzi.model.settings.SocialListBean; import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
import com.xuebiping.bolizhuzi.model.settings.UpAuthDetailBean;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean; import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
import com.xuebiping.bolizhuzi.model.settings.VideoRecordBean; import com.xuebiping.bolizhuzi.model.settings.VideoRecordBean;
import com.xuebiping.bolizhuzi.model.settings.WXAccountStatusBean; import com.xuebiping.bolizhuzi.model.settings.WXAccountStatusBean;
@@ -314,6 +316,27 @@ public class SettingManager {
task.start(); 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, public static void rankWealth(BaseActivity activity,
final int type, final int page, final int type, final int page,
HttpUiCallBack<RankListBean> httpUiCallBack) { HttpUiCallBack<RankListBean> httpUiCallBack) {
@@ -510,6 +533,66 @@ public class SettingManager {
task.start(); 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< public static void getInviteList(BaseActivity activity, final int page, String user, HttpUiCallBack<
SocialListBean> httpUiCallBack) { SocialListBean> httpUiCallBack) {
HttpWithUiTask<SocialListBean> task = new HttpWithUiTask<SocialListBean>(activity, httpUiCallBack) { HttpWithUiTask<SocialListBean> task = new HttpWithUiTask<SocialListBean>(activity, httpUiCallBack) {
@@ -1561,6 +1644,426 @@ public class SettingManager {
task.start(); task.start();
} }
/**
* up主认证详情
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_detail(BaseActivity activity, HttpUiCallBack<UpAuthDetailBean> httpUiCallBack) {
HttpWithUiTask<UpAuthDetailBean> task = new HttpWithUiTask<UpAuthDetailBean>(activity, httpUiCallBack) {
@Override
protected HttpResult<UpAuthDetailBean> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<UpAuthDetailBean>>() {
}).setHttpMethod(HttpMethod.POST)
.setUrl(ConstUrl.up_auth_detail);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存微信号
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveWxCode(BaseActivity activity,String wechat_no, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("wechat_no", wechat_no)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存三围
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveSanwei(BaseActivity activity,String bust,String waist,String hip, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("bust", bust)
.addParam("waist", waist)
.addParam("hip", hip)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存身高
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveHeight(BaseActivity activity,String height, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("height", height)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存体重
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveWeight(BaseActivity activity,String weight, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("weight", weight)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存星座
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveConstellation(BaseActivity activity,String constellation, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("constellation", constellation)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存签名
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveSign(BaseActivity activity,String signature, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("signature", signature)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存工作标签
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveJob(BaseActivity activity,String job, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("job", job)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存城市
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveCity(BaseActivity activity,String city_id, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("city_id", city_id)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存封面图
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveCover(BaseActivity activity,String cover, HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("cover_image", cover)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存身份认证信息
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveIDCard(BaseActivity activity,String real_name,String id_card_no,
String id_card_front,String id_card_back, String id_card_hold,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("real_name", real_name)
.addParam("id_card_no", id_card_no)
.addParam("id_card_front", id_card_front)
.addParam("id_card_back", id_card_back)
.addParam("id_card_hold", id_card_hold)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存视频认证信息
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveVideoRz(BaseActivity activity,String video_verify_code,String video_verify_text,
String video_verify_video,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("video_verify_code", video_verify_code)
.addParam("video_verify_text", video_verify_text)
.addParam("video_verify_video", video_verify_video)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存视频封面信息
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveVideoCover(BaseActivity activity,String video_cover_url,String video_url,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("video_cover_url", video_cover_url)
.addParam("video_url", video_url)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存头像
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_saveAvatar(BaseActivity activity,String avatar,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("avatar", avatar)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 保存相册
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_savePhotoList(BaseActivity activity,String album_images,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("album_images", album_images)
.setUrl(ConstUrl.up_auth_save);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
/**
* 提交认证
*
* @param activity
* @param httpUiCallBack
*/
public static void up_auth_submit(BaseActivity activity,
String avatar,
String nickname,
String signature,
int gender,
String job,
String cover_image,
String real_name,
String id_card_no,
String id_card_front,
String id_card_back,
String id_card_hold,
String video_verify_code,
String video_verify_text,
String video_verify_video,
String birthday,
String wechat_no,
String album_images,
String video_cover_url,
String video_url,
String height,
String weight,
String bust,
String waist,
String hip,
String constellation,
String city_id,
HttpUiCallBack<Object> httpUiCallBack) {
HttpWithUiTask<Object> task = new HttpWithUiTask<Object>(activity, httpUiCallBack) {
@Override
protected HttpResult<Object> run() throws Exception {
HttpRequest.Builder builder = new HttpRequest.Builder()
.setResultType(new TType<HttpResult<Object>>() {
}).setHttpMethod(HttpMethod.POST)
.addParam("avatar", avatar)
.addParam("nickname", nickname)
.addParam("signature", signature)
.addParam("gender", gender+"")
.addParam("job", job)
.addParam("cover_image", cover_image)
.addParam("real_name", real_name)
.addParam("id_card_no", id_card_no)
.addParam("id_card_front", id_card_front)
.addParam("id_card_back", id_card_back)
.addParam("id_card_hold", id_card_hold)
.addParam("video_verify_code", video_verify_code)
.addParam("video_verify_text", video_verify_text)
.addParam("video_verify_video", video_verify_video)
.addParam("birthday", birthday)
.addParam("wechat_no", wechat_no)
.addParam("album_images", album_images)
.addParam("video_cover_url", video_cover_url)
.addParam("video_url", video_url)
.addParam("height", height)
.addParam("weight", weight)
.addParam("bust", bust)
.addParam("waist", waist)
.addParam("hip", hip)
.addParam("constellation", constellation)
.addParam("city_id", city_id)
.setUrl(ConstUrl.up_auth_submit);
HttpRequest request = builder.build();
return request.request();
}
};
task.start();
}
} }

View File

@@ -92,7 +92,8 @@ public class UIKitOptions {
* IM 接收到的消息时内容区域背景的drawable id * IM 接收到的消息时内容区域背景的drawable id
*/ */
// public int messageLeftBackground = R.drawable.nim_message_item_left_selector; // public int messageLeftBackground = R.drawable.nim_message_item_left_selector;
public int messageLeftBackground = R.drawable.ic_message_alice; // public int messageLeftBackground = R.drawable.ic_message_alice;
public int messageLeftBackground = R.drawable.nim_message_item_left;
public int messageLeftBackgroundVip = R.drawable.ic_message_alice_vip; public int messageLeftBackgroundVip = R.drawable.ic_message_alice_vip;
public int messageLeftBackgroundVipMan = R.drawable.ic_message_alice_vip_man; public int messageLeftBackgroundVipMan = R.drawable.ic_message_alice_vip_man;
@@ -101,7 +102,8 @@ public class UIKitOptions {
*/ */
// public int messageRightBackground = R.drawable.nim_message_item_right_selector; // public int messageRightBackground = R.drawable.nim_message_item_right_selector;
// public int messageRightBackground = R.drawable.ic_message_me; // public int messageRightBackground = R.drawable.ic_message_me;
public int messageRightBackground = R.drawable.ic_huang; // public int messageRightBackground = R.drawable.ic_huang;
public int messageRightBackground = R.drawable.nim_message_item_right;
public int messageRightBackgroundVIP = R.drawable.ic_huang_vip; public int messageRightBackgroundVIP = R.drawable.ic_huang_vip;
public int messageRightBackgroundVIPMan = R.drawable.ic_huang_vip_man; public int messageRightBackgroundVIPMan = R.drawable.ic_huang_vip_man;

View File

@@ -1,11 +1,14 @@
package com.xuebiping.bolizhuzi.im.uikit.business.recent; package com.xuebiping.bolizhuzi.im.uikit.business.recent;
import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
@@ -51,6 +54,7 @@ import com.netease.nimlib.sdk.team.model.Team;
import com.netease.nimlib.sdk.team.model.TeamMember; import com.netease.nimlib.sdk.team.model.TeamMember;
import com.netease.nimlib.sdk.uinfo.UserService; import com.netease.nimlib.sdk.uinfo.UserService;
import com.netease.nimlib.sdk.uinfo.model.NimUserInfo; import com.netease.nimlib.sdk.uinfo.model.NimUserInfo;
import com.xuebiping.bolizhuzi.view.news.activity.CateRecordActivity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
@@ -136,6 +140,31 @@ public class RecentContactsFragment extends TFragment {
recyclerView = findView(R.id.recycler_view); recyclerView = findView(R.id.recycler_view);
emptyBg = findView(R.id.emptyBg); emptyBg = findView(R.id.emptyBg);
emptyHint = findView(R.id.message_list_empty_hint); emptyHint = findView(R.id.message_list_empty_hint);
LinearLayout ll_system_notice = findView(R.id.ll_system_notice);
ll_system_notice.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NimUIKit.startP2PSession(getActivity(), "2");
}
});
LinearLayout ll_office_service = findView(R.id.ll_office_service);
ll_office_service.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NimUIKit.startP2PSession(getActivity(), "4");
}
});
LinearLayout ll_cate_record = findView(R.id.ll_cate_record);
ll_cate_record.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getActivity(), CateRecordActivity.class);
startActivity(intent);
}
});
} }
/** /**
@@ -156,7 +185,7 @@ public class RecentContactsFragment extends TFragment {
recyclerView.addOnItemTouchListener(touchListener); recyclerView.addOnItemTouchListener(touchListener);
// ios style // ios style
OverScrollDecoratorHelper.setUpOverScroll(recyclerView, OverScrollDecoratorHelper.ORIENTATION_VERTICAL); // OverScrollDecoratorHelper.setUpOverScroll(recyclerView, OverScrollDecoratorHelper.ORIENTATION_VERTICAL);
// drop listener // drop listener
DropManager.getInstance().setDropListener(new DropManager.IDropListener() { DropManager.getInstance().setDropListener(new DropManager.IDropListener() {
@@ -291,56 +320,56 @@ public class RecentContactsFragment extends TFragment {
} }
}); });
boolean checkState = NIMClient.getService(FriendService.class).isNeedMessageNotify(recent.getContactId()); // boolean checkState = NIMClient.getService(FriendService.class).isNeedMessageNotify(recent.getContactId());
title = (checkState ? getString(R.string.main_msg_list_mute_on) : getString(R.string.main_msg_list_mute_off)); // title = (checkState ? getString(R.string.main_msg_list_mute_on) : getString(R.string.main_msg_list_mute_off));
alertDialog.addItem(title, new CustomAlertDialog.onSeparateItemClickListener() { // alertDialog.addItem(title, new CustomAlertDialog.onSeparateItemClickListener() {
@Override // @Override
public void onClick() { // public void onClick() {
NIMClient.getService(FriendService.class).setMessageNotify(recent.getContactId(), !checkState).setCallback(new RequestCallbackWrapper<Void>() { // NIMClient.getService(FriendService.class).setMessageNotify(recent.getContactId(), !checkState).setCallback(new RequestCallbackWrapper<Void>() {
@Override // @Override
public void onResult(int code, Void result, Throwable exception) { // public void onResult(int code, Void result, Throwable exception) {
if (code == ResponseCode.RES_SUCCESS) { // if (code == ResponseCode.RES_SUCCESS) {
int unreadNum = NIMClient.getService(MsgService.class).getTotalUnreadCount(true); // int unreadNum = NIMClient.getService(MsgService.class).getTotalUnreadCount(true);
avatar = ""; // avatar = "";
if (unreadNum > 0) { // if (unreadNum > 0) {
NIMClient.getService(MsgService.class).queryRecentContacts().setCallback(new RequestCallbackWrapper<List<RecentContact>>() { // NIMClient.getService(MsgService.class).queryRecentContacts().setCallback(new RequestCallbackWrapper<List<RecentContact>>() {
@Override // @Override
public void onResult(int code, List<RecentContact> recentContacts, Throwable throwable) { // public void onResult(int code, List<RecentContact> recentContacts, Throwable throwable) {
if (recentContacts != null && recentContacts.size() > 0) { // if (recentContacts != null && recentContacts.size() > 0) {
for (int i = 0; i < recentContacts.size(); i++) { // for (int i = 0; i < recentContacts.size(); i++) {
if (NIMClient.getService(FriendService.class).isNeedMessageNotify(recentContacts.get(i).getContactId())) { // if (NIMClient.getService(FriendService.class).isNeedMessageNotify(recentContacts.get(i).getContactId())) {
if (recentContacts.get(i).getUnreadCount() != 0 && Long.parseLong(recentContacts.get(i).getContactId()) > 20 && recentContacts.get(i).getSessionType() == SessionTypeEnum.P2P) { // if (recentContacts.get(i).getUnreadCount() != 0 && Long.parseLong(recentContacts.get(i).getContactId()) > 20 && recentContacts.get(i).getSessionType() == SessionTypeEnum.P2P) {
NimUserInfo userInfo = NIMClient.getService(UserService.class).getUserInfo(recentContacts.get(i).getContactId()); // NimUserInfo userInfo = NIMClient.getService(UserService.class).getUserInfo(recentContacts.get(i).getContactId());
if (ConstUrl.LOGDEBUG)Log.i("TAG", "recentContacts: ----------->" + userInfo); // if (ConstUrl.LOGDEBUG)Log.i("TAG", "recentContacts: ----------->" + userInfo);
if (userInfo != null) { // if (userInfo != null) {
avatar = userInfo.getAvatar(); // avatar = userInfo.getAvatar();
if (!TextUtils.isEmpty(avatar)) { // if (!TextUtils.isEmpty(avatar)) {
avatar = StrU.getResourcePath(avatar, getContext()); // avatar = StrU.getResourcePath(avatar, getContext());
}
}
break;
}
}
}
}
EventBus.getDefault().post(new UnReadCountEvent(unreadNum, avatar));
}
});
} else {
EventBus.getDefault().post(new UnReadCountEvent(unreadNum, avatar));
}
refreshMessages(false);
// if (checkState) {
// Toast.makeText(UserProfileActivity.this, "开启消息提醒", Toast.LENGTH_SHORT).show();
// } else {
// Toast.makeText(UserProfileActivity.this, "关闭消息提醒", Toast.LENGTH_SHORT).show();
// } // }
} // }
} // break;
}); // }
} // }
}); // }
// }
// EventBus.getDefault().post(new UnReadCountEvent(unreadNum, avatar));
// }
// });
// } else {
// EventBus.getDefault().post(new UnReadCountEvent(unreadNum, avatar));
// }
//
// refreshMessages(false);
//// if (checkState) {
//// Toast.makeText(UserProfileActivity.this, "开启消息提醒", Toast.LENGTH_SHORT).show();
//// } else {
//// Toast.makeText(UserProfileActivity.this, "关闭消息提醒", Toast.LENGTH_SHORT).show();
//// }
// }
// }
// });
// }
// });
/* alertDialog.addItem("删除该聊天(仅服务器)", new CustomAlertDialog.onSeparateItemClickListener() { /* alertDialog.addItem("删除该聊天(仅服务器)", new CustomAlertDialog.onSeparateItemClickListener() {
@Override @Override

View File

@@ -212,6 +212,7 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
private String title; private String title;
private String avatar; private String avatar;
private RelativeLayout mRl_title_coin_tip;
@Override @Override
public void onActivityCreated(Bundle savedInstanceState) { public void onActivityCreated(Bundle savedInstanceState) {
@@ -265,7 +266,6 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.nim_message_fragment, container, false); rootView = inflater.inflate(R.layout.nim_message_fragment, container, false);
// getTipData();
EventBus.getDefault().register(this); EventBus.getDefault().register(this);
rl_message_root = rootView.findViewById(R.id.rl_message_root); rl_message_root = rootView.findViewById(R.id.rl_message_root);
rl_guard = rootView.findViewById(R.id.rl_guard); rl_guard = rootView.findViewById(R.id.rl_guard);
@@ -296,6 +296,7 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
iv_album3 = rootView.findViewById(R.id.iv_album3); iv_album3 = rootView.findViewById(R.id.iv_album3);
iv_album4 = rootView.findViewById(R.id.iv_album4); iv_album4 = rootView.findViewById(R.id.iv_album4);
rv_call_list = rootView.findViewById(R.id.rv_call_list); rv_call_list = rootView.findViewById(R.id.rv_call_list);
mRl_title_coin_tip = rootView.findViewById(R.id.rl_title_coin_tip);
LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false); LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false);
rv_call_list.setLayoutManager(layoutManager); rv_call_list.setLayoutManager(layoutManager);
@@ -316,8 +317,8 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
ic_guard_close.setOnClickListener(this); ic_guard_close.setOnClickListener(this);
mSvgaDialog = new SvgaDialog(getContext()); mSvgaDialog = new SvgaDialog(getContext());
iv_back.setOnClickListener(this); iv_back.setOnClickListener(this);
tv_user_name.setOnClickListener(this); // tv_user_name.setOnClickListener(this);
iv_interactive.setOnClickListener(this); // iv_interactive.setOnClickListener(this);
iv_user_info.setOnClickListener(this); iv_user_info.setOnClickListener(this);
cl_info_card.setOnClickListener(this); cl_info_card.setOnClickListener(this);
tv_msg_like.setOnClickListener(this); tv_msg_like.setOnClickListener(this);
@@ -397,6 +398,7 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
NewsManager.getChatTip((BaseActivity) getActivity(), new HttpUiCallBack<ChatTipBean>() { NewsManager.getChatTip((BaseActivity) getActivity(), new HttpUiCallBack<ChatTipBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, ChatTipBean result, String message) { public void onSuccess(BaseActivity activity, ChatTipBean result, String message) {
if (null != result) { if (null != result) {
if (!TextUtils.isEmpty(result.getTip())) { if (!TextUtils.isEmpty(result.getTip())) {
warmAnimator(result.getTip()); warmAnimator(result.getTip());
@@ -427,48 +429,49 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
private ObjectAnimator fadeOut; private ObjectAnimator fadeOut;
private void showUserInfoCard(boolean show, int i) { private void showUserInfoCard(boolean show, int i) {
if (show) {
if (fadeOut != null) {
fadeOut.cancel();
}
iv_interactive.setImageResource(R.drawable.icon_arrow_down);
isInteractiveShow = true;
ObjectAnimator.ofFloat(cl_info_card, "translationY", 0F, -537F).setDuration(0).start();
cl_info_card.setVisibility(View.VISIBLE);
ObjectAnimator fadeIn = ObjectAnimator.ofFloat(cl_info_card, "translationY", -537F, 0);
fadeIn.setDuration(1000).start();
ObjectAnimator alphaIn = ObjectAnimator.ofFloat(cl_info_card, View.ALPHA, 1f);
alphaIn.setDuration(1000); // 设置动画持续时间为1000毫秒
alphaIn.start(); // 启动动画
} else {
iv_interactive.setImageResource(R.drawable.icon_arrow_up);
isInteractiveShow = false; isInteractiveShow = false;
ObjectAnimator.ofFloat(cl_info_card, "translationY", 0F, -537F).setDuration(1000).start(); // if (show) {
fadeOut = ObjectAnimator.ofFloat(cl_info_card, View.ALPHA, 0f); // if (fadeOut != null) {
fadeOut.setDuration(500); // 设置动画持续时间为1000毫秒 // fadeOut.cancel();
fadeOut.addListener(new Animator.AnimatorListener() { // }
@Override // iv_interactive.setImageResource(R.drawable.icon_arrow_down);
public void onAnimationStart(Animator animation) { // isInteractiveShow = true;
// ObjectAnimator.ofFloat(cl_info_card, "translationY", 0F, -537F).setDuration(0).start();
} // cl_info_card.setVisibility(View.VISIBLE);
// ObjectAnimator fadeIn = ObjectAnimator.ofFloat(cl_info_card, "translationY", -537F, 0);
@Override // fadeIn.setDuration(1000).start();
public void onAnimationEnd(Animator animation) { // ObjectAnimator alphaIn = ObjectAnimator.ofFloat(cl_info_card, View.ALPHA, 1f);
cl_info_card.setVisibility(View.GONE); // alphaIn.setDuration(1000); // 设置动画持续时间为1000毫秒
} // alphaIn.start(); // 启动动画
// } else {
@Override // iv_interactive.setImageResource(R.drawable.icon_arrow_up);
public void onAnimationCancel(Animator animation) { // isInteractiveShow = false;
// ObjectAnimator.ofFloat(cl_info_card, "translationY", 0F, -537F).setDuration(1000).start();
} // fadeOut = ObjectAnimator.ofFloat(cl_info_card, View.ALPHA, 0f);
// fadeOut.setDuration(500); // 设置动画持续时间为1000毫秒
@Override // fadeOut.addListener(new Animator.AnimatorListener() {
public void onAnimationRepeat(Animator animation) { // @Override
// public void onAnimationStart(Animator animation) {
} //
}); // }
fadeOut.start(); // 启动动画 //
} // @Override
// public void onAnimationEnd(Animator animation) {
// cl_info_card.setVisibility(View.GONE);
// }
//
// @Override
// public void onAnimationCancel(Animator animation) {
//
// }
//
// @Override
// public void onAnimationRepeat(Animator animation) {
//
// }
// });
// fadeOut.start(); // 启动动画
// }
} }
/** /**
@@ -492,6 +495,28 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
ObjectAnimator fadeOut = ObjectAnimator.ofFloat(mRlTextWarm, View.ALPHA, 0f); ObjectAnimator fadeOut = ObjectAnimator.ofFloat(mRlTextWarm, View.ALPHA, 0f);
fadeOut.setDuration(2000); // 设置动画持续时间为500毫秒 fadeOut.setDuration(2000); // 设置动画持续时间为500毫秒
fadeOut.start(); // 启动动画 fadeOut.start(); // 启动动画
fadeOut.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animator) {
}
@Override
public void onAnimationEnd(Animator animator) {
mRlTextWarm.setVisibility(View.GONE);
}
@Override
public void onAnimationCancel(Animator animator) {
}
@Override
public void onAnimationRepeat(Animator animator) {
}
});
} }
}, 4000); }, 4000);
} }
@@ -593,22 +618,22 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
tv_user_name.setTextColor(ContextCompat.getColor(getContext(), R.color.one_text)); tv_user_name.setTextColor(ContextCompat.getColor(getContext(), R.color.one_text));
iv_interactive.setVisibility(View.GONE); iv_interactive.setVisibility(View.GONE);
iv_user_info.setVisibility(View.INVISIBLE); iv_user_info.setVisibility(View.INVISIBLE);
iv_back.setImageResource(R.drawable.sand_icon_back); // iv_back.setImageResource(R.drawable.sand_icon_back);
if ("11".equals(sessionId)) { // if ("11".equals(sessionId)) {
rl_message_root.setBackgroundResource(R.color.white); // rl_message_root.setBackgroundResource(R.color.white);
if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 0) { // if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 0) {
lin_msg_dynamic.setVisibility(View.VISIBLE); // lin_msg_dynamic.setVisibility(View.VISIBLE);
} else { // } else {
if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 24) { // if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 24) {
tv_user_name.setText("新增点赞"); // tv_user_name.setText("新增点赞");
} else if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 26) { // } else if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 26) {
tv_user_name.setText("新增评论"); // tv_user_name.setText("新增评论");
} else if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 16) { // } else if (SPUtils.getInt(getContext(), ConsUser.DYNAMICS_TYPE) == 16) {
tv_user_name.setText("新增关注"); // tv_user_name.setText("新增关注");
} // }
lin_msg_dynamic.setVisibility(View.GONE); // lin_msg_dynamic.setVisibility(View.GONE);
} // }
} // }
} else if ("4".equals(sessionId)) { //如果是客服,不显示礼物和视频按钮 } else if ("4".equals(sessionId)) { //如果是客服,不显示礼物和视频按钮
isShowGiftAndVideo = true; isShowGiftAndVideo = true;
getMainPageData(Integer.parseInt(sessionId)); getMainPageData(Integer.parseInt(sessionId));
@@ -617,8 +642,24 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
} else { } else {
getMainPageData(Integer.parseInt(sessionId)); getMainPageData(Integer.parseInt(sessionId));
} }
if (!"2".equals(sessionId) && !"4".equals(sessionId) && !"11".equals(sessionId) && !"3".equals(sessionId) && !"5".equals(sessionId)
&& !"6".equals(sessionId) && !"7".equals(sessionId) && !"8".equals(sessionId) && !"9".equals(sessionId) && !"10".equals(sessionId)) {
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) {
if (SPUtils.getInt(getActivity(), ConsUser.IS_ANCHOR) == 1) {
mRl_title_coin_tip.setVisibility(View.GONE);
}else {
mRl_title_coin_tip.setVisibility(View.VISIBLE);
} }
// getTipData(); //展示提示信息 }else {
mRl_title_coin_tip.setVisibility(View.VISIBLE);
}
}else {
mRl_title_coin_tip.setVisibility(View.GONE);
}
}
getTipData(); //展示提示信息
if (inputPanel == null) { if (inputPanel == null) {
inputPanel = new InputPanel(container, rootView, getActionList(), isShowEditBar, isShowGiftAndVideo, getActivity()); inputPanel = new InputPanel(container, rootView, getActionList(), isShowEditBar, isShowGiftAndVideo, getActivity());
@@ -1080,95 +1121,95 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
* @param message * @param message
*/ */
private void imCost(final int type, String id, final String content, final IMMessage message, String is_greet) { private void imCost(final int type, String id, final String content, final IMMessage message, String is_greet) {
if (isInteractiveShow) { // if (isInteractiveShow) {
showUserInfoCard(false, 2); // showUserInfoCard(false, 2);
} // }
NewsManager.sendIMCost((BaseActivity) getActivity(), type, NewsManager.sendIMCost((BaseActivity) getActivity(), type,
id, content, is_greet, new HttpUiCallBack<IMCostBean>() { id, content, is_greet, new HttpUiCallBack<IMCostBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, IMCostBean result, String tips) { public void onSuccess(BaseActivity activity, IMCostBean result, String tips) {
final AlertDialog builder = new AlertDialog.Builder(getActivity()).create(); // final AlertDialog builder = new AlertDialog.Builder(getActivity()).create();
//
builder.setCancelable(false); // builder.setCancelable(false);
//
if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 2) { //男生 // if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 2) { //男生
builder.setMessage("一条私信扣" + result.getCut_coin() + "金币,成为会员享免费特权!"); // builder.setMessage("一条私信扣" + result.getCut_coin() + "金币,成为会员享免费特权!");
//
builder.setButton(DialogInterface.BUTTON_NEUTRAL, "不再提醒", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_NEUTRAL, "不再提醒", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
StorageManager.getInstance(getActivity()) // StorageManager.getInstance(getActivity())
.putInt("isDynamicNoticeCanceled", 1); // .putInt("isDynamicNoticeCanceled", 1);
} // }
}); // });
//
builder.setButton(DialogInterface.BUTTON_POSITIVE, "成为VIP", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_POSITIVE, "成为VIP", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
Intent intent = new Intent(getActivity(), MemberActivity.class); // Intent intent = new Intent(getActivity(), MemberActivity.class);
getActivity().startActivity(intent); // getActivity().startActivity(intent);
} // }
}); // });
//
builder.setButton(DialogInterface.BUTTON_NEGATIVE, "知道了", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_NEGATIVE, "知道了", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
} // }
}); // });
//
if (result.getChat_card() != null) { // if (result.getChat_card() != null) {
if (TextUtils.equals("1", result.getChat_card().getIs_pop_up())) { // if (TextUtils.equals("1", result.getChat_card().getIs_pop_up())) {
ChatCardRedPacketDialog dialog = new ChatCardRedPacketDialog(getContext(), result.getChat_card()); // ChatCardRedPacketDialog dialog = new ChatCardRedPacketDialog(getContext(), result.getChat_card());
dialog.show(); // dialog.show();
} // }
} // }
//
} else if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) { //女生 // } else if (SPUtils.getInt(getActivity(), ConsUser.GENDER) == 1) { //女生
builder.setMessage("本条消息扣除" + result.getCut_coin() // builder.setMessage("本条消息扣除" + result.getCut_coin()
+ "金币,还剩" + result.getCoin() + "金币,通过真人认证私信免费哦!"); // + "金币,还剩" + result.getCoin() + "金币,通过真人认证私信免费哦!");
//
builder.setButton(DialogInterface.BUTTON_NEUTRAL, "不再提醒", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_NEUTRAL, "不再提醒", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
StorageManager.getInstance(getActivity()) // StorageManager.getInstance(getActivity())
.putInt("isDynamicNoticeCanceled", 1); // .putInt("isDynamicNoticeCanceled", 1);
} // }
}); // });
//
builder.setButton(DialogInterface.BUTTON_POSITIVE, "真人认证", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_POSITIVE, "真人认证", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
Intent intentApplyBigCast = new Intent(getActivity(), CertificationActivity.class); // Intent intentApplyBigCast = new Intent(getActivity(), CertificationActivity.class);
getActivity().startActivity(intentApplyBigCast); // getActivity().startActivity(intentApplyBigCast);
} // }
}); // });
builder.setButton(DialogInterface.BUTTON_NEGATIVE, "知道了", new DialogInterface.OnClickListener() { // builder.setButton(DialogInterface.BUTTON_NEGATIVE, "知道了", new DialogInterface.OnClickListener() {
@Override // @Override
public void onClick(DialogInterface dialogInterface, int i) { // public void onClick(DialogInterface dialogInterface, int i) {
builder.dismiss(); // builder.dismiss();
} // }
}); // });
} // }
//
if (result.getIs_cut() == 1 // if (result.getIs_cut() == 1
&& 1 != StorageManager.getInstance(getActivity()).getInt("isDynamicNoticeCanceled") && !SPUtils.getBoolean(getActivity(), ConsUser.USER_VIP, false)) { // && 1 != StorageManager.getInstance(getActivity()).getInt("isDynamicNoticeCanceled") && !SPUtils.getBoolean(getActivity(), ConsUser.USER_VIP, false)) {
builder.show(); // builder.show();
//
Button buttonNue = builder.getButton(DialogInterface.BUTTON_NEUTRAL); // Button buttonNue = builder.getButton(DialogInterface.BUTTON_NEUTRAL);
buttonNue.setTextColor(getActivity().getResources().getColor(R.color.black)); // buttonNue.setTextColor(getActivity().getResources().getColor(R.color.black));
//
Button buttonPos = builder.getButton(DialogInterface.BUTTON_POSITIVE); // Button buttonPos = builder.getButton(DialogInterface.BUTTON_POSITIVE);
buttonPos.setTextColor(getActivity().getResources().getColor(R.color.black)); // buttonPos.setTextColor(getActivity().getResources().getColor(R.color.black));
//
Button buttonNeg = builder.getButton(DialogInterface.BUTTON_NEGATIVE); // Button buttonNeg = builder.getButton(DialogInterface.BUTTON_NEGATIVE);
buttonNeg.setTextColor(getActivity().getResources().getColor(R.color.black)); // buttonNeg.setTextColor(getActivity().getResources().getColor(R.color.black));
} // }
Map<String, Object> data = new HashMap<>(); Map<String, Object> data = new HashMap<>();
data.put("is_cut", result.getIs_cut()); data.put("is_cut", result.getIs_cut());
@@ -1651,7 +1692,8 @@ public class MessageFragment extends TFragment implements ModuleProxy, SelectTyp
}); });
} }
private boolean isInteractiveShow = true; // private boolean isInteractiveShow = true;
private boolean isInteractiveShow = false;
/** /**
* 获取文字招呼列表 * 获取文字招呼列表

View File

@@ -6,7 +6,7 @@ package com.xuebiping.bolizhuzi.im.uikit.common;
public class Constans { public class Constans {
// public final static String IMAGE_URL = "http://xqasset.whnuanbeinikj.cn/"; // public final static String IMAGE_URL = "http://xqasset.whnuanbeinikj.cn/";
public final static String IMAGE_URL = "http://xqasset.whnuanbeinikj.cn/"; public final static String IMAGE_URL = "http://oss.jindashengkj.cn/";
public final static String FIRST_CHARGE_TYPE = "FIRST_CHARGE_TYPE"; public final static String FIRST_CHARGE_TYPE = "FIRST_CHARGE_TYPE";
public final static String DEFAULT_PAY_TYPE = "DEFAULT_PAY_TYPE";//默认支付方式 "1":"支付宝","2":"微信" public final static String DEFAULT_PAY_TYPE = "DEFAULT_PAY_TYPE";//默认支付方式 "1":"支付宝","2":"微信"
public final static String SHOW_CER_DIALOG = "SHOW_CER_DIALOG";//真人认证弹窗 public final static String SHOW_CER_DIALOG = "SHOW_CER_DIALOG";//真人认证弹窗

View File

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

View File

@@ -22,6 +22,15 @@ public class DynamicsItemBean implements Serializable {
private List<CommentBean> list; private List<CommentBean> list;
private List<CommentBean> likes; private List<CommentBean> likes;
private boolean expand; private boolean expand;
private int level;
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getMark() { public int getMark() {
return mark; return mark;

View File

@@ -23,6 +23,33 @@ public class AnchorBean implements Serializable {
private boolean isVideo; private boolean isVideo;
private boolean is_follow;//true关注false未关注 private boolean is_follow;//true关注false未关注
private int anchor_tag;// 1=王牌 2=人气 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() { public int getPrice() {
return price; return price;

View File

@@ -8,9 +8,18 @@ public class AnchorListBean {
private String skill_name; private String skill_name;
private String skill_icon; private String skill_icon;
private int total; private int total;
private int total_page;
private List<AnchorBean> anchors = new ArrayList<>(); private List<AnchorBean> anchors = new ArrayList<>();
private List<AnchorBean> list = 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() { public List<AnchorBean> getAnchors() {
return anchors; return anchors;
} }

View File

@@ -0,0 +1,32 @@
package com.xuebiping.bolizhuzi.model.main;
public class LookMeBean {
private String id;
private String avatar_url;
private int type;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getAvatar_url() {
return avatar_url;
}
public void setAvatar_url(String avatar_url) {
this.avatar_url = avatar_url;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
}

View File

@@ -0,0 +1,17 @@
package com.xuebiping.bolizhuzi.model.main;
import java.util.ArrayList;
import java.util.List;
public class LookMeListBean {
private List<LookMeBean> list = new ArrayList<>();
public List<LookMeBean> getList() {
return list;
}
public void setList(List<LookMeBean> list) {
this.list = list;
}
}

View File

@@ -0,0 +1,95 @@
package com.xuebiping.bolizhuzi.model.main;
public class LookWechatBean {
private String my_avatar;
private String to_avatar;
private String wechat;
private int intimacy;
private int intimacy_percent;
private int unlock_coin;
private int svip_unlock_coin;
private int member_type;
private String risk_tips;
private String footer_tips;
public String getMy_avatar() {
return my_avatar;
}
public void setMy_avatar(String my_avatar) {
this.my_avatar = my_avatar;
}
public String getTo_avatar() {
return to_avatar;
}
public void setTo_avatar(String to_avatar) {
this.to_avatar = to_avatar;
}
public String getWechat() {
return wechat;
}
public void setWechat(String wechat) {
this.wechat = wechat;
}
public int getIntimacy() {
return intimacy;
}
public void setIntimacy(int intimacy) {
this.intimacy = intimacy;
}
public int getIntimacy_percent() {
return intimacy_percent;
}
public void setIntimacy_percent(int intimacy_percent) {
this.intimacy_percent = intimacy_percent;
}
public int getUnlock_coin() {
return unlock_coin;
}
public void setUnlock_coin(int unlock_coin) {
this.unlock_coin = unlock_coin;
}
public int getSvip_unlock_coin() {
return svip_unlock_coin;
}
public void setSvip_unlock_coin(int svip_unlock_coin) {
this.svip_unlock_coin = svip_unlock_coin;
}
public int getMember_type() {
return member_type;
}
public void setMember_type(int member_type) {
this.member_type = member_type;
}
public String getRisk_tips() {
return risk_tips;
}
public void setRisk_tips(String risk_tips) {
this.risk_tips = risk_tips;
}
public String getFooter_tips() {
return footer_tips;
}
public void setFooter_tips(String footer_tips) {
this.footer_tips = footer_tips;
}
}

View File

@@ -0,0 +1,32 @@
package com.xuebiping.bolizhuzi.model.main;
public class MainCommentStatusBean {
private int total;
private int like_count;
private int dislike_count;
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getLike_count() {
return like_count;
}
public void setLike_count(int like_count) {
this.like_count = like_count;
}
public int getDislike_count() {
return dislike_count;
}
public void setDislike_count(int dislike_count) {
this.dislike_count = dislike_count;
}
}

View File

@@ -4,6 +4,15 @@ public class MainPageAnchorBean {
private int open_video_status; private int open_video_status;
private int open_voice_status; private int open_voice_status;
private int video_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() { public int getOpen_video_status() {
return open_video_status; return open_video_status;

View File

@@ -26,6 +26,33 @@ public class MainPageBean {
private String is_interactive; private String is_interactive;
// 是否给对方发过消息1 = 是、0 = 否 // 是否给对方发过消息1 = 是、0 = 否
private String is_sent; private String is_sent;
private List<String> personal_info;
private String qrcode;
private MainPageCommentListBean comment;
public MainPageCommentListBean getComment() {
return comment;
}
public void setComment(MainPageCommentListBean comment) {
this.comment = comment;
}
public String getQrcode() {
return qrcode;
}
public void setQrcode(String qrcode) {
this.qrcode = qrcode;
}
public List<String> getPersonal_info() {
return personal_info;
}
public void setPersonal_info(List<String> personal_info) {
this.personal_info = personal_info;
}
public ContactBean getContact() { public ContactBean getContact() {
return contact; return contact;

View File

@@ -0,0 +1,70 @@
package com.xuebiping.bolizhuzi.model.main;
import java.util.List;
public class MainPageCommentInfoBean {
private int from_uid;
private String nickname;
private String avatar;
private int level;
private int attitude;
private List<String> labels;
private int gender;
public int getGender() {
return gender;
}
public void setGender(int gender) {
this.gender = gender;
}
public int getFrom_uid() {
return from_uid;
}
public void setFrom_uid(int from_uid) {
this.from_uid = from_uid;
}
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;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getAttitude() {
return attitude;
}
public void setAttitude(int attitude) {
this.attitude = attitude;
}
public List<String> getLabels() {
return labels;
}
public void setLabels(List<String> labels) {
this.labels = labels;
}
}

View File

@@ -0,0 +1,43 @@
package com.xuebiping.bolizhuzi.model.main;
import java.util.List;
public class MainPageCommentListBean {
private int page;
private int total_page;
private MainCommentStatusBean stats;
private List<MainPageCommentInfoBean> list;
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 MainCommentStatusBean getStats() {
return stats;
}
public void setStats(MainCommentStatusBean stats) {
this.stats = stats;
}
public List<MainPageCommentInfoBean> getList() {
return list;
}
public void setList(List<MainPageCommentInfoBean> list) {
this.list = list;
}
}

View File

@@ -23,6 +23,43 @@ public class MainPageInfoBean {
private int online_status;//1.在线2.离线 private int online_status;//1.在线2.离线
private UserFrameBean user_frame; private UserFrameBean user_frame;
private int anchor_tag; private int anchor_tag;
private int mobile_mark;
private int real_name_mark;
private int real_person_mark;
private int has_wechat;
private int level;
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getHas_wechat() {
return has_wechat;
}
public void setHas_wechat(int has_wechat) {
this.has_wechat = has_wechat;
}
public int getReal_name_mark() {
return real_name_mark;
}
public void setReal_name_mark(int real_name_mark) {
this.real_name_mark = real_name_mark;
}
public int getReal_person_mark() {
return real_person_mark;
}
public void setReal_person_mark(int real_person_mark) {
this.real_person_mark = real_person_mark;
}
public int getMobile_mark() { public int getMobile_mark() {
return mobile_mark; return mobile_mark;
@@ -32,8 +69,6 @@ public class MainPageInfoBean {
this.mobile_mark = mobile_mark; this.mobile_mark = mobile_mark;
} }
private int mobile_mark;
public int getMark() { public int getMark() {
return mark; return mark;
} }

View File

@@ -0,0 +1,26 @@
package com.xuebiping.bolizhuzi.model.main;
import java.util.ArrayList;
import java.util.List;
public class MainRecommendListBean {
private List<LookMeBean> list = new ArrayList<>();
private List<BannerBean> banner = new ArrayList<>();
public List<LookMeBean> getList() {
return list;
}
public void setList(List<LookMeBean> list) {
this.list = list;
}
public List<BannerBean> getBanner() {
return banner;
}
public void setBanner(List<BannerBean> banner) {
this.banner = banner;
}
}

View File

@@ -10,6 +10,15 @@ public class SearchBean {
private String city; private String city;
private String dateline; private String dateline;
private int vip = 2; private int vip = 2;
private String signature;
public String getSignature() {
return signature;
}
public void setSignature(String signature) {
this.signature = signature;
}
public int getUserid() { public int getUserid() {
return userid; return userid;

View File

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

@@ -1,5 +1,7 @@
package com.xuebiping.bolizhuzi.model.main; package com.xuebiping.bolizhuzi.model.main;
import java.util.List;
public class VideoFeeBean { public class VideoFeeBean {
private String room_id; private String room_id;
private int from_uid; private int from_uid;
@@ -14,6 +16,24 @@ public class VideoFeeBean {
private String pay_money; private String pay_money;
private double income_money; private double income_money;
private String remark; private String remark;
private List<VideoLabelListBean> label_list_like;
private List<VideoLabelListBean> label_list_dislike;
public List<VideoLabelListBean> getLabel_list_like() {
return label_list_like;
}
public void setLabel_list_like(List<VideoLabelListBean> label_list_like) {
this.label_list_like = label_list_like;
}
public List<VideoLabelListBean> getLabel_list_dislike() {
return label_list_dislike;
}
public void setLabel_list_dislike(List<VideoLabelListBean> label_list_dislike) {
this.label_list_dislike = label_list_dislike;
}
public String getRoom_id() { public String getRoom_id() {
return room_id; return room_id;

View File

@@ -0,0 +1,32 @@
package com.xuebiping.bolizhuzi.model.main;
public class VideoLabelListBean {
private int id;
private String name;
private int selected;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSelected() {
return selected;
}
public void setSelected(int selected) {
this.selected = selected;
}
}

View File

@@ -0,0 +1,77 @@
package com.xuebiping.bolizhuzi.model.settings;
public class IntimacyBean {
private int user_id;
private int total_consume_coin;
private String nickname;
private String avatar;
private int gender;
private int level;
private int unlock_status;
private String unlock_desc;
public String getUnlock_desc() {
return unlock_desc;
}
public void setUnlock_desc(String unlock_desc) {
this.unlock_desc = unlock_desc;
}
public int getUnlock_status() {
return unlock_status;
}
public void setUnlock_status(int unlock_status) {
this.unlock_status = unlock_status;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getGender() {
return gender;
}
public void setGender(int gender) {
this.gender = gender;
}
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

@@ -8,6 +8,9 @@ public class InvitationBean {
private InvitationReward reward; private InvitationReward reward;
private InvitationTotal total; private InvitationTotal total;
private String qrcode; private String qrcode;
private String max_divide;
private String permanent_divide;
private String invite_rule;
private List<RewardDescBean> reward_desc; private List<RewardDescBean> reward_desc;
private int show_invite_list; private int show_invite_list;
@@ -77,6 +80,30 @@ public class InvitationBean {
this.show_invite_list = show_invite_list; this.show_invite_list = show_invite_list;
} }
public String getMax_divide() {
return max_divide;
}
public void setMax_divide(String max_divide) {
this.max_divide = max_divide;
}
public String getPermanent_divide() {
return permanent_divide;
}
public void setPermanent_divide(String permanent_divide) {
this.permanent_divide = permanent_divide;
}
public String getInvite_rule() {
return invite_rule;
}
public void setInvite_rule(String invite_rule) {
this.invite_rule = invite_rule;
}
public class RewardDescBean { public class RewardDescBean {
private String title; private String title;
private String content; private String content;

View File

@@ -2,6 +2,7 @@ package com.xuebiping.bolizhuzi.model.settings;
public class InvitationTotal { public class InvitationTotal {
private int total_reward; private int total_reward;
private int total_commission_coin;
private int total_invite; private int total_invite;
private int total_commission; private int total_commission;
private int recharge_count; private int recharge_count;
@@ -46,4 +47,12 @@ public class InvitationTotal {
public void setAuth_count(int auth_count) { public void setAuth_count(int auth_count) {
this.auth_count = auth_count; this.auth_count = auth_count;
} }
public int getTotal_commission_coin() {
return total_commission_coin;
}
public void setTotal_commission_coin(int total_commission_coin) {
this.total_commission_coin = total_commission_coin;
}
} }

View File

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

View File

@@ -14,6 +14,18 @@ public class SocialBean {
private String city; private String city;
private int is_watch = 1; private int is_watch = 1;
private int vip = 2; private int vip = 2;
private String signature;
private int online_status; //0 不在线 1在线 2活跃
private int visit_times;
private int level;
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getUserid() { public int getUserid() {
return userid; return userid;
@@ -119,6 +131,30 @@ public class SocialBean {
this.vip = vip; 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 @Override
public String toString() { public String toString() {
return "SocialBean{" + return "SocialBean{" +

View File

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

@@ -0,0 +1,514 @@
package com.xuebiping.bolizhuzi.model.settings;
import java.util.List;
public class UpAuthDetailBean {
private int status;
private String status_text;
private String reject_reason;
private int submit_time;
private int audit_time;
private FormDTO form;
private SectionStatusDTO section_status;
private int can_submit;
private List<CompletionDTO> completion;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getStatus_text() {
return status_text;
}
public void setStatus_text(String status_text) {
this.status_text = status_text;
}
public String getReject_reason() {
return reject_reason;
}
public void setReject_reason(String reject_reason) {
this.reject_reason = reject_reason;
}
public int getSubmit_time() {
return submit_time;
}
public void setSubmit_time(int submit_time) {
this.submit_time = submit_time;
}
public int getAudit_time() {
return audit_time;
}
public void setAudit_time(int audit_time) {
this.audit_time = audit_time;
}
public FormDTO getForm() {
return form;
}
public void setForm(FormDTO form) {
this.form = form;
}
public SectionStatusDTO getSection_status() {
return section_status;
}
public void setSection_status(SectionStatusDTO section_status) {
this.section_status = section_status;
}
public int getCan_submit() {
return can_submit;
}
public void setCan_submit(int can_submit) {
this.can_submit = can_submit;
}
public List<CompletionDTO> getCompletion() {
return completion;
}
public void setCompletion(List<CompletionDTO> completion) {
this.completion = completion;
}
public static class FormDTO {
private String avatar;
private String nickname;
private String signature;
private int gender;
private String job;
private String tag;
private String cover_image;
private String material_image;
private String real_name;
private String id_card_no;
private String id_card_front;
private String id_card_back;
private String id_card_hold;
private String video_verify_code;
private String video_verify_text;
private String video_verify_video;
private String birthday;
private String wechat_no;
private String video_cover_url;
private String video_url;
private int height;
private int weight;
private int bust; //胸围
private int waist; //腰围
private int hip; //臀围
private String constellation;
private int city_id;
private String city_name;
private List<String> album_images;
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getSignature() {
return signature;
}
public void setSignature(String signature) {
this.signature = signature;
}
public int getGender() {
return gender;
}
public void setGender(int gender) {
this.gender = gender;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public String getTag() {
return tag;
}
public void setTag(String tag) {
this.tag = tag;
}
public String getCover_image() {
return cover_image;
}
public void setCover_image(String cover_image) {
this.cover_image = cover_image;
}
public String getMaterial_image() {
return material_image;
}
public void setMaterial_image(String material_image) {
this.material_image = material_image;
}
public String getReal_name() {
return real_name;
}
public void setReal_name(String real_name) {
this.real_name = real_name;
}
public String getId_card_no() {
return id_card_no;
}
public void setId_card_no(String id_card_no) {
this.id_card_no = id_card_no;
}
public String getId_card_front() {
return id_card_front;
}
public void setId_card_front(String id_card_front) {
this.id_card_front = id_card_front;
}
public String getId_card_back() {
return id_card_back;
}
public void setId_card_back(String id_card_back) {
this.id_card_back = id_card_back;
}
public String getId_card_hold() {
return id_card_hold;
}
public void setId_card_hold(String id_card_hold) {
this.id_card_hold = id_card_hold;
}
public String getVideo_verify_code() {
return video_verify_code;
}
public void setVideo_verify_code(String video_verify_code) {
this.video_verify_code = video_verify_code;
}
public String getVideo_verify_text() {
return video_verify_text;
}
public void setVideo_verify_text(String video_verify_text) {
this.video_verify_text = video_verify_text;
}
public String getVideo_verify_video() {
return video_verify_video;
}
public void setVideo_verify_video(String video_verify_video) {
this.video_verify_video = video_verify_video;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getWechat_no() {
return wechat_no;
}
public void setWechat_no(String wechat_no) {
this.wechat_no = wechat_no;
}
public String getVideo_cover_url() {
return video_cover_url;
}
public void setVideo_cover_url(String video_cover_url) {
this.video_cover_url = video_cover_url;
}
public String getVideo_url() {
return video_url;
}
public void setVideo_url(String video_url) {
this.video_url = video_url;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
public int getWeight() {
return weight;
}
public void setWeight(int weight) {
this.weight = weight;
}
public int getBust() {
return bust;
}
public void setBust(int bust) {
this.bust = bust;
}
public int getWaist() {
return waist;
}
public void setWaist(int waist) {
this.waist = waist;
}
public int getHip() {
return hip;
}
public void setHip(int hip) {
this.hip = hip;
}
public String getConstellation() {
return constellation;
}
public void setConstellation(String constellation) {
this.constellation = constellation;
}
public int getCity_id() {
return city_id;
}
public void setCity_id(int city_id) {
this.city_id = city_id;
}
public String getCity_name() {
return city_name;
}
public void setCity_name(String city_name) {
this.city_name = city_name;
}
public List<String> getAlbum_images() {
return album_images;
}
public void setAlbum_images(List<String> album_images) {
this.album_images = album_images;
}
}
public static class SectionStatusDTO {
private IdentityDTO identity;
private VideoVerifyDTO video_verify;
private AlbumDTO album;
private VideoCoverDTO video_cover;
public IdentityDTO getIdentity() {
return identity;
}
public void setIdentity(IdentityDTO identity) {
this.identity = identity;
}
public VideoVerifyDTO getVideo_verify() {
return video_verify;
}
public void setVideo_verify(VideoVerifyDTO video_verify) {
this.video_verify = video_verify;
}
public AlbumDTO getAlbum() {
return album;
}
public void setAlbum(AlbumDTO album) {
this.album = album;
}
public VideoCoverDTO getVideo_cover() {
return video_cover;
}
public void setVideo_cover(VideoCoverDTO video_cover) {
this.video_cover = video_cover;
}
public static class IdentityDTO {
private int status;
private String text;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
public static class VideoVerifyDTO {
private int status;
private String text;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
public static class AlbumDTO {
private int status;
private String text;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
public static class VideoCoverDTO {
private int status;
private String text;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
}
public static class CompletionDTO {
private String key;
private String label;
private int filled;
private String text;
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public int getFilled() {
return filled;
}
public void setFilled(int filled) {
this.filled = filled;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
}

View File

@@ -38,8 +38,71 @@ public class UserInfoBean {
private int newer_win_status;//新用户弹窗标识1=新用户、0=旧用户 private int newer_win_status;//新用户弹窗标识1=新用户、0=旧用户
private String job; private String job;
private String signature; private String signature;
private String school;
private UserFrameBean user_frame; private UserFrameBean user_frame;
private int height;
private int user_type; private int user_type;
private int online_status;
private int do_not_disturb;
private int level;
private int next_level_diff_wealth_value;
private int level_percent;
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getNext_level_diff_wealth_value() {
return next_level_diff_wealth_value;
}
public void setNext_level_diff_wealth_value(int next_level_diff_wealth_value) {
this.next_level_diff_wealth_value = next_level_diff_wealth_value;
}
public int getLevel_percent() {
return level_percent;
}
public void setLevel_percent(int level_percent) {
this.level_percent = level_percent;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
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() { public int getUser_type() {
return user_type; return user_type;

File diff suppressed because it is too large Load Diff

View File

@@ -41,9 +41,9 @@ public class SaveImageUtil {
@Override @Override
protected void onPostExecute(Boolean result) { protected void onPostExecute(Boolean result) {
if (result) { if (result) {
MaleToast.showMessage(context, "二维码保存成功"); MaleToast.showMessage(context, "已保存到相册,快去分享吧~");
} else { } else {
MaleToast.showMessage(context, "二维码保存失败"); MaleToast.showMessage(context, "保存失败");
} }
} }

View File

@@ -15,31 +15,37 @@ import androidx.recyclerview.widget.LinearLayoutManager
import com.chad.library.adapter.base.BaseQuickAdapter import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.viewholder.BaseViewHolder import com.chad.library.adapter.base.viewholder.BaseViewHolder
import com.facebook.drawee.view.SimpleDraweeView import com.facebook.drawee.view.SimpleDraweeView
import com.fengliyan.uikit.dialog.BottomGiftDialog
import com.fengliyan.uikit.dialog.BottomSelectiveDialog
import com.fengliyan.uikit.dialog.DialogGiftBean
import com.fengliyan.uikit.dialog.GiftListBean
import com.fengliyan.uikit.toast.MaleToast
import com.ryan.github.menupopupview.MenuPopupAdapter
import com.ryan.github.menupopupview.PopupLayout
import com.ryan.github.menupopupview.PopupView
import com.xuebiping.bolizhuzi.R import com.xuebiping.bolizhuzi.R
import com.xuebiping.bolizhuzi.controller.constant.ConsUser import com.xuebiping.bolizhuzi.controller.constant.ConsUser
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl import com.xuebiping.bolizhuzi.controller.constant.ConstUrl
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter.* import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter.*
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.MenuPopupItemAdapter import com.xuebiping.bolizhuzi.controller.dynamics.adapter.MenuPopupItemAdapter
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager
import com.xuebiping.bolizhuzi.databinding.ActivityDynamicdetailBinding import com.xuebiping.bolizhuzi.databinding.ActivityDynamicdetailBinding
import com.xuebiping.bolizhuzi.databinding.HeaderDynamicDetailBinding import com.xuebiping.bolizhuzi.databinding.HeaderDynamicDetailBinding
import com.xuebiping.bolizhuzi.model.dynamics.CommentBean import com.xuebiping.bolizhuzi.model.dynamics.CommentBean
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean
import com.xuebiping.bolizhuzi.model.main.FollowResultBean import com.xuebiping.bolizhuzi.model.main.FollowResultBean
import com.xuebiping.bolizhuzi.model.main.GiftBean
import com.xuebiping.bolizhuzi.model.settings.RechargeListBean
import com.xuebiping.bolizhuzi.utils.SPUtils import com.xuebiping.bolizhuzi.utils.SPUtils
import com.xuebiping.bolizhuzi.view.base.BaseActivity import com.xuebiping.bolizhuzi.view.base.BaseActivity
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack
import com.xuebiping.bolizhuzi.view.base.utils.view.HangUpDialog import com.xuebiping.bolizhuzi.view.base.utils.view.HangUpDialog
import com.xuebiping.bolizhuzi.view.base.utils.view.HangUpDialog.OnHangUpListener import com.xuebiping.bolizhuzi.view.base.utils.view.HangUpDialog.OnHangUpListener
import com.xuebiping.bolizhuzi.view.main.ComplaintActivity
import com.xuebiping.bolizhuzi.view.main.MainPageActivity import com.xuebiping.bolizhuzi.view.main.MainPageActivity
import com.fengliyan.uikit.dialog.BottomSelectiveDialog import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity
import com.fengliyan.uikit.toast.MaleToast
import com.ryan.github.menupopupview.MenuPopupAdapter
import com.ryan.github.menupopupview.PopupLayout
import com.ryan.github.menupopupview.PopupView
import de.greenrobot.event.EventBus import de.greenrobot.event.EventBus
import kotlinx.android.synthetic.main.header_dynamic_detail.* import kotlinx.android.synthetic.main.header_dynamic_detail.*
import kotlinx.android.synthetic.main.header_dynamic_detail.view.* import kotlinx.android.synthetic.main.header_dynamic_detail.view.*
@@ -51,7 +57,7 @@ class DynamicDetailActivity : BaseActivity() {
var datas = mutableListOf<CommentBean>() var datas = mutableListOf<CommentBean>()
var likes = mutableListOf<CommentBean>() var likes = mutableListOf<CommentBean>()
val dynamidData: ArrayList<DynamicsItemBean> = ArrayList() val dynamidData: ArrayList<DynamicsItemBean> = ArrayList()
lateinit var dynamicAdapter: DynamicsAdapter lateinit var dynamicAdapter: DynamicsAdapter1
var dynamic_id: String? = null var dynamic_id: String? = null
var dynamic_from: Int = 0 var dynamic_from: Int = 0
lateinit var adapter: BaseQuickAdapter<CommentBean, BaseViewHolder> lateinit var adapter: BaseQuickAdapter<CommentBean, BaseViewHolder>
@@ -62,7 +68,7 @@ class DynamicDetailActivity : BaseActivity() {
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
dynamicAdapter = DynamicsAdapter(this) dynamicAdapter = DynamicsAdapter1(this)
bindDynamicEvent(dynamicAdapter) bindDynamicEvent(dynamicAdapter)
dynamicAdapter.setList(dynamidData) dynamicAdapter.setList(dynamidData)
dynamic_id = intent.getStringExtra("dynamic_id") dynamic_id = intent.getStringExtra("dynamic_id")
@@ -236,55 +242,146 @@ class DynamicDetailActivity : BaseActivity() {
} }
fun bindDynamicEvent(mAdapter: DynamicsAdapter) { fun bindDynamicEvent(mAdapter: DynamicsAdapter1) {
mAdapter.likeDynamicCallback = DynamicLikeCallback { bean -> likeFeed(bean) } // mAdapter.likeDynamicCallback = DynamicLikeCallback { bean -> likeFeed(bean) })
mAdapter.dynamicCommentCallback = DynamicCommentCallback { // mAdapter.dynamicCommentCallback = DynamicCommentCallback {
replcyCommentId = null // replcyCommentId = null
binding.contentField.hint = "想和TA说..." // binding.contentField.hint = "想和TA说..."
showKeyboard(true) // showKeyboard(true)
} // }
mAdapter.setOnMenuClickListener(OnMenuClickListener { dynamicIndex -> // mAdapter.setOnMenuClickListener(OnMenuClickListener { dynamicIndex ->
mSelectiveDialog = // mSelectiveDialog =
BottomSelectiveDialog(DynamicDetailActivity@ this, R.style.SelectiveDialog) // BottomSelectiveDialog(DynamicDetailActivity@ this, R.style.SelectiveDialog)
if (0 == dynamidData.get(dynamicIndex).is_follow) { // if (0 == dynamidData.get(dynamicIndex).is_follow) {
mSelectiveDialog?.addSelectButton( // mSelectiveDialog?.addSelectButton(
"关注", // "关注",
BottomSelectiveDialog.OnButtonSelectListener { view, index -> // BottomSelectiveDialog.OnButtonSelectListener { view, index ->
mSelectiveDialog?.dismiss() // mSelectiveDialog?.dismiss()
focus(dynamidData.get(dynamicIndex).getUser_id()) // focus(dynamidData.get(dynamicIndex).getUser_id())
}) // })
} // }
mSelectiveDialog?.addSelectButton( // mSelectiveDialog?.addSelectButton(
"举报", // "举报",
BottomSelectiveDialog.OnButtonSelectListener { view, index -> // BottomSelectiveDialog.OnButtonSelectListener { view, index ->
mSelectiveDialog?.dismiss() // mSelectiveDialog?.dismiss()
var intent = Intent(DynamicDetailActivity@ this, ComplaintActivity::class.java) // var intent = Intent(DynamicDetailActivity@ this, ComplaintActivity::class.java)
intent.putExtra("uid", dynamidData.get(dynamicIndex).getUser_id()) // intent.putExtra("uid", dynamidData.get(dynamicIndex).getUser_id())
intent.putExtra("type", 3) // intent.putExtra("type", 3)
startActivity(intent) // startActivity(intent)
}) // })
mSelectiveDialog?.show() // mSelectiveDialog?.show()
}) // })
//删除动态 //删除动态
mAdapter.setOnMenuDeleteClickListener(OnMenuDeleteClickListener { position, mDynamicsItemList -> // mAdapter.setOnMenuDeleteClickListener(OnMenuDeleteClickListener { position, mDynamicsItemList ->
val hangUpDialog = HangUpDialog( // val hangUpDialog = HangUpDialog(
this@DynamicDetailActivity, // this@DynamicDetailActivity,
OnHangUpListener { // OnHangUpListener {
deleteDynamics(mDynamicsItemList[position].id, position)
}, "您确定要删除吗?", "确定", "取消"
)
hangUpDialog.show()
// mDeleteBottomDialog =
// BottomSelectiveDialog(this@DynamicDetailActivity, R.style.SelectiveDialog)
// mDeleteBottomDialog?.addSelectButton(
// "删除",
// BottomSelectiveDialog.OnButtonSelectListener { view, index ->
// mDeleteBottomDialog?.dismiss()
// deleteDynamics(mDynamicsItemList[position].id, position) // deleteDynamics(mDynamicsItemList[position].id, position)
// }, "您确定要删除吗?", "确定", "取消"
// )
// hangUpDialog.show()
//// mDeleteBottomDialog =
//// BottomSelectiveDialog(this@DynamicDetailActivity, R.style.SelectiveDialog)
//// mDeleteBottomDialog?.addSelectButton(
//// "删除",
//// BottomSelectiveDialog.OnButtonSelectListener { view, index ->
//// mDeleteBottomDialog?.dismiss()
//// deleteDynamics(mDynamicsItemList[position].id, position)
//// })
//// mDeleteBottomDialog?.show()
// }) // })
// mDeleteBottomDialog?.show()
mAdapter.likeDynamicCallback = DynamicsAdapter1.DynamicLikeCallback { bean ->
likeFeed(
bean
)
}
mAdapter.setOnGiftSendListener { bean, quantity -> // sendGift(bean.getId(), quantity, bean);
getGiftData(bean.user_id)
}
}
private var mGiftDialog: BottomGiftDialog? = null
/**
* 礼物列表数据
*/
private fun getGiftData(user_id: String) {
val callBack = object : HttpUiCallBack<GiftListBean?> {
override fun onSuccess(activity: BaseActivity?, result: GiftListBean?, tips: String?) {
mGiftDialog = BottomGiftDialog(
this@DynamicDetailActivity,
R.style.SelectiveDialog
)
mGiftDialog!!.setGiftListBean(result)
mGiftDialog!!.setOnGiftItemClickedListener(object :
BottomGiftDialog.OnGiftItemClickedListener {
override fun onGiftClicked(bean: DialogGiftBean) {
if (!TextUtils.isEmpty(user_id)) {
sendGift(user_id.toInt(), bean.id)
}
}
override fun onWalletClicked() {
val intent = Intent(this@DynamicDetailActivity, CaibeiRechargeActivity::class.java)
startActivity(intent)
}
}) })
mGiftDialog!!.show()
}
override fun onFailure(activity: BaseActivity?, tip: String?) {
MaleToast.showMessage(activity, tip)
}
override fun onException(activity: BaseActivity?, e: Throwable?) {
MaleToast.showMessage(activity, "请重试")
}
}
MainManager.getGiftBeans(this as BaseActivity?, callBack)
}
/**
* 赠送礼物
*
* @param toUid
* @param giftId
*/
fun sendGift(toUid: Int, giftId: Int) {
val callBack = object : HttpUiCallBack<GiftListBean?> {
override fun onSuccess(activity: BaseActivity?, result: GiftListBean?, tips: String?) {
if (null != mGiftDialog) {
mGiftDialog!!.setCoin(result!!.coin.toString() + "")
mGiftDialog!!.dismiss()
}
MaleToast.showMessage(this@DynamicDetailActivity, "赠送成功")
}
override fun onFailure(activity: BaseActivity?, tip: String?) {
MaleToast.showMessage(this@DynamicDetailActivity, tip)
}
override fun onException(activity: BaseActivity?, e: Throwable?) {
MaleToast.showMessage(this@DynamicDetailActivity, "赠送失败")
}
}
MainManager.sendGift(
this as BaseActivity?,
1,
toUid,
giftId,
1,
callBack)
} }
fun likeFeed(bean: DynamicsItemBean) { fun likeFeed(bean: DynamicsItemBean) {
@@ -464,6 +561,7 @@ class DynamicDetailActivity : BaseActivity() {
object : HttpUiCallBack<Any> { object : HttpUiCallBack<Any> {
override fun onSuccess(activity: BaseActivity?, result: Any?, tips: String?) { override fun onSuccess(activity: BaseActivity?, result: Any?, tips: String?) {
binding.contentField.setText("") binding.contentField.setText("")
getCommentList()
refresh() refresh()
} }

View File

@@ -31,7 +31,7 @@ public class DynamicDetailTwoActivity extends BaseActivity {
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dynamic_detail_two); setContentView(R.layout.activity_dynamic_detail_two);
bean = getIntent().getParcelableExtra("bean"); bean = (DynamicsItemBean) getIntent().getSerializableExtra("bean");
mImageList.add(bean); mImageList.add(bean);
setTitleName("动态详情"); setTitleName("动态详情");

View File

@@ -0,0 +1,147 @@
package com.xuebiping.bolizhuzi.view.dynamics.activity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import com.fengliyan.uikit.toast.MaleToast;
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.dynamics.fragment.DynamicImageTextFragment;
import com.xuebiping.bolizhuzi.view.dynamics.fragment.DynamicVideoTextFragment;
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 DynamicPublishActivity extends BaseActivity implements View.OnClickListener {
private MagicIndicator mMagicIndicator;
private ViewPager mMainViewPager;
private MainViewPagerAdapter mViewPagerAdapter;
private List<Fragment> mChannelFragments = new ArrayList<>();
private DynamicImageTextFragment mDynamicImageTextFragment;
private DynamicVideoTextFragment mDynamicVideoTextFragment;
private List<String> mDataList = new ArrayList<>();
private int mIndex = 0;
private RelativeLayout mLl_back;
private TextView mTv_zhunze;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dynamic_publish);
hideTitleBar();
initView();
}
private void initView() {
mMagicIndicator = findViewById(R.id.magic_indicator);
mMainViewPager = findViewById(R.id.main_view_pager);
mLl_back = findViewById(R.id.ll_back);
mTv_zhunze = findViewById(R.id.tv_zhunze);
mLl_back.setOnClickListener(this);
mTv_zhunze.setOnClickListener(this);
mDynamicImageTextFragment = new DynamicImageTextFragment();
mDynamicVideoTextFragment = new DynamicVideoTextFragment();
mChannelFragments.add(mDynamicImageTextFragment);
mChannelFragments.add(mDynamicVideoTextFragment);
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);
}
@Override
public void onClick(View view) {
if (view == mLl_back) {
finish();
} else if (view == mTv_zhunze) {
MaleToast.showMessage(this, "开发中");
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (null != mDynamicImageTextFragment) {
mDynamicImageTextFragment.onActivityResult(requestCode & 0xffff, resultCode, intent);
}
if (null != mDynamicVideoTextFragment) {
mDynamicVideoTextFragment.onActivityResult(requestCode & 0xffff, resultCode, intent);
}
}
}

View File

@@ -0,0 +1,49 @@
package com.xuebiping.bolizhuzi.view.dynamics.activity
import android.animation.ValueAnimator
import android.os.Bundle
import com.shuyu.gsyvideoplayer.utils.GSYVideoType
import com.xuebiping.bolizhuzi.databinding.ActivityPageVideoPlay2Binding
import com.xuebiping.bolizhuzi.im.uikit.common.Constans
import com.xuebiping.bolizhuzi.view.base.BaseActivity
class PageVideoPlay2Activity : BaseActivity() {
lateinit var binding: ActivityPageVideoPlay2Binding
private var videoUrl: String? = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityPageVideoPlay2Binding.inflate(layoutInflater)
setContentView(binding.root)
hideTitleBar()
videoUrl = intent.getStringExtra("videoUrl")
binding.ivBack.setOnClickListener {
finish()
}
GSYVideoType.setShowType(GSYVideoType.SCREEN_TYPE_FULL)
// GSYVideoType.setShowType(GSYVideoType.SCREEN_TYPE_DEFAULT)
binding.videoView.setUp(
Constans.IMAGE_URL + videoUrl, true, ""
)
binding.videoView.isLooping = true
binding.videoView.startPlayLogic()
}
override fun onPause() {
super.onPause()
binding.videoView.onVideoPause()
}
override fun onRestart() {
super.onRestart()
binding.videoView.onVideoResume()
}
override fun onDestroy() {
super.onDestroy()
binding.videoView.setVideoAllCallBack(null)
binding.videoView.release()
}
}

View File

@@ -0,0 +1,554 @@
package com.xuebiping.bolizhuzi.view.dynamics.fragment;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.media.ThumbnailUtils;
import android.os.Bundle;
import android.provider.MediaStore;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import com.fengliyan.http.httprequest.UploadFile;
import com.fengliyan.uikit.photopicker.MultiImageSelector;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.im.uikit.business.session.helper.VideoMessageHelper;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicPostBean;
import com.xuebiping.bolizhuzi.model.dynamics.ImageUploadBean;
import com.xuebiping.bolizhuzi.model.dynamics.UploadImageBean;
import com.xuebiping.bolizhuzi.utils.camera2.BitmapUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.ImageUtils;
import com.xuebiping.bolizhuzi.view.dynamics.dialog.TopicListDialog;
import com.xuebiping.bolizhuzi.view.dynamics.utils.ImageLayout;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.net.URI;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.functions.Function2;
public class DynamicImageTextFragment extends Fragment implements View.OnClickListener {
public static final int MULTI_SELECTOR_REQUEST = 200;
public static final int SINGLE_SELECTOR_REQUEST = 201;
public static final int MAX_IMAGE_COUNT = 9;
private View v;
private LinearLayout mPhotoLine1;
private LinearLayout mPhotoLine2;
private LinearLayout mPhotoLine3;
private EditText mEditText;
private TextView mComplaintInputText;
private int mSingleIndex;
private ArrayList<String> mSelectPath = new ArrayList<>();
private MultiImageSelector mSelector;
private StringBuilder mImages;
private ProgressDialog progressDialog;
private boolean isVideo = false;
private VideoMessageHelper helper;
private File videoFile;
private TextWatcher mWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
String length = mEditText.getText().length() + "/300字";
mComplaintInputText.setText(length);
}
@Override
public void afterTextChanged(Editable editable) {
}
};
private RelativeLayout rl_add_topic;
private TextView tv_topic_content;
private TopicListDialog topicListDialog;
private Button mBt_publish;
@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_dynamic_image_text, container, false);
helper = new VideoMessageHelper(getActivity(), new VideoMessageHelper.VideoMessageHelperListener() {
@Override
public void onVideoPicked(File file, String md5) {
videoFile = file;
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(file.getAbsolutePath(), MediaStore.Video.Thumbnails.FULL_SCREEN_KIND);
BitmapUtils.savePicNoRotate(BitmapUtils.toByteArray(bitmap), "video_cover",
new Function2<String, String, Unit>() {
@Override
public Unit invoke(String s, String s2) {
bitmap.recycle();
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
List<String> paths = new ArrayList<>();
paths.add(s);
notifyDataSetChanged(paths);
mSelectPath.add(s);
}
});
return null;
}
}, new Function1<String, Unit>() {
@Override
public Unit invoke(String s) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
MaleToast.showMessage(getActivity(), "获取视频缩略图失败");
}
});
return null;
}
});
}
});
initView(v);
return v;
}
private void initView(View v) {
mPhotoLine1 = v.findViewById(R.id.dynamics_post_line_1);
mPhotoLine2 = v.findViewById(R.id.dynamics_post_line_2);
mPhotoLine3 = v.findViewById(R.id.dynamics_post_line_3);
mEditText = v.findViewById(R.id.edit_post);
rl_add_topic = v.findViewById(R.id.rl_add_topic);
tv_topic_content = v.findViewById(R.id.tv_topic_content);
mComplaintInputText = v.findViewById(R.id.edit_char_count);
mBt_publish = v.findViewById(R.id.bt_publish);
mSelector = MultiImageSelector.create().multi().count(MAX_IMAGE_COUNT);
mImages = new StringBuilder();
addPhotos(mSelectPath);
mEditText.addTextChangedListener(mWatcher);
rl_add_topic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//TODO 添加话题,打开话题弹窗
topicListDialog = new TopicListDialog(getActivity());
topicListDialog.show();
topicListDialog.setRightOnClickListener(new TopicListDialog.OnDialogRightClickListener() {
@Override
public void rightClick(String str) {
tv_topic_content.setText(str);
}
});
}
});
mBt_publish.setOnClickListener(this);
}
public void notifyDataSetChanged(List<String> imagePath) {
removePhotos();
addPhotos(imagePath);
}
private void removePhotos() {
mPhotoLine1.removeAllViews();
mPhotoLine2.removeAllViews();
mPhotoLine3.removeAllViews();
}
private void addPhotos(List<String> imagePath) {
Iterator<String> i = imagePath.iterator();
int count = 0;
while (i.hasNext()) {
String path = i.next();
final ImageLayout image = new ImageLayout(getActivity());
setImage(path, image);
image.setPadding(6, 0, 0, 0);
image.setOnImageHandlingListener(new ImageLayout.OnImageHandlingListener() {
@Override
public void onImageClicked() {
singleReplace(image.getImageUrl());
}
@Override
public void onReadyLogoClicked() {
startImageSelector();
}
@Override
public void onRemoveLogoClicked() {
removeImage(image.getImageUrl());
}
});
if (count < 3) {
mPhotoLine1.addView(image);
} else if (count < 6) {
mPhotoLine2.addView(image);
} else if (count < 9) {
mPhotoLine3.addView(image);
}
count++;
}
if (isVideo) {
if (imagePath.size() == 0) {
addTail(count);
}
} else {
addTail(count);
}
}
void addTail(int count) {
if (count != 9) {
ImageLayout image = new ImageLayout(getActivity());
image.setPadding(6, 0, 0, 0);
image.setOnImageHandlingListener(new ImageLayout.OnImageHandlingListener() {
@Override
public void onImageClicked() {
}
@Override
public void onReadyLogoClicked() {
startImageSelector();
}
@Override
public void onRemoveLogoClicked() {
}
});
// if (count == 0) {
// image.empty();
// }
if (count < 3) {
mPhotoLine1.addView(image);
} else if (count < 6) {
mPhotoLine2.addView(image);
} else if (count < 9) {
mPhotoLine3.addView(image);
}
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (isVideo) {
helper.onGetLocalVideoResult(data);
}
if (requestCode == MULTI_SELECTOR_REQUEST && resultCode == getActivity().RESULT_OK) {
mSelectPath.addAll(data.getStringArrayListExtra(MultiImageSelector.EXTRA_RESULT));
notifyDataSetChanged(mSelectPath);
} else if (requestCode == SINGLE_SELECTOR_REQUEST && resultCode == getActivity().RESULT_OK) {
mSelectPath.remove(mSingleIndex);
mSelectPath.add(mSingleIndex, data.
getStringArrayListExtra(MultiImageSelector.EXTRA_RESULT).get(0));
notifyDataSetChanged(mSelectPath);
}
}
public void removeImage(String path) {
path = path.replace("file:", "");
mSelectPath.remove(path);
notifyDataSetChanged(mSelectPath);
}
public void startImageSelector() {
if (isVideo) {
helper.chooseVideoFromLocal();
return;
}
mSelector.multi();
mSelector.count(9 - mSelectPath.size());
mSelector.start(this, MULTI_SELECTOR_REQUEST);
}
public void singleReplace(String path) {
if (isVideo) {
helper.chooseVideoFromLocal();
return;
}
path = path.replace("file:", "");
mSingleIndex = mSelectPath.indexOf(path);
mSelector.single();
mSelector.start(this, SINGLE_SELECTOR_REQUEST);
}
private void setImage(String path, ImageLayout image) {
if (path != null) {
File file = new File(path);
if (null != file) {
URI uri = file.toURI();
image.imageLoad(uri.toString());
}
}
}
private void compressAndUpload() {
Iterator<String> i = mSelectPath.iterator();
final UploadFile[] uploadFiles = new UploadFile[mSelectPath.size()];
int count = 0;
while (i.hasNext()) {
String path = i.next();
path = ImageUtils.compressImage(getActivity(), path, Constant.IMAGE_MEMORY_SIZE, false);
File file = new File(path);
UploadFile uploadFile = new UploadFile("file[" + count + "]", file);
uploadFiles[count] = uploadFile;
count++;
}
if (null != uploadFiles) {
if (uploadFiles.length != 0) {
if (uploadFiles[0].getFile().exists()) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
uploadImage(uploadFiles, mEditText.getText().toString());
}
});
}
}
} else {
progressDialog.dismiss();
mBt_publish.setEnabled(true);
}
}
void uploadVideo(String content, String coverUrl) {
UploadFile uploadFile = new UploadFile(System.currentTimeMillis() + ".mp4", videoFile);
UploadFile[] files = new UploadFile[]{uploadFile};
DynamicsManager.uploadImage((BaseActivity) getActivity(), files, "dynamic",
new HttpUiCallBack<List<UploadImageBean>>() {
@Override
public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) {
if (result.size() > 0) {
String videoUrl = result.get(0).getUrl();
postDynamics(content, coverUrl, videoUrl);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "视频上传失败");
mBt_publish.setEnabled(true);
}
});
}
private void uploadImage(UploadFile[] uploadFiles, final String content) {
DynamicsManager.uploadImage((BaseActivity) getActivity(), uploadFiles, "dynamic",
new HttpUiCallBack<List<UploadImageBean>>() {
@Override
public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) {
mImages = new StringBuilder();
Iterator<UploadImageBean> iterator = result.iterator();
int count = 0;
while (iterator.hasNext()) {
UploadImageBean bean = iterator.next();
if (0 != count) {
mImages.append(",");
}
mImages.append(bean.getUrl());
count++;
}
if (isVideo) {
uploadVideo(content, mImages.toString());
} else {
postDynamics(content, mImages.toString(), null);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "图片上传失败");
mBt_publish.setEnabled(true);
}
});
}
private void setImageUrl(String dynamicId, String imageUrl, String videoUrl) {
DynamicsManager.setImageUrl((BaseActivity) getActivity(), dynamicId, imageUrl, videoUrl, new HttpUiCallBack<ImageUploadBean>() {
@Override
public void onSuccess(BaseActivity activity, ImageUploadBean result, String message) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "动态上传成功");
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
// MaleToast.showMessage(activity, "图片上传失败");
progressDialog.dismiss();
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
});
}
private void postDynamics(String content, final String images, final String videoUrl) {
DynamicsManager.postDynamics((BaseActivity) getActivity(), content, new HttpUiCallBack<DynamicPostBean>() {
@Override
public void onSuccess(BaseActivity activity, DynamicPostBean result, String message) {
if (null != images) {
setImageUrl(result.getDynamic_id(), images, videoUrl);
} else {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, "动态上传成功");
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, "动态上传失败");
mBt_publish.setEnabled(true);
}
});
}
private final int MIN_DELAY_TIME = 8000; // 两次点击间隔不能少于10000ms
private long lastClickTime;
public boolean isFastClick() {
boolean flag = true;
long currentClickTime = System.currentTimeMillis();
if ((currentClickTime - lastClickTime) >= MIN_DELAY_TIME) {
flag = false;
}
lastClickTime = currentClickTime;
return flag;
}
@Override
public void onClick(View view) {
if (view == mBt_publish) {
String content = mEditText.getText().toString();
if (TextUtils.isEmpty(content)) {
MaleToast.showFailureMsg(getActivity(), "请输入文字内容");
return;
}
if (isVideo) {
// if (videoFile == null) {
// MaleToast.showFailureMsg(DynamicPostActivity.this, "请选择视频");
// return;
// }
if (videoFile != null) {
mBt_publish.setEnabled(false);
progressDialog = ProgressDialog.show(getActivity(), "正在发布", "请稍后...");
new Thread(new Runnable() {
@Override
public void run() {
compressAndUpload();
}
}).start();
return;
}
}
// if (mSelectPath.isEmpty()) {
// MaleToast.showFailureMsg(DynamicPostActivity.this, "请选择图片");
// return;
// }
String word = null;
if (!TextUtils.isEmpty(content)) {
word = mEditText.getText().toString();
}
if (!mSelectPath.isEmpty()) {
if (!isFastClick()) {
progressDialog = ProgressDialog.show(getActivity(), "正在发布", "请稍后...");
mBt_publish.setEnabled(false);
new Thread(new Runnable() {
@Override
public void run() {
compressAndUpload();
}
}).start();
}
} else {
if (null != word || TextUtils.isEmpty(word)) {
postDynamics(content, null, null);
// MaleToast.showMessage(DynamicPostActivity.this, "请选择图片");
} else {
MaleToast.showMessage(getActivity(), "请输入内容");
}
}
}
}
}

View File

@@ -0,0 +1,554 @@
package com.xuebiping.bolizhuzi.view.dynamics.fragment;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.media.ThumbnailUtils;
import android.os.Bundle;
import android.provider.MediaStore;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import com.fengliyan.http.httprequest.UploadFile;
import com.fengliyan.uikit.photopicker.MultiImageSelector;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.im.uikit.business.session.helper.VideoMessageHelper;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicPostBean;
import com.xuebiping.bolizhuzi.model.dynamics.ImageUploadBean;
import com.xuebiping.bolizhuzi.model.dynamics.UploadImageBean;
import com.xuebiping.bolizhuzi.utils.camera2.BitmapUtils;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.ImageUtils;
import com.xuebiping.bolizhuzi.view.dynamics.dialog.TopicListDialog;
import com.xuebiping.bolizhuzi.view.dynamics.utils.ImageLayout;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.net.URI;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.functions.Function2;
public class DynamicVideoTextFragment extends Fragment implements View.OnClickListener{
public static final int MULTI_SELECTOR_REQUEST = 200;
public static final int SINGLE_SELECTOR_REQUEST = 201;
public static final int MAX_IMAGE_COUNT = 9;
private View v;
private LinearLayout mPhotoLine1;
private LinearLayout mPhotoLine2;
private LinearLayout mPhotoLine3;
private EditText mEditText;
private TextView mComplaintInputText;
private int mSingleIndex;
private ArrayList<String> mSelectPath = new ArrayList<>();
private MultiImageSelector mSelector;
private StringBuilder mImages;
private ProgressDialog progressDialog;
private boolean isVideo = true;
private VideoMessageHelper helper;
private File videoFile;
private TextWatcher mWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
String length = mEditText.getText().length() + "/300字";
mComplaintInputText.setText(length);
}
@Override
public void afterTextChanged(Editable editable) {
}
};
private RelativeLayout rl_add_topic;
private TextView tv_topic_content;
private TopicListDialog topicListDialog;
private Button mBt_publish;
@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_dynamic_video_text, container, false);
helper = new VideoMessageHelper(getActivity(), new VideoMessageHelper.VideoMessageHelperListener() {
@Override
public void onVideoPicked(File file, String md5) {
videoFile = file;
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(file.getAbsolutePath(), MediaStore.Video.Thumbnails.FULL_SCREEN_KIND);
BitmapUtils.savePicNoRotate(BitmapUtils.toByteArray(bitmap), "video_cover",
new Function2<String, String, Unit>() {
@Override
public Unit invoke(String s, String s2) {
bitmap.recycle();
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
List<String> paths = new ArrayList<>();
paths.add(s);
notifyDataSetChanged(paths);
mSelectPath.add(s);
}
});
return null;
}
}, new Function1<String, Unit>() {
@Override
public Unit invoke(String s) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
MaleToast.showMessage(getActivity(), "获取视频缩略图失败");
}
});
return null;
}
});
}
});
initView(v);
return v;
}
private void initView(View v) {
mPhotoLine1 = v.findViewById(R.id.dynamics_post_line_1);
mPhotoLine2 = v.findViewById(R.id.dynamics_post_line_2);
mPhotoLine3 = v.findViewById(R.id.dynamics_post_line_3);
mEditText = v.findViewById(R.id.edit_post);
rl_add_topic = v.findViewById(R.id.rl_add_topic);
tv_topic_content = v.findViewById(R.id.tv_topic_content);
mComplaintInputText = v.findViewById(R.id.edit_char_count);
mBt_publish = v.findViewById(R.id.bt_publish);
mSelector = MultiImageSelector.create().multi().count(MAX_IMAGE_COUNT);
mImages = new StringBuilder();
addPhotos(mSelectPath);
mEditText.addTextChangedListener(mWatcher);
rl_add_topic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//TODO 添加话题,打开话题弹窗
topicListDialog = new TopicListDialog(getActivity());
topicListDialog.show();
topicListDialog.setRightOnClickListener(new TopicListDialog.OnDialogRightClickListener() {
@Override
public void rightClick(String str) {
tv_topic_content.setText(str);
}
});
}
});
mBt_publish.setOnClickListener(this);
}
public void notifyDataSetChanged(List<String> imagePath) {
removePhotos();
addPhotos(imagePath);
}
private void removePhotos() {
mPhotoLine1.removeAllViews();
mPhotoLine2.removeAllViews();
mPhotoLine3.removeAllViews();
}
private void addPhotos(List<String> imagePath) {
Iterator<String> i = imagePath.iterator();
int count = 0;
while (i.hasNext()) {
String path = i.next();
final ImageLayout image = new ImageLayout(getActivity());
setImage(path, image);
image.setPadding(6, 0, 0, 0);
image.setOnImageHandlingListener(new ImageLayout.OnImageHandlingListener() {
@Override
public void onImageClicked() {
singleReplace(image.getImageUrl());
}
@Override
public void onReadyLogoClicked() {
startImageSelector();
}
@Override
public void onRemoveLogoClicked() {
removeImage(image.getImageUrl());
}
});
if (count < 3) {
mPhotoLine1.addView(image);
} else if (count < 6) {
mPhotoLine2.addView(image);
} else if (count < 9) {
mPhotoLine3.addView(image);
}
count++;
}
if (isVideo) {
if (imagePath.size() == 0) {
addTail(count);
}
} else {
addTail(count);
}
}
void addTail(int count) {
if (count != 9) {
ImageLayout image = new ImageLayout(getActivity());
image.setPadding(6, 0, 0, 0);
image.setOnImageHandlingListener(new ImageLayout.OnImageHandlingListener() {
@Override
public void onImageClicked() {
}
@Override
public void onReadyLogoClicked() {
startImageSelector();
}
@Override
public void onRemoveLogoClicked() {
}
});
// if (count == 0) {
// image.empty();
// }
if (count < 3) {
mPhotoLine1.addView(image);
} else if (count < 6) {
mPhotoLine2.addView(image);
} else if (count < 9) {
mPhotoLine3.addView(image);
}
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (isVideo) {
helper.onGetLocalVideoResult(data);
}
if (requestCode == MULTI_SELECTOR_REQUEST && resultCode == getActivity().RESULT_OK) {
mSelectPath.addAll(data.getStringArrayListExtra(MultiImageSelector.EXTRA_RESULT));
notifyDataSetChanged(mSelectPath);
} else if (requestCode == SINGLE_SELECTOR_REQUEST && resultCode == getActivity().RESULT_OK) {
mSelectPath.remove(mSingleIndex);
mSelectPath.add(mSingleIndex, data.
getStringArrayListExtra(MultiImageSelector.EXTRA_RESULT).get(0));
notifyDataSetChanged(mSelectPath);
}
}
public void removeImage(String path) {
path = path.replace("file:", "");
mSelectPath.remove(path);
notifyDataSetChanged(mSelectPath);
}
public void startImageSelector() {
if (isVideo) {
helper.chooseVideoFromLocal();
return;
}
mSelector.multi();
mSelector.count(9 - mSelectPath.size());
mSelector.start(this, MULTI_SELECTOR_REQUEST);
}
public void singleReplace(String path) {
if (isVideo) {
helper.chooseVideoFromLocal();
return;
}
path = path.replace("file:", "");
mSingleIndex = mSelectPath.indexOf(path);
mSelector.single();
mSelector.start(this, SINGLE_SELECTOR_REQUEST);
}
private void setImage(String path, ImageLayout image) {
if (path != null) {
File file = new File(path);
if (null != file) {
URI uri = file.toURI();
image.imageLoad(uri.toString());
}
}
}
private void compressAndUpload() {
Iterator<String> i = mSelectPath.iterator();
final UploadFile[] uploadFiles = new UploadFile[mSelectPath.size()];
int count = 0;
while (i.hasNext()) {
String path = i.next();
path = ImageUtils.compressImage(getActivity(), path, Constant.IMAGE_MEMORY_SIZE, false);
File file = new File(path);
UploadFile uploadFile = new UploadFile("file[" + count + "]", file);
uploadFiles[count] = uploadFile;
count++;
}
if (null != uploadFiles) {
if (uploadFiles.length != 0) {
if (uploadFiles[0].getFile().exists()) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
uploadImage(uploadFiles, mEditText.getText().toString());
}
});
}
}
} else {
progressDialog.dismiss();
mBt_publish.setEnabled(true);
}
}
void uploadVideo(String content, String coverUrl) {
UploadFile uploadFile = new UploadFile(System.currentTimeMillis() + ".mp4", videoFile);
UploadFile[] files = new UploadFile[]{uploadFile};
DynamicsManager.uploadImage((BaseActivity) getActivity(), files, "dynamic",
new HttpUiCallBack<List<UploadImageBean>>() {
@Override
public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) {
if (result.size() > 0) {
String videoUrl = result.get(0).getUrl();
postDynamics(content, coverUrl, videoUrl);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "视频上传失败");
mBt_publish.setEnabled(true);
}
});
}
private void uploadImage(UploadFile[] uploadFiles, final String content) {
DynamicsManager.uploadImage((BaseActivity) getActivity(), uploadFiles, "dynamic",
new HttpUiCallBack<List<UploadImageBean>>() {
@Override
public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) {
mImages = new StringBuilder();
Iterator<UploadImageBean> iterator = result.iterator();
int count = 0;
while (iterator.hasNext()) {
UploadImageBean bean = iterator.next();
if (0 != count) {
mImages.append(",");
}
mImages.append(bean.getUrl());
count++;
}
if (isVideo) {
uploadVideo(content, mImages.toString());
} else {
postDynamics(content, mImages.toString(), null);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "图片上传失败");
mBt_publish.setEnabled(true);
}
});
}
private void setImageUrl(String dynamicId, String imageUrl, String videoUrl) {
DynamicsManager.setImageUrl((BaseActivity) getActivity(), dynamicId, imageUrl, videoUrl, new HttpUiCallBack<ImageUploadBean>() {
@Override
public void onSuccess(BaseActivity activity, ImageUploadBean result, String message) {
progressDialog.dismiss();
MaleToast.showMessage(activity, "动态上传成功");
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
progressDialog.dismiss();
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
// MaleToast.showMessage(activity, "图片上传失败");
progressDialog.dismiss();
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
});
}
private void postDynamics(String content, final String images, final String videoUrl) {
DynamicsManager.postDynamics((BaseActivity) getActivity(), content, new HttpUiCallBack<DynamicPostBean>() {
@Override
public void onSuccess(BaseActivity activity, DynamicPostBean result, String message) {
if (null != images) {
setImageUrl(result.getDynamic_id(), images, videoUrl);
} else {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, "动态上传成功");
getActivity().setResult(getActivity().RESULT_OK);
getActivity().finish();
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, tip);
mBt_publish.setEnabled(true);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
if (progressDialog != null) {
progressDialog.dismiss();
}
MaleToast.showMessage(activity, "动态上传失败");
mBt_publish.setEnabled(true);
}
});
}
private final int MIN_DELAY_TIME = 8000; // 两次点击间隔不能少于10000ms
private long lastClickTime;
public boolean isFastClick() {
boolean flag = true;
long currentClickTime = System.currentTimeMillis();
if ((currentClickTime - lastClickTime) >= MIN_DELAY_TIME) {
flag = false;
}
lastClickTime = currentClickTime;
return flag;
}
@Override
public void onClick(View view) {
if (view == mBt_publish) {
String content = mEditText.getText().toString();
if (TextUtils.isEmpty(content)) {
MaleToast.showFailureMsg(getActivity(), "请输入文字内容");
return;
}
if (isVideo) {
// if (videoFile == null) {
// MaleToast.showFailureMsg(DynamicPostActivity.this, "请选择视频");
// return;
// }
if (videoFile != null) {
mBt_publish.setEnabled(false);
progressDialog = ProgressDialog.show(getActivity(), "正在发布", "请稍后...");
new Thread(new Runnable() {
@Override
public void run() {
compressAndUpload();
}
}).start();
return;
}
}
// if (mSelectPath.isEmpty()) {
// MaleToast.showFailureMsg(DynamicPostActivity.this, "请选择图片");
// return;
// }
String word = null;
if (!TextUtils.isEmpty(content)) {
word = mEditText.getText().toString();
}
if (!mSelectPath.isEmpty()) {
if (!isFastClick()) {
progressDialog = ProgressDialog.show(getActivity(), "正在发布", "请稍后...");
mBt_publish.setEnabled(false);
new Thread(new Runnable() {
@Override
public void run() {
compressAndUpload();
}
}).start();
}
} else {
if (null != word || TextUtils.isEmpty(word)) {
postDynamics(content, null, null);
// MaleToast.showMessage(DynamicPostActivity.this, "请选择图片");
} else {
MaleToast.showMessage(getActivity(), "请输入内容");
}
}
}
}
}

View File

@@ -0,0 +1,258 @@
package com.xuebiping.bolizhuzi.view.dynamics.fragment;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import com.fengliyan.base.base.AnyCallback;
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.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.dynamics.activity.DynamicPostActivity;
import com.xuebiping.bolizhuzi.view.dynamics.activity.DynamicPublishActivity;
import com.xuebiping.bolizhuzi.view.main.MainActivity;
import com.xuebiping.bolizhuzi.view.main.SearchActivity;
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;
import static android.app.Activity.RESULT_OK;
public class DynamicViewPager2Fragment extends Fragment implements View.OnClickListener {
private MagicIndicator mMagicIndicator;
private RelativeLayout mRl_home_search;
private ViewPager mDynamicViewPager;
private List<String> mDataList = new ArrayList<>();
private int mIndex = 1;
private MainViewPagerAdapter mViewPagerAdapter;
private List<Fragment> mDynamicFragments = new ArrayList<>();
private RecentDynamicFragment mRecent;
private FollowUsersDynamicFragment mFocusFragment;
private ImageView mAddFeedBtn;
private RelativeLayout mRl_wurao;
private TextView mTv_set_wurao;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_dynamic_view_pager2, container, false);
initView(v);
geDisturb();
return v;
}
@Override
public void onHiddenChanged(boolean hidden) {
if (!hidden) {
((BaseActivity) getActivity()).hideTitleBar();
}
}
private void initView(View v) {
mMagicIndicator = v.findViewById(R.id.magic_indicator);
mDynamicViewPager = v.findViewById(R.id.dynamic_view_pager);
mRl_home_search = v.findViewById(R.id.rl_home_search);
mAddFeedBtn = v.findViewById(R.id.addFeedBtn);
mRl_wurao = v.findViewById(R.id.rl_wurao);
mTv_set_wurao = v.findViewById(R.id.tv_set_wurao);
mRecent = new RecentDynamicFragment();
mFocusFragment = new FollowUsersDynamicFragment();
mDynamicFragments.add(mFocusFragment);
mDynamicFragments.add(mRecent);
mViewPagerAdapter = new MainViewPagerAdapter(getChildFragmentManager(),
mDynamicFragments);
mDynamicViewPager.setAdapter(mViewPagerAdapter);
initMagicIndicator();
mDynamicViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
mIndex = position;
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
mViewPagerAdapter.notifyDataSetChanged();
mDynamicViewPager.setCurrentItem(mIndex);
mAddFeedBtn.setOnClickListener(this);
mRl_home_search.setOnClickListener(this);
mTv_set_wurao.setOnClickListener(this);
}
private void initMagicIndicator() {
mDataList.clear();
mDataList.add("关注");
mDataList.add("动态");
CommonNavigator commonNavigator = new CommonNavigator(getActivity());
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) {
mDynamicViewPager.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, mDynamicViewPager);
}
public static int REQUEST_POST = 206;
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_POST && resultCode == RESULT_OK) {
clickRefresh();
}
}
public void clickRefresh() {
if (mIndex == 1) {
if (null != mRecent) {
mRecent.getDynamicList(1, 1);
}
} else {
mDynamicViewPager.setCurrentItem(1, false);
}
}
void chooseFeedType() {
// ChooseFeedTypeDialog dialog = new ChooseFeedTypeDialog(getActivity());
// dialog.setCallback(new AnyCallback<ChooseFeedTypeDialog.FeedType>() {
// @Override
// public void callback(ChooseFeedTypeDialog.FeedType feedType) {
// Intent intent = new Intent(getActivity(), DynamicPostActivity.class);
// intent.putExtra("isVideo", feedType == ChooseFeedTypeDialog.FeedType.Video);
// getActivity().startActivityForResult(intent, REQUEST_POST);
// }
// });
// dialog.show();
Intent intent = new Intent(getActivity(), DynamicPublishActivity.class);
startActivity(intent);
}
@Override
public void onClick(View view) {
if (view == mRl_home_search) {
Intent intent = new Intent(getActivity(), SearchActivity.class);
startActivity(intent);
} else if (view == mAddFeedBtn) {
chooseFeedType();
} else if (view == mTv_set_wurao) {
if (null != getActivity()) {
MainActivity mainActivity = (MainActivity) getActivity();
if (null != mainActivity) {
mainActivity.setMainGOSettingFragment();
}
}
}
}
public void geDisturb() {
SettingManager.getHomeUser((BaseActivity) getActivity(), new HttpUiCallBack<UserHomeBean>() {
@Override
public void onSuccess(BaseActivity activity, UserHomeBean result, String message) {
int do_not_disturb = result.getUserinfo().getDo_not_disturb();
if (do_not_disturb == 1) {
mRl_wurao.setVisibility(View.VISIBLE);
}else {
mRl_wurao.setVisibility(View.GONE);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
public void getDisturb2(int do_not_disturb) {
if (null != mRl_wurao) {
if (do_not_disturb == 1) {
mRl_wurao.setVisibility(View.VISIBLE);
}else {
mRl_wurao.setVisibility(View.GONE);
}
}
}
}

View File

@@ -3,6 +3,7 @@ package com.xuebiping.bolizhuzi.view.dynamics.fragment;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.os.Parcelable; import android.os.Parcelable;
import android.text.TextUtils;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
@@ -11,10 +12,14 @@ import android.widget.AbsListView;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.fengliyan.uikit.dialog.BottomGiftDialog;
import com.fengliyan.uikit.dialog.DialogGiftBean;
import com.fengliyan.uikit.dialog.GiftListBean;
import com.xuebiping.bolizhuzi.R; import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1; import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager; import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent; import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean; import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean; import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean;
import com.xuebiping.bolizhuzi.model.main.BannerBean; import com.xuebiping.bolizhuzi.model.main.BannerBean;
@@ -29,6 +34,7 @@ import com.xuebiping.bolizhuzi.view.main.ComplaintActivity;
import com.fengliyan.uikit.dialog.BottomSelectiveDialog; import com.fengliyan.uikit.dialog.BottomSelectiveDialog;
import com.fengliyan.uikit.refresh.LoadMoreListView; import com.fengliyan.uikit.refresh.LoadMoreListView;
import com.fengliyan.uikit.toast.MaleToast; import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -111,7 +117,8 @@ public class FollowUsersDynamicFragment extends Fragment {
mAdapter.setOnGiftSendListener(new DynamicsAdapter1.OnGiftSendListener() { mAdapter.setOnGiftSendListener(new DynamicsAdapter1.OnGiftSendListener() {
@Override @Override
public void onSend(DynamicsItemBean bean, int quantity) { public void onSend(DynamicsItemBean bean, int quantity) {
sendGift(bean.getId(), quantity, bean); // sendGift(bean.getId(), quantity, bean);
getGiftData(bean.getUser_id());
} }
}); });
@@ -180,6 +187,16 @@ public class FollowUsersDynamicFragment extends Fragment {
startActivity(intent); startActivity(intent);
} }
}); });
mAdapter.dynamicCommentCallback = new DynamicsAdapter1.DynamicCommentCallback() {
@Override
public void commentDynamic(DynamicsItemBean bean) {
Intent intent = new Intent(getActivity(), DynamicDetailActivity.class);
intent.putExtra("dynamic_id", bean.getId());
getActivity().startActivity(intent);
}
};
mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override @Override
public void onRefresh() { public void onRefresh() {
@@ -201,6 +218,48 @@ public class FollowUsersDynamicFragment extends Fragment {
} }
} }
private BottomGiftDialog mGiftDialog;
/**
* 礼物列表数据
*/
private void getGiftData(String user_id) {
MainManager.getGiftBeans((BaseActivity) getActivity(), new HttpUiCallBack<GiftListBean>() {
@Override
public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
mGiftDialog = new BottomGiftDialog(getActivity(),
R.style.SelectiveDialog);
mGiftDialog.setGiftListBean(result);
mGiftDialog.setOnGiftItemClickedListener(new BottomGiftDialog.OnGiftItemClickedListener() {
@Override
public void onGiftClicked(final DialogGiftBean bean) {
if (!TextUtils.isEmpty(user_id)) {
sendGift(Integer.parseInt(user_id), bean.getId());
}
}
@Override
public void onWalletClicked() {
Intent intent = new Intent(getActivity(), CaibeiRechargeActivity.class);
startActivity(intent);
}
});
mGiftDialog.show();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
void likeFeed(DynamicsItemBean bean) { void likeFeed(DynamicsItemBean bean) {
BaseActivity activity = (BaseActivity) getActivity(); BaseActivity activity = (BaseActivity) getActivity();
boolean isLikeParam = false; boolean isLikeParam = false;
@@ -270,9 +329,9 @@ public class FollowUsersDynamicFragment extends Fragment {
mImageList.addAll(result.getList()); mImageList.addAll(result.getList());
if (mImageList.size() != 0 && mImageList.size() % 10 != 0) { //显示尾布局 // if (mImageList.size() != 0 && mImageList.size() % 10 != 0) { //显示尾布局
mListView.onNoDataLoaded(); // mListView.onNoDataLoaded();
} // }
mAdapter.notifyDataSetChanged(); mAdapter.notifyDataSetChanged();
if (page == 1) { if (page == 1) {
mListView.setSelection(0); mListView.setSelection(0);
@@ -315,15 +374,22 @@ public class FollowUsersDynamicFragment extends Fragment {
}); });
} }
public void sendGift(String dynamicId, final int number, final DynamicsItemBean bean) { /**
DynamicsManager.sendGifts((BaseActivity) getActivity(), dynamicId, number, new HttpUiCallBack<Object>() { * 赠送礼物
*
* @param toUid
* @param giftId
*/
private void sendGift(int toUid, int giftId) {
MainManager.sendGift((BaseActivity) getActivity(), 1, toUid, giftId, 1, new HttpUiCallBack<GiftListBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, Object result, String message) { public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
MaleToast.showMessage(getActivity(), "礼物赠送成功"); if (null != mGiftDialog) {
if (null != mAdapter) { mGiftDialog.setCoin(result.getCoin() + "");
mAdapter.setGiftCount(number + bean.getReward_count(), bean.getId()); mGiftDialog.dismiss();
mAdapter.notifyDataSetChanged();
} }
MaleToast.showMessage(getActivity(), "赠送成功");
// mSvgaDialog.show(giftUrl);
} }
@Override @Override
@@ -333,11 +399,34 @@ public class FollowUsersDynamicFragment extends Fragment {
@Override @Override
public void onException(BaseActivity activity, Throwable e) { public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(getActivity(), "赠送失败,请重试"); MaleToast.showMessage(getActivity(), "赠送失败");
} }
}); });
} }
// public void sendGift(String dynamicId, final int number, final DynamicsItemBean bean) {
// DynamicsManager.sendGifts((BaseActivity) getActivity(), dynamicId, number, new HttpUiCallBack<Object>() {
// @Override
// public void onSuccess(BaseActivity activity, Object result, String message) {
// MaleToast.showMessage(getActivity(), "礼物赠送成功");
// if (null != mAdapter) {
// mAdapter.setGiftCount(number + bean.getReward_count(), bean.getId());
// mAdapter.notifyDataSetChanged();
// }
// }
//
// @Override
// public void onFailure(BaseActivity activity, String tip) {
// MaleToast.showMessage(getActivity(), tip);
// }
//
// @Override
// public void onException(BaseActivity activity, Throwable e) {
// MaleToast.showMessage(getActivity(), "赠送失败,请重试");
// }
// });
// }
private void focus(String userId) { private void focus(String userId) {
DynamicsManager.follow((BaseActivity) getActivity(), DynamicsManager.follow((BaseActivity) getActivity(),
userId, userId,

View File

@@ -3,6 +3,7 @@ package com.xuebiping.bolizhuzi.view.dynamics.fragment;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.os.Parcelable; import android.os.Parcelable;
import android.text.TextUtils;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
@@ -11,10 +12,14 @@ import android.widget.AbsListView;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.fengliyan.uikit.dialog.BottomGiftDialog;
import com.fengliyan.uikit.dialog.DialogGiftBean;
import com.fengliyan.uikit.dialog.GiftListBean;
import com.xuebiping.bolizhuzi.R; import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1; import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager; import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent; import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean; import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean; import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean;
import com.xuebiping.bolizhuzi.model.main.BannerBean; import com.xuebiping.bolizhuzi.model.main.BannerBean;
@@ -29,6 +34,7 @@ import com.xuebiping.bolizhuzi.view.main.ComplaintActivity;
import com.fengliyan.uikit.dialog.BottomSelectiveDialog; import com.fengliyan.uikit.dialog.BottomSelectiveDialog;
import com.fengliyan.uikit.refresh.LoadMoreListView; import com.fengliyan.uikit.refresh.LoadMoreListView;
import com.fengliyan.uikit.toast.MaleToast; import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -124,7 +130,9 @@ public class RecentDynamicFragment extends Fragment {
mAdapter.setOnGiftSendListener(new DynamicsAdapter1.OnGiftSendListener() { mAdapter.setOnGiftSendListener(new DynamicsAdapter1.OnGiftSendListener() {
@Override @Override
public void onSend(DynamicsItemBean bean, int quantity) { public void onSend(DynamicsItemBean bean, int quantity) {
sendGift(bean.getId(), quantity, bean); // sendGift(bean.getId(), quantity, bean);
getGiftData(bean.getUser_id());
} }
}); });
@@ -178,18 +186,27 @@ public class RecentDynamicFragment extends Fragment {
@Override @Override
public void onDetailClicked(int position, String id) { public void onDetailClicked(int position, String id) {
detailPosition = position; detailPosition = position;
/*Intent intent = new Intent(getContext(), DynamicDetailActivity.class); Intent intent = new Intent(getContext(), DynamicDetailActivity.class);
intent.putExtra("dynamic_id", id); intent.putExtra("dynamic_id", id);
intent.putExtra("dynamic_from", 0); intent.putExtra("dynamic_from", 0);
startActivity(intent);*/
DynamicsItemBean itemBean = mAdapter.getmDynamicsItemList().get(position);
Intent intent = new Intent(getContext(), DynamicDetailTwoActivity.class);
intent.putExtra("bean", (Parcelable) itemBean);
startActivity(intent); startActivity(intent);
// DynamicsItemBean itemBean = mAdapter.getmDynamicsItemList().get(position);
// Intent intent = new Intent(getContext(), DynamicDetailTwoActivity.class);
// intent.putExtra("bean", itemBean);
// startActivity(intent);
} }
}); });
mAdapter.dynamicCommentCallback = new DynamicsAdapter1.DynamicCommentCallback() {
@Override
public void commentDynamic(DynamicsItemBean bean) {
Intent intent = new Intent(getActivity(), DynamicDetailActivity.class);
intent.putExtra("dynamic_id", bean.getId());
getActivity().startActivity(intent);
}
};
mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override @Override
public void onRefresh() { public void onRefresh() {
@@ -211,6 +228,48 @@ public class RecentDynamicFragment extends Fragment {
} }
} }
private BottomGiftDialog mGiftDialog;
/**
* 礼物列表数据
*/
private void getGiftData(String user_id) {
MainManager.getGiftBeans((BaseActivity) getActivity(), new HttpUiCallBack<GiftListBean>() {
@Override
public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
mGiftDialog = new BottomGiftDialog(getActivity(),
R.style.SelectiveDialog);
mGiftDialog.setGiftListBean(result);
mGiftDialog.setOnGiftItemClickedListener(new BottomGiftDialog.OnGiftItemClickedListener() {
@Override
public void onGiftClicked(final DialogGiftBean bean) {
if (!TextUtils.isEmpty(user_id)) {
sendGift(Integer.parseInt(user_id), bean.getId());
}
}
@Override
public void onWalletClicked() {
Intent intent = new Intent(getActivity(), CaibeiRechargeActivity.class);
startActivity(intent);
}
});
mGiftDialog.show();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
void likeFeed(DynamicsItemBean bean) { void likeFeed(DynamicsItemBean bean) {
BaseActivity activity = (BaseActivity) getActivity(); BaseActivity activity = (BaseActivity) getActivity();
boolean isLikeParam = false; boolean isLikeParam = false;
@@ -327,16 +386,22 @@ public class RecentDynamicFragment extends Fragment {
}); });
} }
public void sendGift(String dynamicId, final int number, final DynamicsItemBean bean) { /**
DynamicsManager.sendGifts((BaseActivity) getActivity(), dynamicId, number, new HttpUiCallBack<Object>() { * 赠送礼物
*
* @param toUid
* @param giftId
*/
private void sendGift(int toUid, int giftId) {
MainManager.sendGift((BaseActivity) getActivity(), 1, toUid, giftId, 1, new HttpUiCallBack<GiftListBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, Object result, String message) { public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
MaleToast.showMessage(getActivity(), "礼物赠送成功"); if (null != mGiftDialog) {
if (null != mAdapter) { mGiftDialog.setCoin(result.getCoin() + "");
mAdapter.setGiftCount(number + bean.getReward_count(), bean.getId()); mGiftDialog.dismiss();
mAdapter.notifyDataSetChanged();
} }
MaleToast.showMessage(getActivity(), "赠送成功");
// mSvgaDialog.show(giftUrl);
} }
@Override @Override
@@ -346,11 +411,35 @@ public class RecentDynamicFragment extends Fragment {
@Override @Override
public void onException(BaseActivity activity, Throwable e) { public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(getActivity(), "赠送失败,请重试"); MaleToast.showMessage(getActivity(), "赠送失败");
} }
}); });
} }
// public void sendGift(String dynamicId, final int number, final DynamicsItemBean bean) {
// DynamicsManager.sendGifts((BaseActivity) getActivity(), dynamicId, number, new HttpUiCallBack<Object>() {
// @Override
// public void onSuccess(BaseActivity activity, Object result, String message) {
// MaleToast.showMessage(getActivity(), "礼物赠送成功");
// if (null != mAdapter) {
// mAdapter.setGiftCount(number + bean.getReward_count(), bean.getId());
// mAdapter.notifyDataSetChanged();
// }
//
// }
//
// @Override
// public void onFailure(BaseActivity activity, String tip) {
// MaleToast.showMessage(getActivity(), tip);
// }
//
// @Override
// public void onException(BaseActivity activity, Throwable e) {
// MaleToast.showMessage(getActivity(), "赠送失败,请重试");
// }
// });
// }
private void focus(String userId) { private void focus(String userId) {
DynamicsManager.follow((BaseActivity) getActivity(), DynamicsManager.follow((BaseActivity) getActivity(),
userId, userId,

View File

@@ -308,9 +308,9 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener,
} }
} else if (view == tv_login_sms) { } else if (view == tv_login_sms) {
loginType = 0; loginType = 0;
tv_login_pw.setBackgroundResource(0); // tv_login_pw.setBackgroundResource(0);
tv_login_pw.setTextColor(ContextCompat.getColor(this, R.color.three_text)); tv_login_pw.setTextColor(ContextCompat.getColor(this, R.color.three_text));
tv_login_sms.setBackgroundResource(R.drawable.white_bg_40); // tv_login_sms.setBackgroundResource(R.drawable.white_bg_40);
tv_login_sms.setTextColor(ContextCompat.getColor(this, R.color.one_text)); tv_login_sms.setTextColor(ContextCompat.getColor(this, R.color.one_text));
tv_login_sms_line.setVisibility(View.VISIBLE); tv_login_sms_line.setVisibility(View.VISIBLE);
tv_login_pw_line.setVisibility(View.INVISIBLE); tv_login_pw_line.setVisibility(View.INVISIBLE);
@@ -319,9 +319,9 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener,
initLoginBtnEnabled(); initLoginBtnEnabled();
} else if (view == tv_login_pw) { } else if (view == tv_login_pw) {
loginType = 1; loginType = 1;
tv_login_sms.setBackgroundResource(0); // tv_login_sms.setBackgroundResource(0);
tv_login_sms.setTextColor(ContextCompat.getColor(this, R.color.three_text)); tv_login_sms.setTextColor(ContextCompat.getColor(this, R.color.three_text));
tv_login_pw.setBackgroundResource(R.drawable.white_bg_40); // tv_login_pw.setBackgroundResource(R.drawable.white_bg_40);
tv_login_pw.setTextColor(ContextCompat.getColor(this, R.color.one_text)); tv_login_pw.setTextColor(ContextCompat.getColor(this, R.color.one_text));
tv_login_sms_line.setVisibility(View.INVISIBLE); tv_login_sms_line.setVisibility(View.INVISIBLE);
tv_login_pw_line.setVisibility(View.VISIBLE); tv_login_pw_line.setVisibility(View.VISIBLE);

View File

@@ -1784,22 +1784,25 @@ public class AgoraWithFUVideoActivity extends BaseActivity implements View.OnCli
*/ */
private void toVideoFinish() { private void toVideoFinish() {
//3期 男用户通话结束页面修改 //3期 男用户通话结束页面修改
if (UserManager.getUserInfo().getGender() == 2) { // if (UserManager.getUserInfo().getGender() == 2) {
Intent intent = new Intent(AgoraWithFUVideoActivity.this, ManVideoFinishActivity.class); // Intent intent = new Intent(AgoraWithFUVideoActivity.this, ManVideoFinishActivity.class);
// intent.putExtra("roomId", mRoomId);
// intent.putExtra("nickName", mNickName);
// intent.putExtra("avatar", mAvatar);
// intent.putExtra("uid", mToUid);
// intent.putExtra("callType", callType);
// intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// startActivity(intent);
// } else {
// Intent intent = new Intent(AgoraWithFUVideoActivity.this, VideoFinishActivity.class);
// intent.putExtra("roomId", mRoomId);
// intent.putExtra("isCaller", false);
// intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// startActivity(intent);
// }
Intent intent = new Intent(AgoraWithFUVideoActivity.this, VideoFinish2Activity.class);
intent.putExtra("roomId", mRoomId); intent.putExtra("roomId", mRoomId);
intent.putExtra("nickName", mNickName);
intent.putExtra("avatar", mAvatar);
intent.putExtra("uid", mToUid);
intent.putExtra("callType", callType);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent); startActivity(intent);
} else {
Intent intent = new Intent(AgoraWithFUVideoActivity.this, VideoFinishActivity.class);
intent.putExtra("roomId", mRoomId);
intent.putExtra("isCaller", false);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
finishActivity(); finishActivity();
} }

View File

@@ -0,0 +1,89 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.widget.TextView;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.GiftReceived2Adapter;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.GiftReceivedBean;
import com.xuebiping.bolizhuzi.model.main.GiftReceivedItemBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class GiftReceived2Activity extends BaseActivity {
private TextView mTotalTextView;
private RecyclerView mRv_recommend_list;
private GiftReceived2Adapter mAdapter;
private List<GiftReceivedItemBean> mData = new ArrayList<>();
private int mUserId;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gift_received2);
setTitleName("收到的礼物");
mUserId = getIntent().getIntExtra("userId", 0);
initView();
getReceivedGifts();
}
private void initView() {
mTotalTextView = findViewById(R.id.gift_received_header_info);
mRv_recommend_list = findViewById(R.id.rv_recommend_list);
mRv_recommend_list.setLayoutManager(new GridLayoutManager(this, 5));
mAdapter = new GiftReceived2Adapter(R.layout.item_gift_received2, this);
mRv_recommend_list.setAdapter(mAdapter);
}
public void getReceivedGifts(){
MainManager.receivedGiftList(this, mUserId, new HttpUiCallBack<GiftReceivedBean>() {
@Override
public void onSuccess(BaseActivity activity, GiftReceivedBean result, String message) {
if (result.getList() != null) {
mData.clear();
List<GiftReceivedItemBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
Iterator<GiftReceivedItemBean> iterator = result.getList().iterator();
int total = 0;
while (iterator.hasNext()){
GiftReceivedItemBean bean = iterator.next();
total += Integer.parseInt(bean.getTotal());
}
mTotalTextView.setText(total + "");
}
if (mData != null && mData.size() > 0) {
mAdapter.setList(mData);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
}

View File

@@ -0,0 +1,135 @@
package com.xuebiping.bolizhuzi.view.main;
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.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;
import java.util.ArrayList;
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 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

@@ -44,6 +44,16 @@ import com.bumptech.glide.Glide;
import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.transition.Transition; import com.bumptech.glide.request.transition.Transition;
import com.facebook.drawee.view.SimpleDraweeView; import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.device.DeviceManager;
import com.fengliyan.http.httprequest.HttpCallback;
import com.fengliyan.location.LocationManager;
import com.fengliyan.messaging.ChatManager;
import com.fengliyan.messaging.CustomAttachment;
import com.fengliyan.messaging.GiftAttachment;
import com.fengliyan.storage.StorageManager;
import com.fengliyan.uikit.bottomtab.BottomTab;
import com.fengliyan.uikit.dialog.BaseMessageDialog;
import com.fengliyan.uikit.toast.MaleToast;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.internal.LinkedTreeMap; import com.google.gson.internal.LinkedTreeMap;
import com.hjq.permissions.OnPermissionCallback; import com.hjq.permissions.OnPermissionCallback;
@@ -51,12 +61,23 @@ import com.hjq.permissions.XXPermissions;
import com.huawei.agconnect.config.AGConnectServicesConfig; import com.huawei.agconnect.config.AGConnectServicesConfig;
import com.huawei.hms.aaid.HmsInstanceId; import com.huawei.hms.aaid.HmsInstanceId;
import com.huawei.hms.common.ApiException; import com.huawei.hms.common.ApiException;
import com.fengliyan.device.DeviceManager; import com.netease.nimlib.sdk.NIMClient;
import com.fengliyan.http.httprequest.HttpCallback; import com.netease.nimlib.sdk.RequestCallback;
import com.fengliyan.location.LocationManager; import com.netease.nimlib.sdk.RequestCallbackWrapper;
import com.fengliyan.messaging.ChatManager; import com.netease.nimlib.sdk.auth.AuthService;
import com.fengliyan.messaging.CustomAttachment; import com.netease.nimlib.sdk.msg.MsgService;
import com.fengliyan.messaging.GiftAttachment; import com.netease.nimlib.sdk.msg.MsgServiceObserve;
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
import com.netease.nimlib.sdk.msg.model.IMMessage;
import com.netease.nimlib.sdk.msg.model.RecentContact;
import com.netease.nimlib.sdk.uinfo.UserService;
import com.netease.nimlib.sdk.uinfo.model.NimUserInfo;
import com.snail.antifake.deviceid.emulator.EmuCheckUtil;
import com.snail.antifake.jni.EmulatorDetectUtil;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.xinlingwu.share.ShareManager;
import com.xuebiping.bolizhuzi.R; import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.agora.utils.ToastUtil; import com.xuebiping.bolizhuzi.agora.utils.ToastUtil;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser; import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
@@ -70,6 +91,7 @@ import com.xuebiping.bolizhuzi.controller.eventBus.TurntableEvent;
import com.xuebiping.bolizhuzi.controller.eventBus.UnReadCountEvent; import com.xuebiping.bolizhuzi.controller.eventBus.UnReadCountEvent;
import com.xuebiping.bolizhuzi.controller.main.manager.GlobalManager; import com.xuebiping.bolizhuzi.controller.main.manager.GlobalManager;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager; import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager; import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit; import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit;
import com.xuebiping.bolizhuzi.im.uikit.business.session.activity.P2PMessageActivity; import com.xuebiping.bolizhuzi.im.uikit.business.session.activity.P2PMessageActivity;
@@ -85,9 +107,11 @@ import com.xuebiping.bolizhuzi.model.main.DialogAdBean;
import com.xuebiping.bolizhuzi.model.main.FreeVideoBean; import com.xuebiping.bolizhuzi.model.main.FreeVideoBean;
import com.xuebiping.bolizhuzi.model.main.GlobalConfigBean; import com.xuebiping.bolizhuzi.model.main.GlobalConfigBean;
import com.xuebiping.bolizhuzi.model.main.IsKidModelBean; import com.xuebiping.bolizhuzi.model.main.IsKidModelBean;
import com.xuebiping.bolizhuzi.model.main.MainPageAnchorBean;
import com.xuebiping.bolizhuzi.model.main.SpeedInfoBean; import com.xuebiping.bolizhuzi.model.main.SpeedInfoBean;
import com.xuebiping.bolizhuzi.model.main.SystemVersionBean; import com.xuebiping.bolizhuzi.model.main.SystemVersionBean;
import com.xuebiping.bolizhuzi.model.main.VideoRequestBean; import com.xuebiping.bolizhuzi.model.main.VideoRequestBean;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
import com.xuebiping.bolizhuzi.model.user.bean.BaseUserInfo; import com.xuebiping.bolizhuzi.model.user.bean.BaseUserInfo;
import com.xuebiping.bolizhuzi.utils.CitySPUtils; import com.xuebiping.bolizhuzi.utils.CitySPUtils;
import com.xuebiping.bolizhuzi.utils.DemoHelper; import com.xuebiping.bolizhuzi.utils.DemoHelper;
@@ -108,12 +132,13 @@ import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.view.AttentionDialog; import com.xuebiping.bolizhuzi.view.base.utils.view.AttentionDialog;
import com.xuebiping.bolizhuzi.view.base.utils.view.KidDialog; import com.xuebiping.bolizhuzi.view.base.utils.view.KidDialog;
import com.xuebiping.bolizhuzi.view.base.utils.view.KidOpenDialog; import com.xuebiping.bolizhuzi.view.base.utils.view.KidOpenDialog;
import com.xuebiping.bolizhuzi.view.dynamics.fragment.DynamicViewPagerFragment; import com.xuebiping.bolizhuzi.view.dynamics.fragment.DynamicViewPager2Fragment;
import com.xuebiping.bolizhuzi.view.login.LoginActivity; import com.xuebiping.bolizhuzi.view.login.LoginActivity;
import com.xuebiping.bolizhuzi.view.login.utils.LoginUtils; import com.xuebiping.bolizhuzi.view.login.utils.LoginUtils;
import com.xuebiping.bolizhuzi.view.luck.LuckFragment; import com.xuebiping.bolizhuzi.view.luck.LuckFragment;
import com.xuebiping.bolizhuzi.view.main.dialog.CustomAlertDialog; import com.xuebiping.bolizhuzi.view.main.dialog.CustomAlertDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.FreeVideoDialog; import com.xuebiping.bolizhuzi.view.main.dialog.FreeVideoDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.OpenDisturbDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.PermissionDialog; import com.xuebiping.bolizhuzi.view.main.dialog.PermissionDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.UpdateDialog; import com.xuebiping.bolizhuzi.view.main.dialog.UpdateDialog;
import com.xuebiping.bolizhuzi.view.main.receiver.NotificationClickReceiver; import com.xuebiping.bolizhuzi.view.main.receiver.NotificationClickReceiver;
@@ -123,30 +148,9 @@ import com.xuebiping.bolizhuzi.view.news.fragment.MainMessageFragment;
import com.xuebiping.bolizhuzi.view.news.im.DemoCache; import com.xuebiping.bolizhuzi.view.news.im.DemoCache;
import com.xuebiping.bolizhuzi.view.settings.BindPhoneConfirmActivity; import com.xuebiping.bolizhuzi.view.settings.BindPhoneConfirmActivity;
import com.xuebiping.bolizhuzi.view.settings.QuickRechargeActivity; import com.xuebiping.bolizhuzi.view.settings.QuickRechargeActivity;
import com.xuebiping.bolizhuzi.view.settings.SettingFragment; import com.xuebiping.bolizhuzi.view.settings.SettingFragment2;
import com.xuebiping.bolizhuzi.view.settings.dialog.GirlAuthDialog; import com.xuebiping.bolizhuzi.view.settings.dialog.GirlAuthDialog;
import com.xuebiping.bolizhuzi.view.settings.dialog.SpeedCallDialog; import com.xuebiping.bolizhuzi.view.settings.dialog.SpeedCallDialog;
import com.fengliyan.storage.StorageManager;
import com.fengliyan.uikit.bottomtab.BottomTab;
import com.fengliyan.uikit.dialog.BaseMessageDialog;
import com.fengliyan.uikit.toast.MaleToast;
import com.netease.nimlib.sdk.NIMClient;
import com.netease.nimlib.sdk.RequestCallback;
import com.netease.nimlib.sdk.RequestCallbackWrapper;
import com.netease.nimlib.sdk.auth.AuthService;
import com.netease.nimlib.sdk.msg.MsgService;
import com.netease.nimlib.sdk.msg.MsgServiceObserve;
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
import com.netease.nimlib.sdk.msg.model.IMMessage;
import com.netease.nimlib.sdk.msg.model.RecentContact;
import com.netease.nimlib.sdk.uinfo.UserService;
import com.netease.nimlib.sdk.uinfo.model.NimUserInfo;
import com.snail.antifake.deviceid.emulator.EmuCheckUtil;
import com.snail.antifake.jni.EmulatorDetectUtil;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.xinlingwu.share.ShareManager;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
@@ -167,10 +171,10 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
private long mExitTime; private long mExitTime;
private LuckFragment luckFragment; private LuckFragment luckFragment;
private SwipeCardFragment swipeCardFragment; private SwipeCardFragment swipeCardFragment;
private DynamicViewPagerFragment mDynamicViewPagerFragment; private DynamicViewPager2Fragment mDynamicViewPagerFragment;
private MainRecommendFragment mMainRecommendFragment; private MainRecommend2Fragment mMainRecommendFragment;
private MainMessageFragment mMainMessageFragment; private MainMessageFragment mMainMessageFragment;
private SettingFragment mSettingFragment; private SettingFragment2 mSettingFragment;
private Disposable mDisposable; private Disposable mDisposable;
private boolean isLoginViewShowed; private boolean isLoginViewShowed;
private UpdateDialog mUpdateDialog; private UpdateDialog mUpdateDialog;
@@ -280,27 +284,27 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
} }
} }
@Override // @Override
protected void onNewIntent(Intent intent) { // protected void onNewIntent(Intent intent) {
super.onNewIntent(intent); // super.onNewIntent(intent);
boolean isFormTask = intent.getBooleanExtra("isFormTask", false); // boolean isFormTask = intent.getBooleanExtra("isFormTask", false);
boolean isMain = intent.getBooleanExtra("isMain", false); // boolean isMain = intent.getBooleanExtra("isMain", false);
if (isFormTask) { // if (isFormTask) {
mBottomTab.change(1); // mBottomTab.change(1);
} // }
if (isMain) { // if (isMain) {
int marketStatus = NoClearSPUtils.getInt(this, Constans.MARKET_STATUS, 0); // int marketStatus = NoClearSPUtils.getInt(this, Constans.MARKET_STATUS, 0);
if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) { // if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) {
mBottomTab.change(0); // mBottomTab.change(0);
} else { // } else {
if (UserManager.getUserInfo().isWomen()) { // if (UserManager.getUserInfo().isWomen()) {
mBottomTab.change(0); // mBottomTab.change(0);
} else { // } else {
mBottomTab.change(2); // mBottomTab.change(2);
} // }
} // }
} // }
} // }
/** /**
* 调起使用这个会弹出hms 下载框 * 调起使用这个会弹出hms 下载框
@@ -433,7 +437,7 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
queryCities(); queryCities();
getGlobalConfig(); getGlobalConfig();
activeUpdate(); activeUpdate();
getKidModel(0); // getKidModel(0);
int unreadNum = NIMClient.getService(MsgService.class).getTotalUnreadCount(); int unreadNum = NIMClient.getService(MsgService.class).getTotalUnreadCount();
//消息tab显示最近未读联系人头像 //消息tab显示最近未读联系人头像
@@ -483,6 +487,8 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
NIMClient.getService(MsgServiceObserve.class).observeReceiveMessage(incomingMessageObserver, true); NIMClient.getService(MsgServiceObserve.class).observeReceiveMessage(incomingMessageObserver, true);
// freeAnchor(); // freeAnchor();
geMainDisturb();
} }
com.netease.nimlib.sdk.Observer<List<IMMessage>> incomingMessageObserver = new com.netease.nimlib.sdk.Observer<List<IMMessage>>() { com.netease.nimlib.sdk.Observer<List<IMMessage>> incomingMessageObserver = new com.netease.nimlib.sdk.Observer<List<IMMessage>>() {
@@ -870,15 +876,15 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
mBottomTab.setOnTabClickListener(new BottomTab.TabClickListener() { mBottomTab.setOnTabClickListener(new BottomTab.TabClickListener() {
@Override @Override
public void onClick(int position, int currentPosition) { public void onClick(int position, int currentPosition) {
if ((UserManager.getUserInfo().getIs_anchor() != 1 || UserManager.getUserInfo().getIs_face_status() != 1) && UserManager.getUserInfo().isWomen()) { // if ((UserManager.getUserInfo().getIs_anchor() != 1 || UserManager.getUserInfo().getIs_face_status() != 1) && UserManager.getUserInfo().isWomen()) {
new GirlAuthDialog(MainActivity.this).show(); // new GirlAuthDialog(MainActivity.this).show();
} // }
if (position == currentPosition) { //第二次点击 if (position == currentPosition) { //第二次点击
if (position == 0) { if (position == 0) {
if (isOne) { if (isOne) {
if (null != mMainRecommendFragment) { // if (null != mMainRecommendFragment) {
mMainRecommendFragment.clickRefresh(); // mMainRecommendFragment.clickRefresh();
} // }
} }
isOne = true; isOne = true;
} else if (position == 1) { } else if (position == 1) {
@@ -888,9 +894,9 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
} }
} else if (position == 0) { //重新点击回来,检测版本更新 } else if (position == 0) { //重新点击回来,检测版本更新
checkUpdate(); checkUpdate();
if (null != mMainRecommendFragment) { // if (null != mMainRecommendFragment) {
mMainRecommendFragment.RefreshFragment(); // mMainRecommendFragment.RefreshFragment();
} // }
} else if (position == 3) { } else if (position == 3) {
// MaleToast.showMessage(MainActivity.this,"点击了消息"); // MaleToast.showMessage(MainActivity.this,"点击了消息");
getGreet(); getGreet();
@@ -1057,36 +1063,37 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
} }
} }
if (mDynamicViewPagerFragment == null) { if (mDynamicViewPagerFragment == null) {
mDynamicViewPagerFragment = new DynamicViewPagerFragment(); mDynamicViewPagerFragment = new DynamicViewPager2Fragment();
} }
if (mMainRecommendFragment == null) { if (mMainRecommendFragment == null) {
mMainRecommendFragment = new MainRecommendFragment(); mMainRecommendFragment = new MainRecommend2Fragment();
} }
if (mMainMessageFragment == null) { if (mMainMessageFragment == null) {
mMainMessageFragment = new MainMessageFragment(); mMainMessageFragment = new MainMessageFragment();
} }
if (mSettingFragment == null) { if (mSettingFragment == null) {
mSettingFragment = new SettingFragment(); mSettingFragment = new SettingFragment2();
} }
mBottomTab.addTab(mMainRecommendFragment);
mBottomTab.addTab(mDynamicViewPagerFragment);
if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) { if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) {
mBottomTab.addTab(swipeCardFragment); mBottomTab.addTab(swipeCardFragment);
} else { } else {
mBottomTab.addTab(luckFragment); mBottomTab.addTab(luckFragment);
} }
mBottomTab.addTab(mDynamicViewPagerFragment);
mBottomTab.addTab(mMainRecommendFragment);
mBottomTab.addTab(mMainMessageFragment); mBottomTab.addTab(mMainMessageFragment);
mBottomTab.addTab(mSettingFragment); mBottomTab.addTab(mSettingFragment);
if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) {
mBottomTab.change(0); mBottomTab.change(0);
} else { // if (marketStatus == 0 || SPUtils.getInt(this, ConsUser.TYPE) == 2) {
if (UserManager.getUserInfo().isWomen()) { // mBottomTab.change(0);
mBottomTab.change(0); // } else {
} else { // if (UserManager.getUserInfo().isWomen()) {
mBottomTab.change(2); // mBottomTab.change(0);
} // } else {
} // mBottomTab.change(2);
// }
// }
} }
// //
// @Override // @Override
@@ -1151,7 +1158,7 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
finish(); finish();
} else if (REQUEST_FINISH == requestCode && RESULT_LOGIN == resultCode) { } else if (REQUEST_FINISH == requestCode && RESULT_LOGIN == resultCode) {
handleLoginInfo(null); handleLoginInfo(null);
} else if (SettingFragment.SETTING_SOCIAL_CHANGE_RESULT == resultCode && SettingFragment.SETTING_SOCIAL_REQUEST == requestCode) { } else if (SettingFragment2.SETTING_SOCIAL_CHANGE_RESULT == resultCode && SettingFragment2.SETTING_SOCIAL_REQUEST == requestCode) {
mSettingFragment.getUserInfo(); mSettingFragment.getUserInfo();
} }
// else if (requestCode == 10010 && resultCode == RESULT_OK) { // else if (requestCode == 10010 && resultCode == RESULT_OK) {
@@ -1756,6 +1763,64 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
}); });
} }
private OpenDisturbDialog mOpenDisturbDialog;
public void geMainDisturb() {
SettingManager.getHomeUser(this, new HttpUiCallBack<UserHomeBean>() {
@Override
public void onSuccess(BaseActivity activity, UserHomeBean result, String message) {
int do_not_disturb = result.getUserinfo().getDo_not_disturb();
if (do_not_disturb == 1) {
if (mOpenDisturbDialog != null) {
mOpenDisturbDialog.dismiss();
mOpenDisturbDialog = null;
}
mOpenDisturbDialog = new OpenDisturbDialog(MainActivity.this, R.style.SelectiveDialog);
mOpenDisturbDialog.setOnFinishDisturbListener(new OpenDisturbDialog.OnFinishDisturbListener() {
@Override
public void onFinishDisturb() {
changeVideoStatus2();
}
});
mOpenDisturbDialog.show();
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
private void changeVideoStatus2() {
MainManager.changeVideoStatus2(this, 0, new HttpUiCallBack<MainPageAnchorBean>() {
@Override
public void onSuccess(BaseActivity activity, MainPageAnchorBean result, String message) {
MaleToast.showMessage(activity, "勿扰模式关闭成功");
mOpenDisturbDialog.dismiss();
getMainDisturb(0);
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
@Override @Override
public void onIdsValid(String ids) { public void onIdsValid(String ids) {
try { try {
@@ -1766,6 +1831,22 @@ public class MainActivity extends BaseActivity implements DemoHelper.AppIdsUpdat
} }
} }
public void getMainDisturb(int do_not_disturb) {
if (null != mMainRecommendFragment) {
mMainRecommendFragment.getDisturb2(do_not_disturb);
}
if (null != mDynamicViewPagerFragment) {
mDynamicViewPagerFragment.getDisturb2(do_not_disturb);
}
}
public void setMainGOSettingFragment() {
if (null != mBottomTab) {
mBottomTab.change(4);
}
}
// 速配相关 // 速配相关
@Override @Override
public void onMessageListener(int code, String method, String data, String message) { public void onMessageListener(int code, String method, String data, String message) {

View File

@@ -2,21 +2,29 @@ package com.xuebiping.bolizhuzi.view.main;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils;
import android.view.View; import android.view.View;
import android.widget.AbsListView; import android.widget.AbsListView;
import com.xuebiping.bolizhuzi.R; import com.fengliyan.uikit.dialog.BottomGiftDialog;
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicEvent;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.view.HangUpDialog;
import com.fengliyan.uikit.dialog.BottomSelectiveDialog; import com.fengliyan.uikit.dialog.BottomSelectiveDialog;
import com.fengliyan.uikit.dialog.DialogGiftBean;
import com.fengliyan.uikit.dialog.GiftListBean;
import com.fengliyan.uikit.refresh.LoadMoreListView; import com.fengliyan.uikit.refresh.LoadMoreListView;
import com.fengliyan.uikit.toast.MaleToast; import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.dynamics.adapter.DynamicsAdapter1;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicEvent;
import com.xuebiping.bolizhuzi.controller.eventBus.DynamicLikeEvent;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsItemBean;
import com.xuebiping.bolizhuzi.model.dynamics.DynamicsListBean;
import com.xuebiping.bolizhuzi.model.main.FollowResultBean;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.dynamics.activity.DynamicDetailActivity;
import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -34,15 +42,17 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
private List<DynamicsItemBean> mImageList = new ArrayList<>(); private List<DynamicsItemBean> mImageList = new ArrayList<>();
private int mPage = 1; private int mPage = 1;
private boolean mPageLoad; private boolean mPageLoad;
private DynamicsAdapter mAdapter; private DynamicsAdapter1 mAdapter;
private int mUserId; private int mUserId;
private String mNickName; private String mNickName;
private BottomSelectiveDialog mSelectiveDialog; private BottomSelectiveDialog mSelectiveDialog;
private BottomSelectiveDialog mDeleteBottomDialog; private BottomSelectiveDialog mDeleteBottomDialog;
private int detailPosition;
@Override @Override
public void onCreate(Bundle onSavedInstance) { public void onCreate(Bundle onSavedInstance) {
super.onCreate(onSavedInstance); super.onCreate(onSavedInstance);
EventBus.getDefault().register(this);
setContentView(R.layout.fragment_dynamics); setContentView(R.layout.fragment_dynamics);
mUserId = getIntent().getIntExtra("userId", 0); mUserId = getIntent().getIntExtra("userId", 0);
mNickName = getIntent().getStringExtra("nickName"); mNickName = getIntent().getStringExtra("nickName");
@@ -53,7 +63,7 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
private void initView() { private void initView() {
mListView = findViewById(R.id.dynamics_list); mListView = findViewById(R.id.dynamics_list);
mAdapter = new DynamicsAdapter(this); mAdapter = new DynamicsAdapter1(this);
mAdapter.setList(mImageList); mAdapter.setList(mImageList);
mListView.setAdapter(mAdapter); mListView.setAdapter(mAdapter);
// mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { // mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@@ -89,23 +99,42 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
} }
}); });
mAdapter.setOnThumbupClickedListener(new DynamicsAdapter.OnThumbupClickedListener() { mAdapter.likeDynamicCallback = new DynamicsAdapter1.DynamicLikeCallback() {
@Override
public void likeDynamic(DynamicsItemBean bean) {
likeFeed(bean);
}
};
mAdapter.setOnThumbupClickedListener(new DynamicsAdapter1.OnThumbupClickedListener() {
@Override @Override
public void onClick(View v, String uid) { public void onClick(View v, String uid) {
thumbup(uid); thumbup(uid);
} }
}); });
mAdapter.setOnGiftSendListener(new DynamicsAdapter.OnGiftSendListener() {
mAdapter.setOnGiftSendListener(new DynamicsAdapter1.OnGiftSendListener() {
@Override @Override
public void onSend(DynamicsItemBean bean, int quantity) { public void onSend(DynamicsItemBean bean, int quantity) {
sendGift(bean.getId(), quantity, bean); // sendGift(bean.getId(), quantity, bean);
getGiftData(bean.getUser_id());
} }
}); });
mAdapter.setOnMenuClickListener(new DynamicsAdapter.OnMenuClickListener() { mAdapter.setOnMenuClickListener(new DynamicsAdapter1.OnMenuClickListener() {
@Override @Override
public void onMenuClicked(final int dynamicIndex) { public void onMenuClicked(final int dynamicIndex) {
mSelectiveDialog = new BottomSelectiveDialog(MainDynamicActivity.this, R.style.SelectiveDialog); mSelectiveDialog = new BottomSelectiveDialog(MainDynamicActivity.this, R.style.SelectiveDialog);
if (0 == mImageList.get(dynamicIndex).getIs_follow()) {
mSelectiveDialog.addSelectButton("关注", new BottomSelectiveDialog.OnButtonSelectListener() {
@Override
public void onClicked(View view, int index) {
mSelectiveDialog.dismiss();
focus(mImageList.get(dynamicIndex).getUser_id());
}
});
}
mSelectiveDialog.addSelectButton("举报", new BottomSelectiveDialog.OnButtonSelectListener() { mSelectiveDialog.addSelectButton("举报", new BottomSelectiveDialog.OnButtonSelectListener() {
@Override @Override
@@ -121,32 +150,88 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
mSelectiveDialog.show(); mSelectiveDialog.show();
} }
}); });
mAdapter.likeDynamicCallback = new DynamicsAdapter.DynamicLikeCallback() {
@Override
public void likeDynamic(DynamicsItemBean bean) {
likeFeed(bean);
}
};
//删除动态 //删除动态
mAdapter.setOnMenuDeleteClickListener(new DynamicsAdapter.OnMenuDeleteClickListener() { mAdapter.setOnMenuDeleteClickListener(new DynamicsAdapter1.OnMenuDeleteClickListener() {
@Override @Override
public void onMenuDelete(final int position, final List<DynamicsItemBean> mDynamicsItemList) { public void onMenuDelete(final int position, final List<DynamicsItemBean> mDynamicsItemList) {
HangUpDialog hangUpDialog = new HangUpDialog(MainDynamicActivity.this, new HangUpDialog.OnHangUpListener() { mDeleteBottomDialog = new BottomSelectiveDialog(MainDynamicActivity.this, R.style.SelectiveDialog);
mDeleteBottomDialog.addSelectButton("删除", new BottomSelectiveDialog.OnButtonSelectListener() {
@Override @Override
public void onHangUp() { public void onClicked(View view, int index) {
mDeleteBottomDialog.dismiss();
deleteDynamics(mDynamicsItemList.get(position).getId(), position); deleteDynamics(mDynamicsItemList.get(position).getId(), position);
} }
},"您确定要删除吗?", "确定", "取消"); });
hangUpDialog.show();
// mDeleteBottomDialog = new BottomSelectiveDialog(MainDynamicActivity.this, R.style.SelectiveDialog); mDeleteBottomDialog.show();
// mDeleteBottomDialog.addSelectButton("删除", new BottomSelectiveDialog.OnButtonSelectListener() { }
// @Override });
// public void onClicked(View view, int index) {
// mDeleteBottomDialog.dismiss(); mAdapter.setOnDetailClicked(new DynamicsAdapter1.OnDetailClickListener() {
// deleteDynamics(mDynamicsItemList.get(position).getId(), position); @Override
// } public void onDetailClicked(int position, String id) {
// }); detailPosition = position;
// mDeleteBottomDialog.show(); Intent intent = new Intent(MainDynamicActivity.this, DynamicDetailActivity.class);
intent.putExtra("dynamic_id", id);
intent.putExtra("dynamic_from", 0);
startActivity(intent);
// DynamicsItemBean itemBean = mAdapter.getmDynamicsItemList().get(position);
// Intent intent = new Intent(getContext(), DynamicDetailTwoActivity.class);
// intent.putExtra("bean", itemBean);
// startActivity(intent);
}
});
mAdapter.dynamicCommentCallback = new DynamicsAdapter1.DynamicCommentCallback() {
@Override
public void commentDynamic(DynamicsItemBean bean) {
Intent intent = new Intent(MainDynamicActivity.this, DynamicDetailActivity.class);
intent.putExtra("dynamic_id", bean.getId());
startActivity(intent);
}
};
}
private BottomGiftDialog mGiftDialog;
/**
* 礼物列表数据
*/
private void getGiftData(String user_id) {
MainManager.getGiftBeans(this, new HttpUiCallBack<GiftListBean>() {
@Override
public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
mGiftDialog = new BottomGiftDialog(MainDynamicActivity.this,
R.style.SelectiveDialog);
mGiftDialog.setGiftListBean(result);
mGiftDialog.setOnGiftItemClickedListener(new BottomGiftDialog.OnGiftItemClickedListener() {
@Override
public void onGiftClicked(final DialogGiftBean bean) {
if (!TextUtils.isEmpty(user_id)) {
sendGift(Integer.parseInt(user_id), bean.getId());
}
}
@Override
public void onWalletClicked() {
Intent intent = new Intent(MainDynamicActivity.this, CaibeiRechargeActivity.class);
startActivity(intent);
}
});
mGiftDialog.show();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
} }
}); });
} }
@@ -251,25 +336,53 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
}); });
} }
public void sendGift(String dynamicId, final int number, final DynamicsItemBean bean) { /**
DynamicsManager.sendGifts(MainDynamicActivity.this, dynamicId, number, new HttpUiCallBack<Object>() { * 赠送礼物
*
* @param toUid
* @param giftId
*/
private void sendGift(int toUid, int giftId) {
MainManager.sendGift(this, 1, toUid, giftId, 1, new HttpUiCallBack<GiftListBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, Object result, String message) { public void onSuccess(BaseActivity activity, GiftListBean result, String message) {
MaleToast.showMessage(MainDynamicActivity.this, "礼物赠送成功"); if (null != mGiftDialog) {
if (null != mAdapter) { mGiftDialog.setCoin(result.getCoin() + "");
mAdapter.setGiftCount(number + bean.getReward_count(), bean.getId()); mGiftDialog.dismiss();
mAdapter.notifyDataSetChanged();
} }
MaleToast.showMessage(activity, "赠送成功");
// mSvgaDialog.show(giftUrl);
} }
@Override @Override
public void onFailure(BaseActivity activity, String tip) { public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(MainDynamicActivity.this, tip); MaleToast.showMessage(activity, tip);
} }
@Override @Override
public void onException(BaseActivity activity, Throwable e) { public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(MainDynamicActivity.this, "赠送失败,请重试"); MaleToast.showMessage(activity, "赠送失败");
}
});
}
private void focus(String userId) {
DynamicsManager.follow(this,
userId,
new HttpUiCallBack<FollowResultBean>() {
@Override
public void onSuccess(BaseActivity activity, FollowResultBean result, String message) {
MaleToast.showMessage(activity, "关注成功");
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "关注失败");
} }
}); });
} }
@@ -279,9 +392,21 @@ public class MainDynamicActivity extends BaseActivity implements View.OnClickLis
} }
public void onEventMainThread(DynamicLikeEvent event) {
int isLike = event.isLike();
int likeNum = event.getLikeNum();
int from = event.getFrom();
if (from == 0) {
mAdapter.getmDynamicsItemList().get(detailPosition).setIs_like(isLike);
mAdapter.getmDynamicsItemList().get(detailPosition).setLike_count(likeNum);
mAdapter.notifyDataSetChanged();
}
}
@Override @Override
public void onDestroy() { public void onDestroy() {
super.onDestroy(); super.onDestroy();
EventBus.getDefault().unregister(this);
if (null != mSelectiveDialog && mSelectiveDialog.isShowing()) { if (null != mSelectiveDialog && mSelectiveDialog.isShowing()) {
mSelectiveDialog.dismiss(); mSelectiveDialog.dismiss();
} }

View File

@@ -0,0 +1,128 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
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.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.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 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 int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@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) {
View v = inflater.inflate(R.layout.fragment_main_voice, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity());
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
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 (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);
}
}
@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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -0,0 +1,129 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
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.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;
import java.util.ArrayList;
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 int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@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) {
View v = inflater.inflate(R.layout.fragment_main_voice, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity());
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
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 (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);
}
}
@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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -0,0 +1,128 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
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.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.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 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 int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@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) {
View v = inflater.inflate(R.layout.fragment_main_voice, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity());
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
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 (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);
}
}
@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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -27,12 +27,14 @@ import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit; import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit;
import com.xuebiping.bolizhuzi.model.main.CallBean; import com.xuebiping.bolizhuzi.model.main.CallBean;
import com.xuebiping.bolizhuzi.model.main.FollowResultBean; import com.xuebiping.bolizhuzi.model.main.FollowResultBean;
import com.xuebiping.bolizhuzi.model.main.LookWechatBean;
import com.xuebiping.bolizhuzi.model.main.MainPageBean; import com.xuebiping.bolizhuzi.model.main.MainPageBean;
import com.xuebiping.bolizhuzi.utils.SPUtils; import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.StrU; import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.base.BaseActivity; import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack; import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.base.utils.view.WechatDialog; import com.xuebiping.bolizhuzi.view.base.utils.view.WechatDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.LookWechatDialog;
import com.xuebiping.bolizhuzi.view.news.im.ImUtils; import com.xuebiping.bolizhuzi.view.news.im.ImUtils;
import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity; import com.xuebiping.bolizhuzi.view.settings.CaibeiRechargeActivity;
import com.xuebiping.bolizhuzi.view.settings.dialog.SelectTypeDialog; import com.xuebiping.bolizhuzi.view.settings.dialog.SelectTypeDialog;
@@ -66,6 +68,8 @@ public class MainPageActivity extends BaseActivity implements View.OnClickListen
private TextView tv_follow1; private TextView tv_follow1;
// private BaseMessageDialog mConfirmDialog; // private BaseMessageDialog mConfirmDialog;
private LottieAnimationView animation_view; private LottieAnimationView animation_view;
private RelativeLayout mRl_love_layout;
private TextView mTv_love_count;
@Override @Override
public void onCreate(Bundle onSavedInstance) { public void onCreate(Bundle onSavedInstance) {
@@ -120,6 +124,11 @@ public class MainPageActivity extends BaseActivity implements View.OnClickListen
animation_view.setAnimation("page_call_video.json"); animation_view.setAnimation("page_call_video.json");
animation_view.playAnimation(); animation_view.playAnimation();
animation_view.setOnClickListener(this); animation_view.setOnClickListener(this);
mRl_love_layout = findViewById(R.id.rl_love_layout);
mTv_love_count = findViewById(R.id.tv_love_count);
mRl_love_layout.setOnClickListener(this);
} }
private final int MIN_DELAY_TIME = 5000; // 两次点击间隔不能少于1000ms private final int MIN_DELAY_TIME = 5000; // 两次点击间隔不能少于1000ms
@@ -241,6 +250,13 @@ public class MainPageActivity extends BaseActivity implements View.OnClickListen
} }
} }
// mVideo.setEnabled(result.getAnchor().getOpen_video_status() == 1 ? true : false); // mVideo.setEnabled(result.getAnchor().getOpen_video_status() == 1 ? true : false);
if (mMainPageBean.getInfo().getHas_wechat() == 1) {
mRl_love_layout.setVisibility(View.VISIBLE);
getIntimacy2(mMainPageBean.getInfo().getUserId());
}else {
mRl_love_layout.setVisibility(View.GONE);
}
} }
@Override @Override
@@ -257,6 +273,54 @@ public class MainPageActivity extends BaseActivity implements View.OnClickListen
}); });
} }
private void getIntimacy2(int to_uid) {
MainManager.getWechatIntimacy(this, to_uid, new HttpUiCallBack<LookWechatBean>() {
@Override
public void onSuccess(BaseActivity activity, LookWechatBean result, String tips) {
mTv_love_count.setText(result.getIntimacy_percent() + "%");
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
private LookWechatDialog mLookWechatDialog2;
private void getIntimacy(int to_uid) {
MainManager.getWechatIntimacy(this, to_uid, new HttpUiCallBack<LookWechatBean>() {
@Override
public void onSuccess(BaseActivity activity, LookWechatBean result, String tips) {
if (mLookWechatDialog2 != null) {
mLookWechatDialog2.dismiss();
mLookWechatDialog2 = null;
}
mLookWechatDialog2 = new LookWechatDialog(MainPageActivity.this, R.style.SelectiveDialog);
mLookWechatDialog2.show();
mLookWechatDialog2.setData(result);
}
@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 setFragment(Fragment fragment) { private void setFragment(Fragment fragment) {
FragmentActivity fragmentActivity = (FragmentActivity) this; FragmentActivity fragmentActivity = (FragmentActivity) this;
try { try {
@@ -397,6 +461,8 @@ public class MainPageActivity extends BaseActivity implements View.OnClickListen
} else if (view == main_personal_page_wechat) { } else if (view == main_personal_page_wechat) {
WechatDialog dialog = new WechatDialog(this, mMainPageBean); WechatDialog dialog = new WechatDialog(this, mMainPageBean);
dialog.show(); dialog.show();
} else if (view == mRl_love_layout) {
getIntimacy(mMainPageBean.getInfo().getUserId());
} }
} }

View File

@@ -0,0 +1,116 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
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.adapter.MainPageCommentAdapter;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.model.main.MainPageCommentInfoBean;
import com.xuebiping.bolizhuzi.model.main.MainPageCommentListBean;
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 MainPageCommentActivity extends BaseActivity implements OnRefreshLoadMoreListener {
private int mUser_id;
private int mPage = 1;
private int mTotalPage;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
private List<MainPageCommentInfoBean> mData = new ArrayList<>();
private MainPageCommentAdapter mMainPageCommentAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitleName("用户评价");
setContentView(R.layout.activity_main_comment);
mUser_id = getIntent().getIntExtra("userId", 0);
initView();
getList(mPage);
}
private void initView() {
mSmart_refresh = findViewById(R.id.smart_refresh);
mRv_recommend_list = findViewById(R.id.rv_recommend_list);
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(this));
mMainPageCommentAdapter = new MainPageCommentAdapter(R.layout.item_main_page_comment, this);
mRv_recommend_list.setAdapter(mMainPageCommentAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
private void getList(int page){
MainManager.getMainCommentList(this, mUser_id + "", page, new HttpUiCallBack<MainPageCommentListBean>() {
@Override
public void onSuccess(BaseActivity activity, MainPageCommentListBean result, String message) {
finishFresh();
if (result != null) {
mTotalPage = result.getTotal_page();
if (mPage == 1) {
mData.clear();
}
List<MainPageCommentInfoBean> list = result.getList();
if (list != null && list.size() > 0) {
mData.addAll(list);
}
}
if (mData != null && mData.size() > 0) {
mMainPageCommentAdapter.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() {
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 {
getList(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getList(mPage);
}
}

View File

@@ -1,5 +1,6 @@
package com.xuebiping.bolizhuzi.view.main; package com.xuebiping.bolizhuzi.view.main;
import android.Manifest;
import android.content.ClipData; import android.content.ClipData;
import android.content.ClipboardManager; import android.content.ClipboardManager;
import android.content.Context; import android.content.Context;
@@ -22,10 +23,14 @@ import android.widget.TextView;
import androidx.cardview.widget.CardView; import androidx.cardview.widget.CardView;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager; import androidx.viewpager.widget.ViewPager;
import com.airbnb.lottie.LottieAnimationView; import com.airbnb.lottie.LottieAnimationView;
import com.facebook.drawee.view.SimpleDraweeView; import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.base.base.permission.AbsPermissionResultCallBack;
import com.fengliyan.base.base.permission.PermissionHelper;
import com.google.android.exoplayer2.DefaultRenderersFactory; import com.google.android.exoplayer2.DefaultRenderersFactory;
import com.google.android.exoplayer2.ExoPlayer; import com.google.android.exoplayer2.ExoPlayer;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
@@ -34,23 +39,32 @@ import com.google.android.exoplayer2.ui.PlayerView;
import com.fengliyan.device.DeviceManager; import com.fengliyan.device.DeviceManager;
import com.fengliyan.messaging.ChatManager; import com.fengliyan.messaging.ChatManager;
import com.fengliyan.messaging.EventBusGiftMessage; import com.fengliyan.messaging.EventBusGiftMessage;
import com.luck.picture.lib.utils.ToastUtils;
import com.shuyu.gsyvideoplayer.utils.GSYVideoType;
import com.xuebiping.bolizhuzi.R; import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser; import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.constant.ConstUrl; import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
import com.xuebiping.bolizhuzi.controller.constant.Constant; import com.xuebiping.bolizhuzi.controller.constant.Constant;
import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager; import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainPageCommentAdapter;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager; import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager; import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager; import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.im.uikit.api.NimUIKit;
import com.xuebiping.bolizhuzi.model.main.BlackBean; import com.xuebiping.bolizhuzi.model.main.BlackBean;
import com.xuebiping.bolizhuzi.model.main.CallBean; import com.xuebiping.bolizhuzi.model.main.CallBean;
import com.xuebiping.bolizhuzi.model.main.ContactBean; import com.xuebiping.bolizhuzi.model.main.ContactBean;
import com.xuebiping.bolizhuzi.model.main.FollowResultBean; import com.xuebiping.bolizhuzi.model.main.FollowResultBean;
import com.xuebiping.bolizhuzi.model.main.GiftBean; import com.xuebiping.bolizhuzi.model.main.GiftBean;
import com.xuebiping.bolizhuzi.model.main.LookWechatBean;
import com.xuebiping.bolizhuzi.model.main.MainCommentStatusBean;
import com.xuebiping.bolizhuzi.model.main.MainPageBean; import com.xuebiping.bolizhuzi.model.main.MainPageBean;
import com.xuebiping.bolizhuzi.model.main.MainPageCommentInfoBean;
import com.xuebiping.bolizhuzi.utils.AnimUtils; import com.xuebiping.bolizhuzi.utils.AnimUtils;
import com.xuebiping.bolizhuzi.utils.FlowLayout;
import com.xuebiping.bolizhuzi.utils.FrameAnimation; import com.xuebiping.bolizhuzi.utils.FrameAnimation;
import com.xuebiping.bolizhuzi.utils.SPUtils; import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.SaveImageUtil;
import com.xuebiping.bolizhuzi.utils.StrU; import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.base.BaseActivity; import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.BaseApplication; import com.xuebiping.bolizhuzi.view.base.BaseApplication;
@@ -60,8 +74,13 @@ import com.xuebiping.bolizhuzi.view.base.utils.view.OtherGuardDialog;
import com.xuebiping.bolizhuzi.view.base.utils.view.WechatDialog; import com.xuebiping.bolizhuzi.view.base.utils.view.WechatDialog;
import com.xuebiping.bolizhuzi.view.diooto.Diooto; import com.xuebiping.bolizhuzi.view.diooto.Diooto;
import com.xuebiping.bolizhuzi.view.diooto.config.DiootoConfig; import com.xuebiping.bolizhuzi.view.diooto.config.DiootoConfig;
import com.xuebiping.bolizhuzi.view.dynamics.activity.PageVideoPlay2Activity;
import com.xuebiping.bolizhuzi.view.dynamics.activity.PageVideoPlayActivity; import com.xuebiping.bolizhuzi.view.dynamics.activity.PageVideoPlayActivity;
import com.xuebiping.bolizhuzi.view.dynamics.activity.QYPreviewVideoActivity;
import com.xuebiping.bolizhuzi.view.main.dialog.ConfirmWXAccountDialog; import com.xuebiping.bolizhuzi.view.main.dialog.ConfirmWXAccountDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.LookWechatDialog;
import com.xuebiping.bolizhuzi.view.main.dialog.MainShareDialog;
import com.xuebiping.bolizhuzi.view.main.ui.EmptyControlVideo;
import com.xuebiping.bolizhuzi.view.main.utils.DefaultExoConfig; import com.xuebiping.bolizhuzi.view.main.utils.DefaultExoConfig;
import com.xuebiping.bolizhuzi.view.news.fragment.NewFragment; import com.xuebiping.bolizhuzi.view.news.fragment.NewFragment;
import com.xuebiping.bolizhuzi.view.settings.InfoEditActivity; import com.xuebiping.bolizhuzi.view.settings.InfoEditActivity;
@@ -86,17 +105,17 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
private SimpleDraweeView mPhoto; private SimpleDraweeView mPhoto;
private SimpleDraweeView mOtherPhoto; private SimpleDraweeView mOtherPhoto;
private TextView mName; private TextView mName;
private TextView mAge;
private TextView mSubInfo; private TextView mSubInfo;
private TextView personal_main_page_ip_province;
private TextView mSubInfoTime; private TextView mSubInfoTime;
private TextView mFanNumber;
private TextView mFocusButton; private TextView mFocusButton;
private ImageView mStatus; private ImageView mStatus;
private TextView mSkillScore; private TextView mSkillScore;
private TextView mSkillSuccessRate; private TextView mSkillSuccessRate;
private TextView mSkillCost;
private TextView tv_signer;
private View mDynamicLayout; private View mDynamicLayout;
private SimpleDraweeView[] mDynamicImages = new SimpleDraweeView[4]; private SimpleDraweeView[] mDynamicImages = new SimpleDraweeView[4];
private View mGiftLayout; private View mGiftLayout;
@@ -133,7 +152,7 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
private TextView copyBtn; private TextView copyBtn;
private ImageView tagVipImageView; private ImageView tagVipImageView;
private ImageView tagSVipImageView; // private ImageView tagSVipImageView;
private ImageView tagNewImageView; private ImageView tagNewImageView;
private ImageView tagRealImageView; private ImageView tagRealImageView;
private ImageView tagPhoneImageView; private ImageView tagPhoneImageView;
@@ -142,7 +161,22 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
private TextView tv_follow_num; private TextView tv_follow_num;
private TextView tv_fans_num; private TextView tv_fans_num;
private TextView tv_scan_num;
private TextView mTv_signature;
private ImageView mIv_look_wechat;
private ImageView mIv_main_share;
private FlowLayout mine_mine_tag;
private RelativeLayout mRl_personal_info;
private LinearLayout mLl_auto;
private LinearLayout mLl_mobile_auto;
private LinearLayout mLl_real_name_auto;
private LinearLayout mLl_real_person_auto;
private LookWechatDialog mLookWechatDialog;
private LinearLayout mLl_share;
private MainShareDialog mMainShareDialog;
private int mFollow_count;
private LinearLayout mLl_comment_title;
private MainPageCommentAdapter mMainPageCommentAdapter;
private void addBanner() { private void addBanner() {
mBanners.addAll(mMainPageBean.getAlbum()); mBanners.addAll(mMainPageBean.getAlbum());
@@ -383,20 +417,23 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
mPhoto = v.findViewById(R.id.personal_main_page_photo); mPhoto = v.findViewById(R.id.personal_main_page_photo);
mOtherPhoto = v.findViewById(R.id.personal_main_other_photo); mOtherPhoto = v.findViewById(R.id.personal_main_other_photo);
mName = v.findViewById(R.id.personal_main_page_name); mName = v.findViewById(R.id.personal_main_page_name);
mAge = v.findViewById(R.id.personal_main_page_age); mTv_signature = v.findViewById(R.id.tv_signature);
mIv_look_wechat = v.findViewById(R.id.iv_look_wechat);
mIv_main_share = v.findViewById(R.id.iv_main_share);
mSubInfo = v.findViewById(R.id.personal_main_page_sub_info); mSubInfo = v.findViewById(R.id.personal_main_page_sub_info);
personal_main_page_ip_province = v.findViewById(R.id.personal_main_page_ip_province);
mSubInfoTime = v.findViewById(R.id.personal_main_page_sub_info_time); mSubInfoTime = v.findViewById(R.id.personal_main_page_sub_info_time);
mFocusButton = v.findViewById(R.id.personal_main_page_focus_button); mFocusButton = v.findViewById(R.id.personal_main_page_focus_button);
mFanNumber = v.findViewById(R.id.personal_main_page_fans_number);
mStatus = v.findViewById(R.id.personal_main_page_status); mStatus = v.findViewById(R.id.personal_main_page_status);
mSkillSuccessRate = v.findViewById(R.id.personal_main_page_skill_success); mSkillSuccessRate = v.findViewById(R.id.personal_main_page_skill_success);
mSkillScore = v.findViewById(R.id.personal_main_page_skill_rate); mSkillScore = v.findViewById(R.id.personal_main_page_skill_rate);
mSkillCost = v.findViewById(R.id.personal_main_page_skill_cost);
mDynamicLayout = v.findViewById(R.id.personal_main_page_dynamic_photo_layout); mDynamicLayout = v.findViewById(R.id.personal_main_page_dynamic_photo_layout);
mGiftLayout = v.findViewById(R.id.personal_main_page_gift_layout); mGiftLayout = v.findViewById(R.id.personal_main_page_gift_layout);
mSkillLayout = v.findViewById(R.id.ll_skill_layout); mSkillLayout = v.findViewById(R.id.ll_skill_layout);
tv_signer = v.findViewById(R.id.tv_signer);
mGuardLayout = v.findViewById(R.id.personal_main_page_guard_photo_layout); mGuardLayout = v.findViewById(R.id.personal_main_page_guard_photo_layout);
mDynamicImages[0] = v.findViewById(R.id.personal_main_page_dynamic_photo_1); mDynamicImages[0] = v.findViewById(R.id.personal_main_page_dynamic_photo_1);
mDynamicImages[1] = v.findViewById(R.id.personal_main_page_dynamic_photo_2); mDynamicImages[1] = v.findViewById(R.id.personal_main_page_dynamic_photo_2);
@@ -421,7 +458,7 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
mSvGuardImages[3] = v.findViewById(R.id.personal_main_page_guard_photo_4); mSvGuardImages[3] = v.findViewById(R.id.personal_main_page_guard_photo_4);
tagVipImageView = v.findViewById(R.id.tagVipImageView); tagVipImageView = v.findViewById(R.id.tagVipImageView);
tagSVipImageView = v.findViewById(R.id.tagSVipImageView); // tagSVipImageView = v.findViewById(R.id.tagSVipImageView);
tagNewImageView = v.findViewById(R.id.tagNewImageView); tagNewImageView = v.findViewById(R.id.tagNewImageView);
tagRealImageView = v.findViewById(R.id.tagRealImageView); tagRealImageView = v.findViewById(R.id.tagRealImageView);
tagPhoneImageView = v.findViewById(R.id.tagPhoneImageView); tagPhoneImageView = v.findViewById(R.id.tagPhoneImageView);
@@ -435,11 +472,41 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
tv_follow_num = v.findViewById(R.id.tv_follow_num); tv_follow_num = v.findViewById(R.id.tv_follow_num);
tv_fans_num = v.findViewById(R.id.tv_fans_num); tv_fans_num = v.findViewById(R.id.tv_fans_num);
tv_scan_num = v.findViewById(R.id.tv_scan_num);
iv_video_call.setImageAssetsFolder("images/"); mLl_auto = v.findViewById(R.id.ll_auto);
iv_video_call.setAnimation("video_call_btn.json"); mLl_mobile_auto = v.findViewById(R.id.ll_mobile_auto);
iv_video_call.playAnimation(); mLl_real_name_auto = v.findViewById(R.id.ll_real_name_auto);
mLl_real_person_auto = v.findViewById(R.id.ll_real_person_auto);
mRl_personal_info = v.findViewById(R.id.rl_personal_info);
mine_mine_tag = v.findViewById(R.id.mine_mine_tag);
mine_mine_tag.setSelectType(FlowLayout.SelectType.SINGLE_IRREVOCABLY);
mLl_share = v.findViewById(R.id.ll_share);
SimpleDraweeView user_head = v.findViewById(R.id.user_head);
TextView tv_name = v.findViewById(R.id.tv_name);
TextView tv_code = v.findViewById(R.id.tv_code);
SimpleDraweeView sv_er = v.findViewById(R.id.sv_er);
user_head.setImageURI(StrU.getResourcePath(mMainPageBean.getInfo().getAvatar(), getActivity()));
tv_name.setText(mMainPageBean.getInfo().getNickname());
tv_code.setText("ID:" + mMainPageBean.getInfo().getUsercode());
sv_er.setImageURI(StrU.getResourcePath(mMainPageBean.getQrcode(), getActivity()));
// iv_video_call.setImageAssetsFolder("images/");
// iv_video_call.setAnimation("video_call_btn.json");
// iv_video_call.playAnimation();
RelativeLayout rl_comment = v.findViewById(R.id.rl_comment);
mLl_comment_title = v.findViewById(R.id.ll_comment_title);
TextView tv_comment_count = v.findViewById(R.id.tv_comment_count);
TextView tv_like_count = v.findViewById(R.id.tv_like_count);
TextView tv_dislike_count = v.findViewById(R.id.tv_dislike_count);
RecyclerView rv_main_info_comment = v.findViewById(R.id.rv_main_info_comment);
RelativeLayout rl_level = v.findViewById(R.id.rl_level);
ImageView iv_level = v.findViewById(R.id.iv_level);
TextView tv_level = v.findViewById(R.id.tv_level);
mBack.setOnClickListener(this); mBack.setOnClickListener(this);
mFocusButton.setOnClickListener(this); mFocusButton.setOnClickListener(this);
@@ -450,11 +517,87 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
mOtherPhoto.setOnClickListener(this); mOtherPhoto.setOnClickListener(this);
mGuardLayout.setOnClickListener(this); mGuardLayout.setOnClickListener(this);
view_end.setOnClickListener(this); view_end.setOnClickListener(this);
iv_video_call.setOnClickListener(this); // iv_video_call.setOnClickListener(this);
personal_player.setOnClickListener(this); personal_player.setOnClickListener(this);
cv_video.setOnClickListener(this); cv_video.setOnClickListener(this);
mIv_look_wechat.setOnClickListener(this);
mIv_main_share.setOnClickListener(this);
mLl_mobile_auto.setOnClickListener(this);
mLl_real_name_auto.setOnClickListener(this);
mLl_real_person_auto.setOnClickListener(this);
mLl_comment_title.setOnClickListener(this);
int level = mMainPageBean.getInfo().getLevel();
tv_level.setText(level + "");
if (mMainPageBean.getInfo().getGender() == 1) {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg1);
iv_level.setImageResource(R.mipmap.ic_modle_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg2);
iv_level.setImageResource(R.mipmap.ic_modle_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg3);
iv_level.setImageResource(R.mipmap.ic_modle_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg4);
iv_level.setImageResource(R.mipmap.ic_modle_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg5);
iv_level.setImageResource(R.mipmap.ic_modle_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_modle_bg6);
iv_level.setImageResource(R.mipmap.ic_modle_6);
}
}else {
if (level > 0 && level <= 15) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg1);
iv_level.setImageResource(R.mipmap.ic_use_1);
} else if (level > 15 && level <= 30) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg2);
iv_level.setImageResource(R.mipmap.ic_use_2);
} else if (level > 30 && level <= 45) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg3);
iv_level.setImageResource(R.mipmap.ic_use_3);
} else if (level > 45 && level <= 60) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg4);
iv_level.setImageResource(R.mipmap.ic_use_4);
} else if (level > 60 && level <= 75) {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg5);
iv_level.setImageResource(R.mipmap.ic_use_5);
} else {
rl_level.setBackgroundResource(R.mipmap.ic_use_bg6);
iv_level.setImageResource(R.mipmap.ic_use_6);
}
}
if (mMainPageBean.getComment() == null) {
rl_comment.setVisibility(View.GONE);
}else {
List<MainPageCommentInfoBean> list = mMainPageBean.getComment().getList();
if (null != list && list.size() > 0) {
rl_comment.setVisibility(View.VISIBLE);
MainCommentStatusBean stats = mMainPageBean.getComment().getStats();
tv_comment_count.setText("用户评价(" + stats.getTotal() + ")");
tv_like_count.setText("喜欢 " + stats.getLike_count());
tv_dislike_count.setText("无感 " + stats.getDislike_count());
rv_main_info_comment.setLayoutManager(new LinearLayoutManager(getActivity()));
mMainPageCommentAdapter = new MainPageCommentAdapter(R.layout.item_main_page_comment, getActivity());
rv_main_info_comment.setAdapter(mMainPageCommentAdapter);
mMainPageCommentAdapter.setList(list);
}else {
rl_comment.setVisibility(View.GONE);
}
}
mPhoto.setImageURI(StrU.getResourcePath(mMainPageBean.getInfo().getAvatar(), getActivity())); mPhoto.setImageURI(StrU.getResourcePath(mMainPageBean.getInfo().getAvatar(), getActivity()));
mName.setText(mMainPageBean.getInfo().getNickname()); mName.setText(mMainPageBean.getInfo().getNickname());
if (TextUtils.isEmpty(mMainPageBean.getInfo().getSignature())) {
mTv_signature.setText("心动至上");
}else {
mTv_signature.setText(mMainPageBean.getInfo().getSignature());
}
// GSYVideoType.setShowType(GSYVideoType.SCREEN_TYPE_DEFAULT); // GSYVideoType.setShowType(GSYVideoType.SCREEN_TYPE_DEFAULT);
String videoUrl = mMainPageBean.getVideo_url(); String videoUrl = mMainPageBean.getVideo_url();
@@ -464,7 +607,7 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
if (player.getAudioComponent() != null) { if (player.getAudioComponent() != null) {
player.getAudioComponent().setVolume(0); player.getAudioComponent().setVolume(0);
} }
player.setRepeatMode(Player.REPEAT_MODE_OFF); player.setRepeatMode(Player.REPEAT_MODE_ONE);
personal_player.setPlayer(player); personal_player.setPlayer(player);
player.setMediaSource(new DefaultExoConfig(getActivity()).createMediaSource(Uri.parse(StrU.getResourcePath(videoUrl, getActivity())))); player.setMediaSource(new DefaultExoConfig(getActivity()).createMediaSource(Uri.parse(StrU.getResourcePath(videoUrl, getActivity()))));
player.prepare(); player.prepare();
@@ -475,32 +618,25 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
public void onPlaybackStateChanged(int state) { public void onPlaybackStateChanged(int state) {
Player.EventListener.super.onPlaybackStateChanged(state); Player.EventListener.super.onPlaybackStateChanged(state);
if (state == Player.STATE_ENDED) { if (state == Player.STATE_ENDED) {
view_end.setVisibility(View.VISIBLE); // view_end.setVisibility(View.VISIBLE);
iv_video_call.setVisibility(View.VISIBLE); // iv_video_call.setVisibility(View.VISIBLE);
} }
} }
}); });
} }
if (mMainPageBean.getInfo().getGender() == 1) {
Drawable drawableLeft = ContextCompat.getDrawable(getActivity(), R.mipmap.sex_girl1);
drawableLeft.setBounds(0, 0, drawableLeft.getMinimumWidth(), drawableLeft.getMinimumHeight());
mAge.setBackgroundResource(R.drawable.shape_stroke_age_women);
mAge.setTextColor(Color.parseColor("#FF4F73"));
mAge.setCompoundDrawables(drawableLeft, null, null, null);
} else {
mAge.setBackgroundResource(R.drawable.shape_stroke_age);
Drawable drawableLeft = ContextCompat.getDrawable(getActivity(), R.mipmap.sex_men1);
drawableLeft.setBounds(0, 0, drawableLeft.getMinimumWidth(), drawableLeft.getMinimumHeight());
mAge.setTextColor(Color.parseColor("#002E9F"));
mAge.setCompoundDrawables(drawableLeft, null, null, null);
}
//男用户不显示真人 //男用户不显示真人
if (0 == mMainPageBean.getInfo().getVip()) { // if (0 == mMainPageBean.getInfo().getVip()) {
// tagVipImageView.setVisibility(View.VISIBLE);
// } else if (1 == mMainPageBean.getInfo().getVip()) {
// tagSVipImageView.setVisibility(View.VISIBLE);
// }
if (mMainPageBean.getInfo().getVip() == 0 || mMainPageBean.getInfo().getVip() == 1) {
tagVipImageView.setVisibility(View.VISIBLE); tagVipImageView.setVisibility(View.VISIBLE);
} else if (1 == mMainPageBean.getInfo().getVip()) {
tagSVipImageView.setVisibility(View.VISIBLE);
} }
if (mMainPageBean.getInfo().getGender() == 1) { if (mMainPageBean.getInfo().getGender() == 1) {
tagRealImageView.setVisibility(View.VISIBLE); tagRealImageView.setVisibility(View.VISIBLE);
} }
@@ -511,14 +647,6 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
tagPhoneImageView.setVisibility(View.VISIBLE); tagPhoneImageView.setVisibility(View.VISIBLE);
} }
if (!StrU.isEmpty(mMainPageBean.getInfo().getSignature())) {
tv_signer.setVisibility(View.VISIBLE);
tv_signer.setText(mMainPageBean.getInfo().getSignature());
} else {
tv_signer.setVisibility(View.GONE);
}
mAge.setText(mMainPageBean.getInfo().getAge() + "");
mSubInfo.setText(mMainPageBean.getInfo().getCity() + " | 用户号:" + mMainPageBean.getInfo().getUsercode()); mSubInfo.setText(mMainPageBean.getInfo().getCity() + " | 用户号:" + mMainPageBean.getInfo().getUsercode());
mSubInfo.setOnClickListener(new View.OnClickListener() { mSubInfo.setOnClickListener(new View.OnClickListener() {
@Override @Override
@@ -529,37 +657,15 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
} }
}); });
if (mMainPageBean.getInfo().getFollow_count() > 0) { mFollow_count = mMainPageBean.getInfo().getFollow_count();
tv_follow_num.setVisibility(View.VISIBLE);
String s = "关注 " + mMainPageBean.getInfo().getFollow_count(); String follows = "关注 " + mMainPageBean.getInfo().getFollow_count();
StrU.setSpanTextColorSizeBold(s, 2, s.length(), tv_follow_num, R.color.color_2d2d2d, 20, true, getContext()); StrU.setSpanTextColorSizeBold(follows, 2, follows.length(), tv_follow_num, R.color.color_2d2d2d, 20, true, getContext());
} else {
tv_follow_num.setVisibility(View.GONE); String fans = "粉丝 " + mMainPageBean.getInfo().getFans_count();
} StrU.setSpanTextColorSizeBold(fans, 2, fans.length(), tv_fans_num, R.color.color_2d2d2d, 20, true, getContext());
if (mMainPageBean.getInfo().getFans_count() > 0) {
tv_fans_num.setVisibility(View.VISIBLE);
String s = "粉丝 " + mMainPageBean.getInfo().getFans_count();
StrU.setSpanTextColorSizeBold(s, 2, s.length(), tv_fans_num, R.color.color_2d2d2d, 20, true, getContext());
// mFanNumber.setVisibility(View.VISIBLE);
// mFanNumber.setText(mMainPageBean.getInfo().getFans_count() + "粉丝");
} else {
mFanNumber.setVisibility(View.GONE);
tv_fans_num.setVisibility(View.GONE);
}
if (mMainPageBean.getInfo().getVisitor_count() > 0) {
tv_scan_num.setVisibility(View.VISIBLE);
String s = "访客 " + mMainPageBean.getInfo().getVisitor_count();
StrU.setSpanTextColorSizeBold(s, 2, s.length(), tv_scan_num, R.color.color_2d2d2d, 20, true, getContext());
} else {
tv_scan_num.setVisibility(View.GONE);
}
if (!TextUtils.isEmpty(mMainPageBean.getInfo().getIp_province())) {
personal_main_page_ip_province.setVisibility(View.VISIBLE);
String s = "IP " + mMainPageBean.getInfo().getIp_province();
StrU.setSpanTextColorSizeBold(s, 2, s.length(), personal_main_page_ip_province, R.color.color_2d2d2d, 20, true, getContext());
} else {
personal_main_page_ip_province.setVisibility(View.GONE);
}
// mStatus.setText(mMainPageBean.getAnchor().getVideo_status() == 0? "空闲中" : "繁忙"); // mStatus.setText(mMainPageBean.getAnchor().getVideo_status() == 0? "空闲中" : "繁忙");
int online_status = mMainPageBean.getInfo().getOnline_status(); //在线 1 休息中 2 离线 int online_status = mMainPageBean.getInfo().getOnline_status(); //在线 1 休息中 2 离线
@@ -583,14 +689,14 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
// mFocusButton.setEnabled(mMainPageBean.getInfo().getIs_follow() == 0); // mFocusButton.setEnabled(mMainPageBean.getInfo().getIs_follow() == 0);
if (null != mMainPageBean.getSkill() && 0 != mMainPageBean.getSkill().size()) { if (null != mMainPageBean.getSkill() && 0 != mMainPageBean.getSkill().size()) {
if (mMainPageBean.getInfo().getGender() == 1) { // if (mMainPageBean.getInfo().getGender() == 1) {
//女生 // //女生
mSkillLayout.setVisibility(View.VISIBLE); // mSkillLayout.setVisibility(View.VISIBLE);
} else { // } else {
mSkillLayout.setVisibility(View.VISIBLE); // mSkillLayout.setVisibility(View.VISIBLE);
mSkillCost.setVisibility(View.GONE); //
mSkillScore.setVisibility(View.GONE); // mSkillScore.setVisibility(View.GONE);
} // }
mSkillScore.setText("评分:" + mMainPageBean.getSkill().get(0).getScore() + ""); mSkillScore.setText("评分:" + mMainPageBean.getSkill().get(0).getScore() + "");
if (mMainPageBean.getSkill().get(0).getService_count() > 0) { if (mMainPageBean.getSkill().get(0).getService_count() > 0) {
mSkillSuccessRate.setVisibility(View.VISIBLE); mSkillSuccessRate.setVisibility(View.VISIBLE);
@@ -598,7 +704,7 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
} else { } else {
mSkillSuccessRate.setVisibility(View.GONE); mSkillSuccessRate.setVisibility(View.GONE);
} }
mSkillCost.setText("视频通话:" + mMainPageBean.getSkill().get(0).getPrice() + "币/分钟\n语音通话" + mMainPageBean.getSkill().get(0).getVoice_price() + "币/分钟");
if (ConstUrl.LOGDEBUG) Log.i("TAG", "initView: online_status------------->" + online_status); if (ConstUrl.LOGDEBUG) Log.i("TAG", "initView: online_status------------->" + online_status);
if (online_status == 1) { if (online_status == 1) {
@@ -659,7 +765,6 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
mOtherPhoto.setVisibility(View.GONE); mOtherPhoto.setVisibility(View.GONE);
} }
if (mMainPageBean.getInfo().getGender() != 1) { if (mMainPageBean.getInfo().getGender() != 1) {
mSkillCost.setVisibility(View.GONE);
mSkillScore.setVisibility(View.GONE); mSkillScore.setVisibility(View.GONE);
} }
mSubInfoTime.setText("最近活跃时间: " + mMainPageBean.getInfo().getUpdate_time()); mSubInfoTime.setText("最近活跃时间: " + mMainPageBean.getInfo().getUpdate_time());
@@ -711,11 +816,6 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
if (null != mMainPageBean.getDynamic() && mMainPageBean.getDynamic().size() != 0) { if (null != mMainPageBean.getDynamic() && mMainPageBean.getDynamic().size() != 0) {
mDynamicLayout.setVisibility(View.VISIBLE); mDynamicLayout.setVisibility(View.VISIBLE);
// for(int i = 0; i < mMainPageBean.getDynamic().size(); i++){
// String url = mMainPageBean.getDynamic().get(i);
// mDynamicImages[i].setImageURI(ConstUrl.IMAGE_URL + url);
// }
for (int i = 0; i < mMainPageBean.getDynamic().size(); i++) { for (int i = 0; i < mMainPageBean.getDynamic().size(); i++) {
if (i < 4) { if (i < 4) {
String url = mMainPageBean.getDynamic().get(i); String url = mMainPageBean.getDynamic().get(i);
@@ -782,10 +882,12 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
@Override @Override
public void onClicked(View view, int index) { public void onClicked(View view, int index) {
mSelectDialog.dismiss(); mSelectDialog.dismiss();
Intent intent = new Intent(getActivity(), ComplaintActivity.class); // Intent intent = new Intent(getActivity(), ComplaintActivity.class);
intent.putExtra("uid", mMainPageBean.getInfo().getUserId() + ""); // intent.putExtra("uid", mMainPageBean.getInfo().getUserId() + "");
intent.putExtra("type", 1); // intent.putExtra("type", 1);
startActivity(intent); // startActivity(intent);
NimUIKit.startP2PSession(getActivity(), "4");
} }
}); });
@@ -841,6 +943,51 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
}); });
} }
} }
List<String> personal_info = mMainPageBean.getPersonal_info();
if (null != personal_info && personal_info.size() > 0) {
mRl_personal_info.setVisibility(View.VISIBLE);
mine_mine_tag.setLabels(personal_info, new FlowLayout.LabelTextProvider<String>() {
@Override
public CharSequence getLabelText(TextView label, int position, String data) {
label.setText(data);
if(position == (personal_info.size() - 1)) {
mine_mine_tag.setDefault(position);
}
return data;
}
});
}else {
mRl_personal_info.setVisibility(View.GONE);
}
int mobile_mark = mMainPageBean.getInfo().getMobile_mark();
int real_name_mark = mMainPageBean.getInfo().getReal_name_mark();
int real_person_mark = mMainPageBean.getInfo().getReal_person_mark();
if (mobile_mark != 1 && real_name_mark != 1 && real_person_mark != 1) {
mLl_auto.setVisibility(View.GONE);
}else {
mLl_auto.setVisibility(View.VISIBLE);
if (mobile_mark == 1) {
mLl_mobile_auto.setVisibility(View.VISIBLE);
}else {
mLl_mobile_auto.setVisibility(View.GONE);
}
if (real_name_mark == 1) {
mLl_real_name_auto.setVisibility(View.VISIBLE);
}else {
mLl_real_name_auto.setVisibility(View.GONE);
}
if (real_person_mark == 1) {
mLl_real_person_auto.setVisibility(View.VISIBLE);
}else {
mLl_real_person_auto.setVisibility(View.GONE);
}
}
// //'用户类型:0普通用户1内部用户2 审核人员账号' // //'用户类型:0普通用户1内部用户2 审核人员账号'
// if (UserManager.getUserInfo().getType() == 2) { // if (UserManager.getUserInfo().getType() == 2) {
// mSkillCost.setVisibility(View.GONE); // mSkillCost.setVisibility(View.GONE);
@@ -1013,7 +1160,12 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
@Override @Override
public void onSuccess(BaseActivity activity, FollowResultBean result, String message) { public void onSuccess(BaseActivity activity, FollowResultBean result, String message) {
if (result != null) { if (result != null) {
if (StrU.equals("add", result.getAction())) { if (StrU.equals("add", result.getAction())) {
mFollow_count = mFollow_count + 1;
String follows = "关注 " + mFollow_count;
StrU.setSpanTextColorSizeBold(follows, 2, follows.length(), tv_follow_num, R.color.color_2d2d2d, 20, true, getContext());
// mFocusButton.setEnabled(false); //不能取消关注 // mFocusButton.setEnabled(false); //不能取消关注
//mFocusButton.setCompoundDrawablesWithIntrinsicBounds(null, ContextCompat.getDrawable(getContext(), R.mipmap.userhome_follow1), null, null); //mFocusButton.setCompoundDrawablesWithIntrinsicBounds(null, ContextCompat.getDrawable(getContext(), R.mipmap.userhome_follow1), null, null);
// mFocusButton.setTextColor(Color.parseColor("#925BF7")); // mFocusButton.setTextColor(Color.parseColor("#925BF7"));
@@ -1022,6 +1174,11 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
// mFocusButton.setText("已关注"); // mFocusButton.setText("已关注");
MaleToast.showMessage(getActivity(), "关注成功"); MaleToast.showMessage(getActivity(), "关注成功");
} else { } else {
if (mFollow_count > 0) {
mFollow_count = mFollow_count - 1;
String follows = "关注 " + mFollow_count;
StrU.setSpanTextColorSizeBold(follows, 2, follows.length(), tv_follow_num, R.color.color_2d2d2d, 20, true, getContext());
}
// mFocusButton.setCompoundDrawablesWithIntrinsicBounds(null, ContextCompat.getDrawable(getContext(), R.mipmap.userhome_follow), null, null); // mFocusButton.setCompoundDrawablesWithIntrinsicBounds(null, ContextCompat.getDrawable(getContext(), R.mipmap.userhome_follow), null, null);
// mFocusButton.setTextColor(Color.parseColor("#666666")); // mFocusButton.setTextColor(Color.parseColor("#666666"));
mFocusButton.setText("关注"); mFocusButton.setText("关注");
@@ -1092,7 +1249,7 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
} else if (view == mFocusButton) { } else if (view == mFocusButton) {
focus(); focus();
} else if (view == mGiftLayout) { } else if (view == mGiftLayout) {
Intent intent = new Intent(getActivity(), GiftReceivedActivity.class); Intent intent = new Intent(getActivity(), GiftReceived2Activity.class);
intent.putExtra("userId", mMainPageBean.getInfo().getUserId()); intent.putExtra("userId", mMainPageBean.getInfo().getUserId());
startActivity(intent); startActivity(intent);
} else if (view == mMore) { } else if (view == mMore) {
@@ -1120,17 +1277,99 @@ public class MainPageFragment extends Fragment implements View.OnClickListener {
} else if (view == iv_video_call || view == view_end) { } else if (view == iv_video_call || view == view_end) {
getCallInfo(0); getCallInfo(0);
} else if (view == personal_player || view == cv_video) { } else if (view == personal_player || view == cv_video) {
Intent intent = new Intent(getActivity(), PageVideoPlayActivity.class); // Intent intent = new Intent(getActivity(), PageVideoPlayActivity.class);
intent.putExtra("userId", mMainPageBean.getInfo().getUserId()); // intent.putExtra("userId", mMainPageBean.getInfo().getUserId());
// intent.putExtra("videoUrl", mMainPageBean.getVideo_url());
// intent.putExtra("age", mMainPageBean.getInfo().getAge());
// intent.putExtra("nickname", mMainPageBean.getInfo().getNickname());
// intent.putExtra("avatar_url", mMainPageBean.getInfo().getAvatar());
// intent.putExtra("is_follow", mMainPageBean.getInfo().getIs_follow());
// startActivity(intent);
// Intent intent = new Intent(getActivity(), QYPreviewVideoActivity.class);
// intent.putExtra("videoUrl", StrU.getResourcePath(mMainPageBean.getVideo_url(), getActivity()));
// startActivity(intent);
Intent intent = new Intent(getActivity(), PageVideoPlay2Activity.class);
intent.putExtra("videoUrl", mMainPageBean.getVideo_url()); intent.putExtra("videoUrl", mMainPageBean.getVideo_url());
intent.putExtra("age", mMainPageBean.getInfo().getAge()); // intent.putExtra("videoUrl", "http://www.w3school.com.cn/i/movie.mp4");
intent.putExtra("nickname", mMainPageBean.getInfo().getNickname()); startActivity(intent);
intent.putExtra("avatar_url", mMainPageBean.getInfo().getAvatar()); } else if (view == mIv_look_wechat) {
intent.putExtra("is_follow", mMainPageBean.getInfo().getIs_follow()); if (mMainPageBean.getInfo().getHas_wechat() == 1) {
getIntimacy(mMainPageBean.getInfo().getUserId());
}else {
MaleToast.showMessage(getActivity(), "对方还未填写微信号,暂无法查看");
}
} else if (view == mIv_main_share) {
if (null != mMainShareDialog) {
mMainShareDialog.dismiss();
mMainShareDialog = null;
}
mMainShareDialog = new MainShareDialog(getActivity(), R.style.SelectiveDialog);
mMainShareDialog.show();
mMainShareDialog.setData(mMainPageBean.getInfo().getAvatar(), mMainPageBean.getInfo().getNickname(), mMainPageBean.getInfo().getUsercode(), mMainPageBean.getQrcode());
mMainShareDialog.setOnSavaClick(new MainShareDialog.OnSavaClick() {
@Override
public void save() {
PermissionHelper.request(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE},
new AbsPermissionResultCallBack() {
@Override
public void onPermissionGranted() {
new SaveImageUtil(mLl_share, getActivity()).start();
}
@Override
public void onPermissionDenied(String... permissions) {
super.onPermissionDenied(permissions);
MaleToast.showMessage(getActivity(), "没有授予存储权限");
}
});
}
});
} else if (view == mLl_mobile_auto) {
MaleToast.showMessage(getActivity(), "对方已通过手机号认证,请放心交友~");
} else if (view == mLl_real_name_auto) {
MaleToast.showMessage(getActivity(), "对方已通过身份证认证,请放心交友~");
} else if (view == mLl_real_person_auto) {
MaleToast.showMessage(getActivity(), "对方已通过人脸认证,请放心交友~");
} else if (view == mLl_comment_title) {
Intent intent = new Intent(getActivity(), MainPageCommentActivity.class);
intent.putExtra("userId", mMainPageBean.getInfo().getUserId());
startActivity(intent); startActivity(intent);
} }
} }
private void getIntimacy(int to_uid) {
MainManager.getWechatIntimacy((BaseActivity) getActivity(), to_uid, new HttpUiCallBack<LookWechatBean>() {
@Override
public void onSuccess(BaseActivity activity, LookWechatBean result, String tips) {
if (mLookWechatDialog != null) {
mLookWechatDialog.dismiss();
mLookWechatDialog = null;
}
mLookWechatDialog = new LookWechatDialog(getActivity(), R.style.SelectiveDialog);
mLookWechatDialog.show();
mLookWechatDialog.setData(result);
}
@Override
public void onFailure(BaseActivity activity, String tip) {
MaleToast.showMessage(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
MaleToast.showMessage(activity, "请重试");
}
});
}
@Override @Override
public void onDestroyView() { public void onDestroyView() {
super.onDestroyView(); super.onDestroyView();

View File

@@ -0,0 +1,368 @@
package com.xuebiping.bolizhuzi.view.main;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AccelerateInterpolator;
import android.view.animation.DecelerateInterpolator;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager;
import com.blankj.utilcode.util.GsonUtils;
import com.fengliyan.http.httprequest.HttpCallback;
import com.fengliyan.uikit.UiUtils;
import com.fengliyan.uikit.toast.MaleToast;
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.RegisterInfoEvent;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.settings.adapter.constant.SettingOptions;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.im.uikit.common.ToastHelper;
import com.xuebiping.bolizhuzi.model.settings.UserFrameBean;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
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;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.main.dialog.ShaiXuanDialog;
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.CommonPagerTitleView;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.SimplePagerTitleView;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import de.greenrobot.event.EventBus;
public class MainRecommend2Fragment extends Fragment implements View.OnClickListener {
private View v;
private RelativeLayout mRl_home_search;
private RelativeLayout mRl_home_change;
private LinearLayout mLl_select;
private MagicIndicator mMagicIndicator;
private ViewPager mMainViewPager;
private MainViewPagerAdapter mViewPagerAdapter;
private List<Fragment> mChannelFragments = new ArrayList<>();
private List<String> mDataList = new ArrayList<>();
private int mIndex = 1;
private LookMeFragment mLookMeFragment;
private RecommendFragment2 mRecommendFragment;
private MainVoiceFragment mVoiceFragment;
private MainNewPeopleFragment mNewPeopleFragment;
private MainFiveStarFragment mFiveStarFragment;
private MainFourStarFragment mFourStarFragment;
private MainThreeStarFragment mThreeStarFragment;
private RelativeLayout mRl_wurao;
private TextView mTv_set_wurao;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
v = inflater.inflate(R.layout.fragment_main_recommend2, container, false);
initView(v);
geDisturb();
return v;
}
@Override
public void onHiddenChanged(boolean hidden) {
if (!hidden) {
((BaseActivity) getActivity()).hideTitleBar();
}
}
private void initView(View v) {
mLl_select = v.findViewById(R.id.ll_select);
mRl_home_search = v.findViewById(R.id.rl_home_search);
mRl_home_change = v.findViewById(R.id.rl_home_change);
mMagicIndicator = v.findViewById(R.id.magic_indicator);
mMainViewPager = v.findViewById(R.id.main_view_pager);
mRl_wurao = v.findViewById(R.id.rl_wurao);
mTv_set_wurao = v.findViewById(R.id.tv_set_wurao);
mLl_select.setOnClickListener(this);
mRl_home_search.setOnClickListener(this);
mRl_home_change.setOnClickListener(this);
mTv_set_wurao.setOnClickListener(this);
mLookMeFragment = new LookMeFragment();
mRecommendFragment = new RecommendFragment2();
mVoiceFragment = new MainVoiceFragment();
mNewPeopleFragment = new MainNewPeopleFragment();
mFiveStarFragment = new MainFiveStarFragment();
mFourStarFragment = new MainFourStarFragment();
mThreeStarFragment = new MainThreeStarFragment();
mChannelFragments.add(mLookMeFragment);
mChannelFragments.add(mRecommendFragment);
mChannelFragments.add(mVoiceFragment);
mChannelFragments.add(mNewPeopleFragment);
mChannelFragments.add(mFiveStarFragment);
mChannelFragments.add(mFourStarFragment);
mChannelFragments.add(mThreeStarFragment);
mViewPagerAdapter = new MainViewPagerAdapter(getChildFragmentManager(),
mChannelFragments);
mMainViewPager.setAdapter(mViewPagerAdapter);
initMagicIndicator();
mMainViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
// if (position == 3) {
// isReClick = true;
// mIv_more_city.setVisibility(View.VISIBLE);
// } else {
// isReClick = false;
// mIv_more_city.setVisibility(View.INVISIBLE);
// }
//
mIndex = position;
if (position == 1 || position == 2) {
mRl_home_change.setVisibility(View.VISIBLE);
}else {
mRl_home_change.setVisibility(View.GONE);
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
mViewPagerAdapter.notifyDataSetChanged();
mMainViewPager.setCurrentItem(mIndex);
mMainViewPager.setOffscreenPageLimit(7);
}
private void initMagicIndicator() {
mDataList.clear();
mDataList.add("看过我");
mDataList.add("推荐");
mDataList.add("语聊");
mDataList.add("新人");
mDataList.add("五星");
mDataList.add("四星");
mDataList.add("三星");
CommonNavigator commonNavigator = new CommonNavigator(getActivity());
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) {
// if (isReClick && index == 3) {
// Intent intent = new Intent(getActivity(), CityPickerActivity.class);
// startActivityForResult(intent, RECOMMEND_CHANGE_CITY_REQUEST);
// } else {
// mMainViewPager.setCurrentItem(index);
// }
Log.d("nail", "onClick: " + index);
mMainViewPager.setCurrentItem(index);
}
});
return simplePagerTitleView;
// CommonPagerTitleView commonPagerTitleView = new CommonPagerTitleView(getActivity());
// commonPagerTitleView.setContentView(R.layout.main_pager_title_layout);
//
// // 初始化
// ImageView iv_selected = (ImageView) commonPagerTitleView.findViewById(R.id.iv_selected);
// ImageView iv_no_selected = (ImageView) commonPagerTitleView.findViewById(R.id.iv_no_selected);
// final TextView titleText = (TextView) commonPagerTitleView.findViewById(R.id.title_text);
// titleText.setText(mDataList.get(index));
// commonPagerTitleView.setPadding(UIUtil.dip2px(context, 5),
// UIUtil.dip2px(context, 0),
// UIUtil.dip2px(context, 5),
// UIUtil.dip2px(context, 0));
//
// commonPagerTitleView.setOnPagerTitleChangeListener(new CommonPagerTitleView.OnPagerTitleChangeListener() {
//
// @Override
// public void onSelected(int index, int totalCount) {
// titleText.setTextSize(16);
// titleText.setTextColor(Color.parseColor("#ffffff"));
// titleText.setTypeface(Typeface.DEFAULT_BOLD);
// iv_selected.setVisibility(View.VISIBLE);
// iv_no_selected.setVisibility(View.INVISIBLE);
// }
//
// @Override
// public void onDeselected(int index, int totalCount) {
// titleText.setTextSize(16);
// titleText.setTextColor(Color.parseColor("#33000000"));
// titleText.setTypeface(Typeface.DEFAULT);
// iv_selected.setVisibility(View.INVISIBLE);
// iv_no_selected.setVisibility(View.VISIBLE);
// }
//
// @Override
// public void onLeave(int index, int totalCount, float leavePercent, boolean leftToRight) {
// // rl_title_bg.setScaleX(1.3f + (0.8f - 1.3f) * leavePercent);
// //rl_title_bg.setScaleY(1.3f + (0.8f - 1.3f) * leavePercent);
// }
//
// @Override
// public void onEnter(int index, int totalCount, float enterPercent, boolean leftToRight) {
// // rl_title_bg.setScaleX(0.8f + (1.3f - 0.8f) * enterPercent);
// // rl_title_bg.setScaleY(0.8f + (1.3f - 0.8f) * enterPercent);
// }
// });
//
// commonPagerTitleView.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if (isReClick && index == 3) {
// Intent intent = new Intent(getActivity(), CityPickerActivity.class);
// startActivityForResult(intent, RECOMMEND_CHANGE_CITY_REQUEST);
// } else {
// mMainViewPager.setCurrentItem(index);
// }
// mMainViewPager.setCurrentItem(index);
// }
// });
//
// return commonPagerTitleView;
}
@Override
public IPagerIndicator getIndicator(Context context) {
// LinePagerIndicator indicator = new LinePagerIndicator(context);
// indicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT);
// indicator.setLineHeight(UIUtil.dip2px(context, 10));
// indicator.setLineWidth(UIUtil.dip2px(context, 20));
// indicator.setRoundRadius(UIUtil.dip2px(context, 0));
// indicator.setStartInterpolator(new AccelerateInterpolator());
// indicator.setEndInterpolator(new DecelerateInterpolator(2.0f));
// indicator.setColors(getResources().getColor(R.color.yellow_ffd33e));
// indicator.setYOffset(UIUtil.dip2px(context, 10));
// indicator.setXOffset(0);
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);
}
@Override
public void onClick(View view) {
if (view == mRl_home_search) {
Intent intent = new Intent(getActivity(), SearchActivity.class);
startActivity(intent);
} else if (view == mLl_select) {
ShaiXuanDialog shaiXuanDialog = new ShaiXuanDialog(getActivity());
shaiXuanDialog.show();
shaiXuanDialog.setRightOnClickListener(new ShaiXuanDialog.OnDialogRightClickListener() {
@Override
public void rightClick(int isSelect) {
NoClearSPUtils.saveInt(getActivity(), UserManager.getUserInfo().getUser_id() + Constant.FRIEND_SELECT, isSelect);
}
});
} else if (view == mRl_home_change) {
if (mRecommendFragment != null && mVoiceFragment != null) {
mRecommendFragment.layoutChange();
mVoiceFragment.layoutChange();
}
} else if (view == mTv_set_wurao) {
if (null != getActivity()) {
MainActivity mainActivity = (MainActivity) getActivity();
if (null != mainActivity) {
mainActivity.setMainGOSettingFragment();
}
}
}
}
public void geDisturb() {
SettingManager.getHomeUser((BaseActivity) getActivity(), new HttpUiCallBack<UserHomeBean>() {
@Override
public void onSuccess(BaseActivity activity, UserHomeBean result, String message) {
int do_not_disturb = result.getUserinfo().getDo_not_disturb();
if (do_not_disturb == 1) {
mRl_wurao.setVisibility(View.VISIBLE);
}else {
mRl_wurao.setVisibility(View.GONE);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
}
@Override
public void onException(BaseActivity activity, Throwable e) {
}
});
}
public void getDisturb2(int do_not_disturb) {
if (null != mRl_wurao) {
if (do_not_disturb == 1) {
mRl_wurao.setVisibility(View.VISIBLE);
}else {
mRl_wurao.setVisibility(View.GONE);
}
}
}
}

View File

@@ -0,0 +1,128 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
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.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.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 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 int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private LinearLayoutManager mLinearLayoutManager;
@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) {
View v = inflater.inflate(R.layout.fragment_main_voice, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity());
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
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 (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);
}
}
@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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -0,0 +1,154 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
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.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;
import java.util.ArrayList;
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 int mTotalPage;
private List<AnchorBean> mData = new ArrayList<>();
private GridLayoutManager mGridLayoutManager;
private LinearLayoutManager mLinearLayoutManager;
@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) {
View v = inflater.inflate(R.layout.fragment_main_voice, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mGridLayoutManager = new GridLayoutManager(getActivity(), 2);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
int voice_layout_change = SPUtils.getInt(getActivity(), "voice_layout_change");
if (voice_layout_change == 0) { //0代表2格 1代表1格
mRv_list.setLayoutManager(mGridLayoutManager);
}else {
mRv_list.setLayoutManager(mLinearLayoutManager);
}
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity(), 2);
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
public void layoutChange() {
int voice_layout_change = SPUtils.getInt(getActivity(), "voice_layout_change");
if (voice_layout_change == 0) {
SPUtils.saveInt(getActivity(), "voice_layout_change", 1);
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter.notifyDataSetChanged();
}else if (voice_layout_change == 1) {
SPUtils.saveInt(getActivity(), "voice_layout_change", 0);
mRv_list.setLayoutManager(mGridLayoutManager);
mAdapter.notifyDataSetChanged();
}
}
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 (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);
}
}
@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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -0,0 +1,234 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;
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.BannerBean;
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;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
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 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
public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_recommend2, container, false);
initView(v);
getData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_list = v.findViewById(R.id.rv_list);
mRl_banner = v.findViewById(R.id.rl_banner);
mBn_recommend = v.findViewById(R.id.bn_recommend);
mGridLayoutManager = new GridLayoutManager(getActivity(), 2);
mLinearLayoutManager = new LinearLayoutManager(getActivity());
int recommend_layout_change = SPUtils.getInt(getActivity(), "recommend_layout_change");
if (recommend_layout_change == 0) {
mRv_list.setLayoutManager(mGridLayoutManager);
}else if (recommend_layout_change == 1){
mRv_list.setLayoutManager(mLinearLayoutManager);
}
mAdapter = new MainRecommendAdapter(R.layout.item_home_recommend, getActivity(), 1);
mRv_list.setAdapter(mAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
public void layoutChange() {
int recommend_layout_change = SPUtils.getInt(getActivity(), "recommend_layout_change");
if (recommend_layout_change == 0) {
SPUtils.saveInt(getActivity(), "recommend_layout_change", 1);
mRv_list.setLayoutManager(mLinearLayoutManager);
mAdapter.notifyDataSetChanged();
}else if (recommend_layout_change == 1) {
SPUtils.saveInt(getActivity(), "recommend_layout_change", 0);
mRv_list.setLayoutManager(mGridLayoutManager);
mAdapter.notifyDataSetChanged();
}
}
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 (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);
}
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);
}
}
@Override
public void onFailure(BaseActivity activity, String tip) {
finishFresh();
MaleToast.showFailureMsg(activity, tip);
}
@Override
public void onException(BaseActivity activity, Throwable e) {
Log.d("nail", "onException: " + e);
finishFresh();
MaleToast.showFailureMsg(activity, "请重试");
}
});
}
private void banner(List<BannerBean> banners) {
images.clear();
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(banners.get(i).getImage());
}
}
}
//简单使用
BaseUtils.setBannerLayoutParams(mBn_recommend).setImages(images)
.setImageLoader(new GlideImageLoader())
.setOnBannerListener(new OnBannerListener() {
@Override
public void OnBannerClick(int position) {
if (null != banners) {
int size = banners.size();
if (size != 0) {
int i = position % size;
JumpUtils.jump(banners.get(i).getLink_type(),
banners.get(i).getLink_url(), getActivity());
// mRv_list.setLayoutManager(mLinearLayoutManager);
// mAdapter.notifyDataSetChanged();
}
}
}
})
.setDelayTime(3000)
.start()
.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
// if (state == 1) {
// mChannelRefresh.setEnabled(false);//设置不可触发
// } else if (state == 2) {
// mChannelRefresh.setEnabled(true);//设置可触发
// }
}
});
}
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 {
getData(mPage);
}
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
getData(mPage);
}
}

View File

@@ -64,7 +64,7 @@ public class SearchActivity extends BaseActivity implements View.OnClickListener
String searchText = mSearchEdit.getText().toString(); String searchText = mSearchEdit.getText().toString();
if (TextUtils.isEmpty(searchText)) { if (TextUtils.isEmpty(searchText)) {
mListView.setVisibility(View.GONE); mListView.setVisibility(View.GONE);
mOptionView.setVisibility(View.VISIBLE); // mOptionView.setVisibility(View.VISIBLE);
} else { } else {
search(); search();
} }
@@ -130,7 +130,7 @@ public class SearchActivity extends BaseActivity implements View.OnClickListener
private void initTitle() { private void initTitle() {
Title title = getCustomTitle(); Title title = getCustomTitle();
title.findViewById(R.id.title_bg).setBackgroundResource(R.color.yellow_ffd33e); title.findViewById(R.id.title_bg).setBackgroundResource(R.color.white);
title.dismissBottomLine(); title.dismissBottomLine();
title.dimissRight(); title.dimissRight();
title.dismissLeft(); title.dismissLeft();
@@ -155,7 +155,7 @@ public class SearchActivity extends BaseActivity implements View.OnClickListener
MainManager.search(this, mSelectedType, searchText, mSelectedGender, new HttpUiCallBack<SearchListBean>() { MainManager.search(this, mSelectedType, searchText, mSelectedGender, new HttpUiCallBack<SearchListBean>() {
@Override @Override
public void onSuccess(BaseActivity activity, SearchListBean result, String message) { public void onSuccess(BaseActivity activity, SearchListBean result, String message) {
mOptionView.setVisibility(View.GONE); // mOptionView.setVisibility(View.GONE);
mListView.setVisibility(View.VISIBLE); mListView.setVisibility(View.VISIBLE);
mSearchList.clear(); mSearchList.clear();
mSearchList.addAll(result.getList()); mSearchList.addAll(result.getList());

View File

@@ -0,0 +1,276 @@
package com.xuebiping.bolizhuzi.view.main;
import android.graphics.Color;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.uikit.toast.MaleToast;
import com.huawei.hms.framework.common.StringUtils;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.agora.utils.ToastUtil;
import com.xuebiping.bolizhuzi.controller.main.manager.MainManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
import com.xuebiping.bolizhuzi.model.main.VideoFeeBean;
import com.xuebiping.bolizhuzi.model.main.VideoLabelListBean;
import com.xuebiping.bolizhuzi.utils.FlowLayout;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import java.util.ArrayList;
import java.util.List;
public class VideoFinish2Activity extends BaseActivity implements View.OnClickListener {
private SimpleDraweeView mMy_user_head;
private SimpleDraweeView mOther_user_head;
private TextView mTv_chat;
private TextView mTv_duration;
private TextView mTv_cost;
private int mAttitude = 1;
private TextView mTv_dislike;
private TextView mTv_like;
private FlowLayout mFl_like;
private List<String> mNames = new ArrayList<>();
private List<String> mNamesDislike = new ArrayList<>();
private Button mBt_commit;
private int mRoomId;
private String mLabelNames;
private FlowLayout mFl_dislike;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video_finish2);
mRoomId = getIntent().getIntExtra("roomId", 0);
hideTitleBar();
initView();
getVideoFee();
}
private void initView() {
mMy_user_head = findViewById(R.id.my_user_head);
mOther_user_head = findViewById(R.id.other_user_head);
mTv_chat = findViewById(R.id.tv_chat);
mTv_duration = findViewById(R.id.tv_time);
mTv_cost = findViewById(R.id.tv_cost);
mTv_dislike = findViewById(R.id.tv_dislike);
mTv_like = findViewById(R.id.tv_like);
mFl_like = findViewById(R.id.fl_like);
mFl_dislike = findViewById(R.id.fl_dislike);
mBt_commit = findViewById(R.id.bt_commit);
mFl_like.setSelectType(FlowLayout.SelectType.MULTI);
mFl_like.setOnLabelClickListener(new FlowLayout.OnLabelClickListener() {
@Override
public void onLabelClick(TextView label, Object data, int position) {
mFl_like.setLabelSelect(label, !label.isSelected());
}
});
mFl_like.setOnLabelSelectChangeListener(new FlowLayout.OnLabelSelectChangeListener() {
@Override
public void onLabelSelectChange(TextView label, Object data, boolean isSelect,
int position) {
VideoLabelListBean tagBean = (VideoLabelListBean) data;
if (isSelect) {
label.setTextColor(Color.parseColor("#EB6DD2"));
label.setBackgroundResource(R.drawable.label_shape_feed_back_bt_selected);
mNames.add(tagBean.getName());
} else {
label.setTextColor(Color.parseColor("#ff9ea7b6"));
label.setBackgroundResource(R.drawable.label_shape_feed_back_bt_no_selected);
mNames.remove(tagBean.getName());
}
}
});
mFl_dislike.setSelectType(FlowLayout.SelectType.MULTI);
mFl_dislike.setOnLabelClickListener(new FlowLayout.OnLabelClickListener() {
@Override
public void onLabelClick(TextView label, Object data, int position) {
mFl_dislike.setLabelSelect(label, !label.isSelected());
}
});
mFl_dislike.setOnLabelSelectChangeListener(new FlowLayout.OnLabelSelectChangeListener() {
@Override
public void onLabelSelectChange(TextView label, Object data, boolean isSelect,
int position) {
VideoLabelListBean tagBean = (VideoLabelListBean) data;
if (isSelect) {
label.setTextColor(Color.WHITE);
label.setBackgroundResource(R.drawable.shape_button_disable);
mNamesDislike.add(tagBean.getName());
} else {
label.setTextColor(Color.parseColor("#ff9ea7b6"));
label.setBackgroundResource(R.drawable.label_shape_feed_back_bt_no_selected);
mNamesDislike.remove(tagBean.getName());
}
}
});
mTv_dislike.setOnClickListener(this);
mTv_like.setOnClickListener(this);
mBt_commit.setOnClickListener(this);
}
private void getVideoFee() {
MainManager.getVideoFee(this, mRoomId + "", new HttpUiCallBack<VideoFeeBean>() {
@Override
public void onSuccess(BaseActivity activity, VideoFeeBean result, String message) {
mMy_user_head.setImageURI(StrU.getResourcePath(result.getFrom_avatar(),VideoFinish2Activity.this));
mOther_user_head.setImageURI(StrU.getResourcePath(result.getTo_avatar(),VideoFinish2Activity.this));
mTv_chat.setText("" + result.getTo_nickname() + "的聊天");
mTv_duration.setText("通话:" + secondToTime(result.getCall_time()));
String pay_money = result.getPay_money();
if (UserManager.getUserInfo().getGender() == 2) {
if (!TextUtils.isEmpty(pay_money)) {
double d = Double.parseDouble(pay_money);
int money = (int) d;
mTv_cost.setText("消费:" + money + "金币");
}
} else {
int income_money = (int) result.getIncome_money();
mTv_cost.setText("收益:" + income_money + "金币");
}
List<VideoLabelListBean> list = result.getLabel_list_like();
if (list != null && list.size() > 0) {
mFl_like.setLabels(list, new FlowLayout.LabelTextProvider<VideoLabelListBean>() {
@Override
public CharSequence getLabelText(TextView label, int position, VideoLabelListBean data) {
label.setText(data.getName());
mFl_like.setLabelSelect(label,
data.getSelected() == 1 ? true : false);
return data.getName();
}
});
}
List<VideoLabelListBean> list_dislike = result.getLabel_list_dislike();
if (list_dislike != null && list_dislike.size() > 0) {
mFl_dislike.setLabels(list_dislike, new FlowLayout.LabelTextProvider<VideoLabelListBean>() {
@Override
public CharSequence getLabelText(TextView label, int position, VideoLabelListBean data) {
label.setText(data.getName());
mFl_dislike.setLabelSelect(label,
data.getSelected() == 1 ? true : false);
return data.getName();
}
});
}
}
@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 secondToTime(long second) {
long days = second / 86400;
second = second % 86400;
long hours = second / 3600;
second = second % 3600;
long minutes = second / 60;
second = second % 60;
if (days > 0) {
return days + "" + hours + "小时" + minutes + "" + second + "";
} else {
if (hours > 0) {
return hours + "小时" + minutes + "" + second + "";
}else {
return minutes + "" + second + "";
}
}
}
private void evaluate() {
MainManager.evaluateVideo2(this,
mRoomId + "", 5, mAttitude, mLabelNames, new HttpUiCallBack<Object>() {
@Override
public void onSuccess(BaseActivity activity, Object result, String message) {
finish();
}
@Override
public void onFailure(BaseActivity activity, String tip) {
// MaleToast.showMessage(activity, tip);
finish();
}
@Override
public void onException(BaseActivity activity, Throwable e) {
// MaleToast.showMessage(activity, "未知异常");
finish();
}
});
}
private String submitUpdate(List<String> list) {
StringBuffer buffer = new StringBuffer();
if (list != null && list.size() > 0) {
for (int i = 0; i < list.size(); i++) {
if (i == list.size() - 1) {
buffer.append(list.get(i));
} else {
buffer.append(list.get(i)).append(",");
}
}
}
return buffer.toString();
}
@Override
public void onClick(View view) {
if (view == mTv_dislike) {
mTv_dislike.setBackgroundResource(R.drawable.shape_dislike_bg);
mTv_dislike.setTextColor(Color.WHITE);
mTv_like.setBackground(null);
mTv_like.setTextColor(getResources().getColor(R.color.two_text));
mAttitude = 0;
mFl_like.setVisibility(View.GONE);
mFl_dislike.setVisibility(View.VISIBLE);
} else if (view == mTv_like) {
mTv_like.setBackgroundResource(R.drawable.shape_like_bg);
mTv_like.setTextColor(Color.WHITE);
mTv_dislike.setBackground(null);
mTv_dislike.setTextColor(getResources().getColor(R.color.two_text));
mAttitude = 1;
mFl_like.setVisibility(View.VISIBLE);
mFl_dislike.setVisibility(View.GONE);
} else if (view == mBt_commit) {
if (mAttitude == 1) {
mLabelNames = submitUpdate(mNames);
}else {
mLabelNames = submitUpdate(mNamesDislike);
}
evaluate();
}
}
}

View File

@@ -0,0 +1,128 @@
package com.xuebiping.bolizhuzi.view.main.dialog;
import android.app.Dialog;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.os.Bundle;
import android.text.Html;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.model.main.LookWechatBean;
import com.xuebiping.bolizhuzi.utils.StrU;
public class LookWechatDialog extends Dialog {
private Context mContext;
private String mText;
private SimpleDraweeView mOther_user_head;
private SimpleDraweeView mMy_user_head;
private TextView mTv_percent_intimacy;
private ProgressBar mPb_intimacy;
private TextView mTv_no_vip_intimacy;
private TextView mTv_vip_intimacy;
private TextView mTv_all_intimacy_intro;
private TextView mTv_risk;
private TextView mTv_risk_footer;
private Button mBt_look_wechat;
private String mWechat;
public LookWechatDialog(@NonNull Context context) {
super(context);
mContext = context;
}
public LookWechatDialog(@NonNull Context context, int themeResId) {
super(context, themeResId);
mContext = context;
}
protected LookWechatDialog(@NonNull Context context, boolean cancelable, @Nullable OnCancelListener cancelListener) {
super(context, cancelable, cancelListener);
mContext = context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_look_wechat);
Window window = this.getWindow();
window.setGravity(Gravity.CENTER);
WindowManager.LayoutParams params = window.getAttributes();
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
// window.setWindowAnimations(R.style.share_animation);
window.setAttributes(params);
initView();
}
private void initView() {
mOther_user_head = findViewById(R.id.other_user_head);
mMy_user_head = findViewById(R.id.my_user_head);
mTv_percent_intimacy = findViewById(R.id.tv_percent_intimacy);
mPb_intimacy = findViewById(R.id.pb_intimacy);
mTv_no_vip_intimacy = findViewById(R.id.tv_no_vip_intimacy);
mTv_vip_intimacy = findViewById(R.id.tv_vip_intimacy);
mTv_all_intimacy_intro = findViewById(R.id.tv_all_intimacy_intro);
mTv_risk = findViewById(R.id.tv_risk);
mTv_risk_footer = findViewById(R.id.tv_risk_footer);
mBt_look_wechat = findViewById(R.id.bt_look_wechat);
mBt_look_wechat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ClipboardManager cm = (ClipboardManager)
mContext.getSystemService(Context.CLIPBOARD_SERVICE);
cm.setPrimaryClip(ClipData.newPlainText(null, mWechat));
MaleToast.showMessage(mContext, "微信号复制成功,请前往微信添加该微信号");
}
});
}
public void setData(LookWechatBean bean) {
if (null != bean) {
mOther_user_head.setImageURI(StrU.getResourcePath(bean.getTo_avatar(), mContext));
mMy_user_head.setImageURI(StrU.getResourcePath(bean.getMy_avatar(), mContext));
mTv_percent_intimacy.setText(bean.getIntimacy_percent() + "%");
mPb_intimacy.setProgress(bean.getIntimacy_percent());
mTv_no_vip_intimacy.setText(bean.getIntimacy() + "/" + bean.getUnlock_coin() + " 亲密值");
mTv_vip_intimacy.setText(bean.getIntimacy() + "/" + bean.getSvip_unlock_coin() + " 亲密值");
mTv_risk.setText(bean.getRisk_tips());
mTv_risk_footer.setText(bean.getFooter_tips());
if (bean.getMember_type() == 1) {
mText = bean.getSvip_unlock_coin() + "";
}else {
mText = bean.getUnlock_coin() + "";
}
String text = "亲密值累计 <font color='#EB6DD2'>" + mText + "</font> 可成为私密好友并免费解锁微信每与她消费1金币可增加1亲密值";
mTv_all_intimacy_intro.setText(Html.fromHtml(text, 0));
if (bean.getIntimacy_percent() >= 100) {
mBt_look_wechat.setEnabled(true);
}else {
mBt_look_wechat.setEnabled(false);
}
mWechat = bean.getWechat();
}
}
}

View File

@@ -0,0 +1,101 @@
package com.xuebiping.bolizhuzi.view.main.dialog;
import android.Manifest;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.facebook.drawee.view.SimpleDraweeView;
import com.fengliyan.base.base.permission.AbsPermissionResultCallBack;
import com.fengliyan.base.base.permission.PermissionHelper;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.utils.SaveImageUtil;
import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.settings.InvitationActivity;
public class MainShareDialog extends Dialog {
private Context mContext;
private SimpleDraweeView mUser_head;
private TextView mTv_name;
private TextView mTv_code;
private SimpleDraweeView mSv_er;
private LinearLayout mLl_share;
public MainShareDialog(@NonNull Context context) {
super(context);
mContext = context;
}
public MainShareDialog(@NonNull Context context, int themeResId) {
super(context, themeResId);
mContext = context;
}
protected MainShareDialog(@NonNull Context context, boolean cancelable, @Nullable OnCancelListener cancelListener) {
super(context, cancelable, cancelListener);
mContext = context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_main_share);
Window window = this.getWindow();
window.setGravity(Gravity.CENTER);
WindowManager.LayoutParams params = window.getAttributes();
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
// window.setWindowAnimations(R.style.share_animation);
window.setAttributes(params);
initView();
}
private void initView() {
mLl_share = findViewById(R.id.ll_share);
mUser_head = findViewById(R.id.user_head);
mTv_name = findViewById(R.id.tv_name);
mTv_code = findViewById(R.id.tv_code);
mSv_er = findViewById(R.id.sv_er);
findViewById(R.id.bt_save).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dismiss();
if (mOnSavaClick != null) {
mOnSavaClick.save();
}
}
});
}
public void setData(String avatar, String name, String code, String qrcode) {
mUser_head.setImageURI(StrU.getResourcePath(avatar, mContext));
mTv_name.setText(name);
mTv_code.setText("ID:" + code);
mSv_er.setImageURI(StrU.getResourcePath(qrcode, mContext));
}
private OnSavaClick mOnSavaClick;
public interface OnSavaClick {
void save();
}
public void setOnSavaClick(OnSavaClick onSavaClick) {
this.mOnSavaClick = onSavaClick;
}
}

View File

@@ -0,0 +1,85 @@
package com.xuebiping.bolizhuzi.view.main.dialog;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.RelativeLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.xuebiping.bolizhuzi.R;
public class OpenDisturbDialog extends Dialog implements View.OnClickListener {
private Context mContext;
private RelativeLayout mRl_close;
private Button mBt_finish_disturb;
public OpenDisturbDialog(@NonNull Context context) {
super(context);
mContext = context;
}
public OpenDisturbDialog(@NonNull Context context, int themeResId) {
super(context, themeResId);
mContext = context;
}
protected OpenDisturbDialog(@NonNull Context context, boolean cancelable, @Nullable OnCancelListener cancelListener) {
super(context, cancelable, cancelListener);
mContext = context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_open_disturb);
Window window = this.getWindow();
window.setGravity(Gravity.CENTER);
WindowManager.LayoutParams params = window.getAttributes();
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
// window.setWindowAnimations(R.style.share_animation);
window.setAttributes(params);
initView();
}
private void initView() {
mRl_close = findViewById(R.id.rl_close);
mBt_finish_disturb = findViewById(R.id.bt_finish_disturb);
mRl_close.setOnClickListener(this);
mBt_finish_disturb.setOnClickListener(this);
}
@Override
public void onClick(View view) {
if (view == mRl_close) {
dismiss();
} else if (view == mBt_finish_disturb) {
if (null != mOnFinishDisturbListener) {
mOnFinishDisturbListener.onFinishDisturb();
}
}
}
private OnFinishDisturbListener mOnFinishDisturbListener;
public interface OnFinishDisturbListener {
void onFinishDisturb();
}
public void setOnFinishDisturbListener(OnFinishDisturbListener onFinishDisturbListener) {
mOnFinishDisturbListener = onFinishDisturbListener;
}
}

View File

@@ -17,6 +17,9 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.xuebiping.bolizhuzi.R; 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 { public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
@@ -58,13 +61,11 @@ public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
Window window = this.getWindow(); Window window = this.getWindow();
window.setGravity(Gravity.BOTTOM); window.setGravity(Gravity.BOTTOM);
WindowManager.LayoutParams lp = window.getAttributes(); WindowManager.LayoutParams attributes = window.getAttributes();
DisplayMetrics dm = new DisplayMetrics(); attributes.width = WindowManager.LayoutParams.MATCH_PARENT;
dm = mContext.getResources().getDisplayMetrics(); attributes.height = WindowManager.LayoutParams.WRAP_CONTENT;
lp.width = (int) ((dm.widthPixels) * 0.8); window.setAttributes(attributes);
lp.height = LinearLayout.LayoutParams.WRAP_CONTENT; window.setBackgroundDrawableResource(android.R.color.transparent);
window.setAttributes(lp);
getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
} }
public int isSelect = 0; // 0全部1男2女 public int isSelect = 0; // 0全部1男2女
@@ -74,11 +75,20 @@ public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
tv_boy = findViewById(R.id.tv_boy); tv_boy = findViewById(R.id.tv_boy);
tv_girl = findViewById(R.id.tv_girl); tv_girl = findViewById(R.id.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); 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); ll_nm_video_call = findViewById(R.id.ll_nm_video_call);
findViewById(R.id.iv_close).setOnClickListener(new View.OnClickListener() { findViewById(R.id.rl_close).setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
dismiss(); dismiss();
@@ -113,7 +123,7 @@ public class ShaiXuanDialog extends Dialog implements View.OnClickListener {
public void setTxtStyle(TextView textView1,TextView textView2,TextView textView3){ public void setTxtStyle(TextView textView1,TextView textView2,TextView textView3){
textView1.setTextColor(Color.parseColor("#ffffff")); 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.setTextColor(Color.parseColor("#999999"));
textView2.setBackground(mContext.getResources().getDrawable(R.drawable.bg_999999_t10)); textView2.setBackground(mContext.getResources().getDrawable(R.drawable.bg_999999_t10));
textView3.setTextColor(Color.parseColor("#999999")); textView3.setTextColor(Color.parseColor("#999999"));

View File

@@ -2,13 +2,15 @@ package com.xuebiping.bolizhuzi.view.main.ui;
import android.content.Context; import android.content.Context;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent; import android.view.MotionEvent;
import com.xuebiping.bolizhuzi.R;
import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer; import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer;
import com.xuebiping.bolizhuzi.R;
public class EmptyControlVideo extends StandardGSYVideoPlayer { public class EmptyControlVideo extends StandardGSYVideoPlayer {
public EmptyControlVideo(Context context, Boolean fullFlag) { public EmptyControlVideo(Context context, Boolean fullFlag) {
super(context, fullFlag); super(context, fullFlag);
} }
@@ -37,6 +39,7 @@ public class EmptyControlVideo extends StandardGSYVideoPlayer {
//不给触摸亮度,如果需要,屏蔽下方代码即可 //不给触摸亮度,如果需要,屏蔽下方代码即可
mBrightness = false; mBrightness = false;
} }
@Override @Override

View File

@@ -0,0 +1,42 @@
package com.xuebiping.bolizhuzi.view.news.activity;
import android.os.Bundle;
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.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.news.fragment.VideoRecordFragment;
import java.util.ArrayList;
import java.util.List;
public class CateRecordActivity extends BaseActivity{
private ViewPager mRecord_view_pager;
private VideoRecordFragment mVideoRecordFragment;
private List<Fragment> mChannelFragments = new ArrayList<>();
private MainViewPagerAdapter mViewPagerAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cate_record);
setTitleName("通话记录");
initView();
}
private void initView() {
mRecord_view_pager = findViewById(R.id.record_view_pager);
mVideoRecordFragment = new VideoRecordFragment();
mChannelFragments.add(mVideoRecordFragment);
mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
mChannelFragments);
mRecord_view_pager.setAdapter(mViewPagerAdapter);
}
}

View File

@@ -14,6 +14,7 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
@@ -22,8 +23,10 @@ import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager; import androidx.viewpager.widget.ViewPager;
import com.blankj.utilcode.util.TimeUtils; import com.blankj.utilcode.util.TimeUtils;
import com.fengliyan.uikit.toast.MaleToast;
import com.xuebiping.bolizhuzi.R; import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.constant.ConsUser; import com.xuebiping.bolizhuzi.controller.constant.ConsUser;
import com.xuebiping.bolizhuzi.controller.eventBus.UnReadCountEvent;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter; import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager; import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.controller.user.manager.UserManager; import com.xuebiping.bolizhuzi.controller.user.manager.UserManager;
@@ -34,6 +37,7 @@ import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.StrU; import com.xuebiping.bolizhuzi.utils.StrU;
import com.xuebiping.bolizhuzi.view.base.BaseActivity; import com.xuebiping.bolizhuzi.view.base.BaseActivity;
import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack; import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import com.xuebiping.bolizhuzi.view.main.SearchActivity;
import com.xuebiping.bolizhuzi.view.settings.MemberActivity; import com.xuebiping.bolizhuzi.view.settings.MemberActivity;
import com.xuebiping.bolizhuzi.view.settings.MissionActivity; import com.xuebiping.bolizhuzi.view.settings.MissionActivity;
import com.fengliyan.uikit.dialog.BaseMessageDialog; import com.fengliyan.uikit.dialog.BaseMessageDialog;
@@ -44,6 +48,8 @@ import com.netease.nimlib.sdk.msg.MsgService;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import de.greenrobot.event.EventBus;
/** /**
* Created by halifa on 2019/2/27. * Created by halifa on 2019/2/27.
*/ */
@@ -58,7 +64,7 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
private View mTitleTag1; private View mTitleTag1;
private View mTitleTag2; private View mTitleTag2;
private View mTitlePost; private View mTitlePost;
private ImageView title_clear_unread; private RelativeLayout title_clear_unread;
private ViewPager mMainViewPager; private ViewPager mMainViewPager;
private LinearLayout lin_msg_vip; private LinearLayout lin_msg_vip;
private TextView tv_msg_vip_time; private TextView tv_msg_vip_time;
@@ -67,10 +73,12 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
private List<Fragment> mChannelFragments = new ArrayList<>(); private List<Fragment> mChannelFragments = new ArrayList<>();
private MainViewPagerAdapter mViewPagerAdapter; private MainViewPagerAdapter mViewPagerAdapter;
private ConversasionFragment mConversasionFragment; private ConversasionFragment mConversasionFragment;
private VideoRecordFragment mVideoRecordFragment; // private VideoRecordFragment mVideoRecordFragment;
private int mIndex; private int mIndex;
private RecentContactsFragment mRecentContactsFragment; private RecentContactsFragment mRecentContactsFragment;
private CountDownTimer mVipCountDownTimer = null; private CountDownTimer mVipCountDownTimer = null;
private RelativeLayout mRl_clear_chat_list;
private RelativeLayout mRl_home_search;
@Nullable @Nullable
@Override @Override
@@ -89,39 +97,39 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
if (!hidden) { if (!hidden) {
initTitle(); initTitle();
viewPagerChange(mIndex); viewPagerChange(mIndex);
if (UserManager.getUserInfo().getGender() == 2) { // if (UserManager.getUserInfo().getGender() == 2) {
if (isSignIn) { // if (isSignIn) {
isSignIn = false; // isSignIn = false;
signData(); // signData();
} // }
} else { // } else {
lin_msg_sign.setVisibility(View.INVISIBLE); // lin_msg_sign.setVisibility(View.INVISIBLE);
} // }
if (isFirst) { // if (isFirst) {
isFirst = false; // isFirst = false;
if (UserManager.getUserInfo().getGender() == 2 && !SPUtils.getBoolean(getContext(), ConsUser.USER_VIP, false)) { // if (UserManager.getUserInfo().getGender() == 2 && !SPUtils.getBoolean(getContext(), ConsUser.USER_VIP, false)) {
if (mVipCountDownTimer != null) { // if (mVipCountDownTimer != null) {
mVipCountDownTimer.cancel(); // mVipCountDownTimer.cancel();
} // }
mVipCountDownTimer = new CountDownTimer(60_000 * 10, 1000) { // mVipCountDownTimer = new CountDownTimer(60_000 * 10, 1000) {
@Override // @Override
public void onTick(long millisUntilFinished) { // public void onTick(long millisUntilFinished) {
tv_msg_vip_time.setText(TimeUtils.millis2String(millisUntilFinished, "mm:ss")); // tv_msg_vip_time.setText(TimeUtils.millis2String(millisUntilFinished, "mm:ss"));
} // }
//
@Override // @Override
public void onFinish() { // public void onFinish() {
lin_msg_vip.setVisibility(View.GONE); // lin_msg_vip.setVisibility(View.GONE);
} // }
//
}; // };
lin_msg_vip.setVisibility(View.VISIBLE); // lin_msg_vip.setVisibility(View.VISIBLE);
mVipCountDownTimer.start(); // mVipCountDownTimer.start();
} else { // } else {
lin_msg_vip.setVisibility(View.GONE); // lin_msg_vip.setVisibility(View.GONE);
} // }
} // }
} }
} }
@@ -179,10 +187,14 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
mTitleBottom2 = mTitleView.findViewById(R.id.title_bottom_line_2); mTitleBottom2 = mTitleView.findViewById(R.id.title_bottom_line_2);
mTitlePost = mTitleView.findViewById(R.id.title_post); mTitlePost = mTitleView.findViewById(R.id.title_post);
title_clear_unread = mTitleView.findViewById(R.id.title_clear_unread); title_clear_unread = mTitleView.findViewById(R.id.title_clear_unread);
mRl_clear_chat_list = mTitleView.findViewById(R.id.rl_clear_chat_list);
mRl_home_search = mTitleView.findViewById(R.id.rl_home_search);
mTitleTag1.setOnClickListener(this); mTitleTag1.setOnClickListener(this);
mTitleTag2.setOnClickListener(this); mTitleTag2.setOnClickListener(this);
mTitlePost.setOnClickListener(this); mTitlePost.setOnClickListener(this);
title_clear_unread.setOnClickListener(this); title_clear_unread.setOnClickListener(this);
mRl_clear_chat_list.setOnClickListener(this);
mRl_home_search.setOnClickListener(this);
title.addViewTo(mTitleView, POSTION_CENTER); title.addViewTo(mTitleView, POSTION_CENTER);
} }
@@ -193,9 +205,9 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
lin_msg_sign = v.findViewById(R.id.lin_msg_sign); lin_msg_sign = v.findViewById(R.id.lin_msg_sign);
tv_msg_sign_in = v.findViewById(R.id.tv_msg_sign_in); tv_msg_sign_in = v.findViewById(R.id.tv_msg_sign_in);
mRecentContactsFragment = new RecentContactsFragment(); mRecentContactsFragment = new RecentContactsFragment();
mVideoRecordFragment = new VideoRecordFragment(); // mVideoRecordFragment = new VideoRecordFragment();
mChannelFragments.add(mRecentContactsFragment); mChannelFragments.add(mRecentContactsFragment);
mChannelFragments.add(mVideoRecordFragment); // mChannelFragments.add(mVideoRecordFragment);
lin_msg_vip.setOnClickListener(this); lin_msg_vip.setOnClickListener(this);
lin_msg_sign.setOnClickListener(this); lin_msg_sign.setOnClickListener(this);
@@ -233,12 +245,12 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
mTitleText1.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text)); mTitleText1.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text));
mTitleText1.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD)); mTitleText1.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
mTitleText1.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20); mTitleText1.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20);
mTitleBottom1.setVisibility(View.VISIBLE); // mTitleBottom1.setVisibility(View.VISIBLE);
mTitleText2.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text)); mTitleText2.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text));
mTitleText2.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL)); mTitleText2.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL));
mTitleText2.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16); mTitleText2.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16);
mTitleBottom2.setVisibility(View.GONE); // mTitleBottom2.setVisibility(View.GONE);
break; break;
case 1: case 1:
mTitleText2.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text)); mTitleText2.setTextColor(ContextCompat.getColor(getActivity(), R.color.one_text));
@@ -255,6 +267,7 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
} }
private BaseMessageDialog clearUnreadDialog; private BaseMessageDialog clearUnreadDialog;
private BaseMessageDialog clearChatListDialog;
@Override @Override
public void onClick(View view) { public void onClick(View view) {
@@ -265,7 +278,7 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
} else if (view == mTitlePost) { } else if (view == mTitlePost) {
NimUIKit.startP2PSession(getActivity(), "2"); NimUIKit.startP2PSession(getActivity(), "2");
} else if (view == title_clear_unread) { } else if (view == title_clear_unread) {
clearUnreadDialog = new BaseMessageDialog.Builder(getContext()).setTitle("温馨提示").setMessage("消息气泡会清除,但消息不会丢失").setNegative("取消").setNegativeButtonListener(new DialogInterface.OnClickListener() { clearUnreadDialog = new BaseMessageDialog.Builder(getContext()).setTitle("是否忽略所有未读提醒").setMessage("消息未读气泡会清除,不会删除聊天记录").setNegative("取消").setNegativeButtonListener(new DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
clearUnreadDialog.dismiss(); clearUnreadDialog.dismiss();
@@ -278,6 +291,24 @@ public class MainMessageFragment extends Fragment implements View.OnClickListene
} }
}).build(); }).build();
clearUnreadDialog.show(); clearUnreadDialog.show();
} else if (view == mRl_clear_chat_list) {
clearChatListDialog = new BaseMessageDialog.Builder(getContext()).setTitle("是否清空聊天列表").setMessage("聊天记录会被清除,请谨慎清空消息列表").setNegative("取消").setNegativeButtonListener(new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
clearChatListDialog.dismiss();
}
}).setPositive("确定").setPositiveButtonListener(new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
NIMClient.getService(MsgService.class).clearMsgDatabase(true);
EventBus.getDefault().post(new UnReadCountEvent(0, ""));
clearChatListDialog.dismiss();
}
}).build();
clearChatListDialog.show();
} else if (view == mRl_home_search) {
Intent intent = new Intent(getActivity(), SearchActivity.class);
startActivity(intent);
} else if (view == lin_msg_vip) { } else if (view == lin_msg_vip) {
Intent intent = new Intent(getActivity(), MemberActivity.class); Intent intent = new Intent(getActivity(), MemberActivity.class);
intent.putExtra("index", 0); intent.putExtra("index", 0);

View File

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

View File

@@ -1,6 +1,7 @@
package com.xuebiping.bolizhuzi.view.settings; package com.xuebiping.bolizhuzi.view.settings;
import android.Manifest; import android.Manifest;
import android.annotation.SuppressLint;
import android.app.ProgressDialog; import android.app.ProgressDialog;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
@@ -8,6 +9,7 @@ import android.graphics.Bitmap;
import android.graphics.Color; import android.graphics.Color;
import android.media.ThumbnailUtils; import android.media.ThumbnailUtils;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.provider.MediaStore; import android.provider.MediaStore;
import android.text.Html; import android.text.Html;
@@ -19,10 +21,12 @@ import android.view.ViewGroup;
import android.widget.Button; import android.widget.Button;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.ItemTouchHelper; import androidx.recyclerview.widget.ItemTouchHelper;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
@@ -34,6 +38,8 @@ import com.bigkoo.pickerview.listener.OnOptionsSelectListener;
import com.bigkoo.pickerview.listener.OnTimeSelectListener; import com.bigkoo.pickerview.listener.OnTimeSelectListener;
import com.bigkoo.pickerview.view.OptionsPickerView; import com.bigkoo.pickerview.view.OptionsPickerView;
import com.bigkoo.pickerview.view.TimePickerView; import com.bigkoo.pickerview.view.TimePickerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.RequestOptions;
import com.facebook.drawee.view.SimpleDraweeView; import com.facebook.drawee.view.SimpleDraweeView;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.hjq.permissions.OnPermissionCallback; import com.hjq.permissions.OnPermissionCallback;
@@ -62,6 +68,7 @@ import com.xuebiping.bolizhuzi.model.login.bean.LoginBean;
import com.xuebiping.bolizhuzi.model.main.GlobalConfigBean; import com.xuebiping.bolizhuzi.model.main.GlobalConfigBean;
import com.xuebiping.bolizhuzi.model.settings.UserHomeBean; import com.xuebiping.bolizhuzi.model.settings.UserHomeBean;
import com.xuebiping.bolizhuzi.model.settings.UserInfoBean; import com.xuebiping.bolizhuzi.model.settings.UserInfoBean;
import com.xuebiping.bolizhuzi.utils.GlideUtils;
import com.xuebiping.bolizhuzi.utils.PermissionUtil; import com.xuebiping.bolizhuzi.utils.PermissionUtil;
import com.xuebiping.bolizhuzi.utils.SPUtils; import com.xuebiping.bolizhuzi.utils.SPUtils;
import com.xuebiping.bolizhuzi.utils.SimpleItemTouchCallBack; import com.xuebiping.bolizhuzi.utils.SimpleItemTouchCallBack;
@@ -86,6 +93,9 @@ import com.fengliyan.uikit.sketch.SketchImageView;
import com.fengliyan.uikit.toast.MaleToast; import com.fengliyan.uikit.toast.MaleToast;
import java.io.File; import java.io.File;
import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Calendar; import java.util.Calendar;
@@ -107,6 +117,8 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
private String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}; private String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
public static final int VIDEO_COVER_REQUEST = 501;//封面视频 public static final int VIDEO_COVER_REQUEST = 501;//封面视频
public static final int SIGNATURE_REQUEST = 502;//个性签名 public static final int SIGNATURE_REQUEST = 502;//个性签名
public static final int JOB_REQUEST = 503;//职业
public static final int SCHOOL_REQUEST = 504;//学校
public static final int MULTI_SELECTOR_REQUEST = 200; public static final int MULTI_SELECTOR_REQUEST = 200;
public static final int PERMISSION_REQUEST_CODE = 101; public static final int PERMISSION_REQUEST_CODE = 101;
public static final int REQUEST_EDIT_NICKNAME = 210; public static final int REQUEST_EDIT_NICKNAME = 210;
@@ -167,6 +179,8 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
private String mOldBirthday = ""; private String mOldBirthday = "";
private String mOldCity = ""; private String mOldCity = "";
private String mOldJob = ""; private String mOldJob = "";
private String mOldSchool = "";
private String mOldHeight = "";
private WQTipsDialog mWQTipsDialog; private WQTipsDialog mWQTipsDialog;
private String mEdit_nickname_tip; private String mEdit_nickname_tip;
private String mNickname_tip; private String mNickname_tip;
@@ -182,7 +196,21 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
TextView videoStatusLabel; TextView videoStatusLabel;
View videoBtn; View videoBtn;
private String del_video = "0"; private String del_video = "0";
private String job = "自由职业-自由职业"; //private String job = "自由职业-自由职业";
private SimpleDraweeView photosImageView;
private TextView settings_info_edit_age;
private TextView settings_info_edit_xz;
private TextView settings_info_edit_gender;
private TextView settings_info_edit_school;
private TextView settings_info_edit_height;
private String height;
private RelativeLayout photosBtn;
private String album;
private String mOldalbum;
private RelativeLayout settings_info_edit_height_layout;
private RelativeLayout settings_info_edit_xx_layout;
private TextView tv_finish_bfb;
private ProgressBar progress_bar_bfb;
@Override @Override
public void onCreate(Bundle onSavedInstance) { public void onCreate(Bundle onSavedInstance) {
@@ -197,6 +225,11 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} }
private void initView() { private void initView() {
tv_finish_bfb = findViewById(R.id.tv_finish_bfb);
progress_bar_bfb = findViewById(R.id.progress_bar_bfb);
progress_bar_bfb.setMax(100);
videoStatusLabel = findViewById(R.id.videoStatusLabel); videoStatusLabel = findViewById(R.id.videoStatusLabel);
avatarImageView = findViewById(R.id.avatarImageView); avatarImageView = findViewById(R.id.avatarImageView);
videoCoverImageView = findViewById(R.id.videoCoverImageView); videoCoverImageView = findViewById(R.id.videoCoverImageView);
@@ -218,7 +251,17 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} }
}); });
photosImageView = findViewById(R.id.photosImageView);
photosBtn = findViewById(R.id.photosBtn);
settings_info_edit_age = findViewById(R.id.settings_info_edit_age);
settings_info_edit_xz = findViewById(R.id.settings_info_edit_xz);
settings_info_edit_gender = findViewById(R.id.settings_info_edit_gender);
settings_info_edit_school = findViewById(R.id.settings_info_edit_school);
settings_info_edit_xx_layout = findViewById(R.id.settings_info_edit_xx_layout);
settings_info_edit_height_layout = findViewById(R.id.settings_info_edit_height_layout);
settings_info_edit_height = findViewById(R.id.settings_info_edit_height);
mPhotoListView = findViewById(R.id.settings_info_edit_photos); mPhotoListView = findViewById(R.id.settings_info_edit_photos);
mPhotoListView.setVisibility(View.GONE);
mNickNameLayout = findViewById(R.id.settings_info_edit_nick_name_layout); mNickNameLayout = findViewById(R.id.settings_info_edit_nick_name_layout);
mBirthDayLayout = findViewById(R.id.settings_info_edit_birthday_layout); mBirthDayLayout = findViewById(R.id.settings_info_edit_birthday_layout);
mJobLayout = findViewById(R.id.settings_info_edit_job_layout); mJobLayout = findViewById(R.id.settings_info_edit_job_layout);
@@ -243,9 +286,15 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
mSignLayout.setOnClickListener(this); mSignLayout.setOnClickListener(this);
mConfirmButton.setOnClickListener(this); mConfirmButton.setOnClickListener(this);
info_video_delete.setOnClickListener(this); info_video_delete.setOnClickListener(this);
photosBtn.setOnClickListener(this);
settings_info_edit_height_layout.setOnClickListener(this);
settings_info_edit_xx_layout.setOnClickListener(this);
initHeightOptionPicker();
videoBtn = findViewById(R.id.videoBtn); videoBtn = findViewById(R.id.videoBtn);
if (UserManager.getUserInfo().isWomen()) { if (UserManager.getUserInfo().isWomen()) {
videoBtn.setVisibility(View.VISIBLE); videoBtn.setVisibility(View.GONE);
} else { } else {
videoBtn.setVisibility(View.GONE); videoBtn.setVisibility(View.GONE);
} }
@@ -311,6 +360,7 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
if (!file.exists()) { if (!file.exists()) {
file.mkdirs(); file.mkdirs();
} }
} }
private PermissionDialog permissionDialog; private PermissionDialog permissionDialog;
@@ -512,15 +562,10 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
// 最后一步之前检测视频和头像是否有变化 // 最后一步之前检测视频和头像是否有变化
private void editProfile(String albums) { private void editProfile(String albums) {
if (videoFile != null && videoUrl == null && videoCoverUrl == null) { /*if (videoFile != null && videoUrl == null && videoCoverUrl == null) {
uploadVideo(albums); uploadVideo(albums);
return; return;
} }*/
if (avatarPath != null && avatarUrl == null) {
//uploadAvatar
uploadAvatar(albums);
return;
}
if (mUserInfo == null) { if (mUserInfo == null) {
return; return;
} }
@@ -534,7 +579,9 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
map.put("gender", mUserInfo.getGender() + ""); map.put("gender", mUserInfo.getGender() + "");
map.put("avatar", avatarUrl); map.put("avatar", avatarUrl);
map.put("city", mCityId); map.put("city", mCityId);
map.put("job", job); map.put("job", mJob.getText().toString());
map.put("height", height);
map.put("school", settings_info_edit_school.getText().toString());
map.put("birthday", mBirthDay.getText().toString()); map.put("birthday", mBirthDay.getText().toString());
map.put("del_video", del_video); map.put("del_video", del_video);
if (videoUrl != null) { if (videoUrl != null) {
@@ -604,11 +651,26 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} else if (view == mConfirmButton) { } else if (view == mConfirmButton) {
submit(); submit();
} else if (view == mJobLayout) { } else if (view == mJobLayout) {
pvOptions.show(); //pvOptions.show();
Intent intent = new Intent(this, PersonalJobActivity.class);
intent.putExtra("job", mJob.getText());
startActivityForResult(intent, JOB_REQUEST);
} else if (view == mSignLayout) { } else if (view == mSignLayout) {
Intent intent = new Intent(this, PersonalSignatureActivity.class); Intent intent = new Intent(this, PersonalSignatureActivity.class);
intent.putExtra("signature", mSign.getText()); intent.putExtra("signature", mSign.getText());
startActivityForResult(intent, SIGNATURE_REQUEST); startActivityForResult(intent, SIGNATURE_REQUEST);
}else if(view == photosBtn){
Intent intent = new Intent(this, PhotoListTwoActivity.class);
if(!TextUtils.isEmpty(mOldalbum)){
intent.putExtra("album", mOldalbum);
}
startActivityForResult(intent,206);
}else if(view == settings_info_edit_xx_layout){
Intent intent = new Intent(this, PersonalSchoolActivity.class);
intent.putExtra("school", settings_info_edit_school.getText().toString());
startActivityForResult(intent, SCHOOL_REQUEST);
}else if(view == settings_info_edit_height_layout){
pvHeighttions.show();
} }
} }
@@ -636,7 +698,7 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
}); });
} }
void uploadAvatar(String albums) { void uploadAvatar(String avatarPath) {
UploadFile uploadFile = new UploadFile(System.currentTimeMillis() + ".jpg", avatarPath); UploadFile uploadFile = new UploadFile(System.currentTimeMillis() + ".jpg", avatarPath);
UploadFile[] files = new UploadFile[]{uploadFile}; UploadFile[] files = new UploadFile[]{uploadFile};
DynamicsManager.uploadImage(this, files, "album", DynamicsManager.uploadImage(this, files, "album",
@@ -644,7 +706,7 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
@Override @Override
public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) { public void onSuccess(BaseActivity activity, List<UploadImageBean> result, String message) {
avatarUrl = result.get(0).getUrl(); avatarUrl = result.get(0).getUrl();
editProfile(albums); //editProfile(albums);
} }
@Override @Override
@@ -725,24 +787,29 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
*/ */
private void updateData() { private void updateData() {
boolean hasPhoto = false; boolean hasPhoto = false;
for (String path : mPhotoDataList) { /*for (String path : mPhotoDataList) {
if (path.equals("") || path.equals("selector")) { if (path.equals("") || path.equals("selector")) {
continue; continue;
} }
hasPhoto = true;
}*/
if(!TextUtils.isEmpty(album)){
hasPhoto = true; hasPhoto = true;
} }
if (!hasPhoto) { if (!hasPhoto) {
editProfile(null); editProfile(null);
} else { } else {
new Thread(new Runnable() { /* new Thread(new Runnable() {
@Override @Override
public void run() { public void run() {
compressAndUpload(); compressAndUpload();
} }
}).start(); }).start();*/
editProfile(album);
} }
} }
@@ -789,14 +856,36 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
int month = calendar.get(Calendar.MONTH) + 1; int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DATE); int day = calendar.get(Calendar.DATE);
int year = calendar.get(Calendar.YEAR); int year = calendar.get(Calendar.YEAR);
mBirthDay.setText(year + "-" + month + "-" + day + " ");
String mm = "";
if(String.valueOf(month).length() == 1) {
mm = "0"+month;
}else {
mm = month+"";
}
String dd = "";
if(String.valueOf(day).length() == 1) {
dd = "0"+day;
}else {
dd = day+"";
}
mBirthDay.setText(year + "-" + mm + "-" + dd);
int age = calculateAge(mBirthDay.getText().toString().trim());
String zodiac = getZodiac(mBirthDay.getText().toString().trim());
settings_info_edit_age.setText(age+"");
settings_info_edit_xz.setText(zodiac);
} }
}).setRangDate(startCalendar, endCalendar).build(); }).setRangDate(startCalendar, endCalendar).build();
mAgePicker.setDate(endCalendar); mAgePicker.setDate(endCalendar);
initOptionPicker(); //initOptionPicker();
} }
int progress = 0;
public void getUserInfo() { public void getUserInfo() {
SettingManager.getHomeUser(this, new HttpUiCallBack<UserHomeBean>() { SettingManager.getHomeUser(this, new HttpUiCallBack<UserHomeBean>() {
@Override @Override
@@ -810,7 +899,13 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
videoCoverImageView.setVisibility(View.VISIBLE); videoCoverImageView.setVisibility(View.VISIBLE);
info_video_delete.setVisibility(View.VISIBLE); info_video_delete.setVisibility(View.VISIBLE);
videoStatusLabel.setVisibility(View.GONE); videoStatusLabel.setVisibility(View.GONE);
videoCoverImageView.setImageURI(Constans.IMAGE_URL + result.getUserinfo().getVideo_cover_url()); videoCoverImageView.setImageURI(StrU.getResourcePath(result.getUserinfo().getVideo_cover_url(), activity));
/*RequestOptions requestOptions = new RequestOptions()
.centerCrop()
.override(100, 100);
Glide.with(InfoEditActivity.this)
.load(StrU.getResourcePath(result.getUserinfo().getVideo_cover_url(), InfoEditActivity.this))
.apply(requestOptions).into(videoCoverImageView);*/
videoCoverUrl = result.getUserinfo().getVideo_cover_url(); videoCoverUrl = result.getUserinfo().getVideo_cover_url();
videoUrl = result.getUserinfo().getVideo_url(); videoUrl = result.getUserinfo().getVideo_url();
} }
@@ -821,6 +916,11 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
//旧生日初始化 //旧生日初始化
mOldBirthday = result.getUserinfo().getBirthday(); mOldBirthday = result.getUserinfo().getBirthday();
mBirthDay.setText(result.getUserinfo().getBirthday()); mBirthDay.setText(result.getUserinfo().getBirthday());
int age = calculateAge(mOldBirthday);
settings_info_edit_age.setText(age+"");
String zodiac = getZodiac(mOldBirthday);
settings_info_edit_xz.setText(zodiac);
//旧城市初始化 //旧城市初始化
mOldCity = result.getUserinfo().getCity(); mOldCity = result.getUserinfo().getCity();
mCity.setText(result.getUserinfo().getCity()); mCity.setText(result.getUserinfo().getCity());
@@ -834,15 +934,39 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
mNickname_tip = result.getUserinfo().getNickname_tip(); mNickname_tip = result.getUserinfo().getNickname_tip();
mEdit_nickname_tip = result.getUserinfo().getEdit_nickname_tip(); mEdit_nickname_tip = result.getUserinfo().getEdit_nickname_tip();
if(result.getUserinfo().getGender() == 1) {
settings_info_edit_gender.setText("");
}else {
settings_info_edit_gender.setText("");
}
mOldHeight = result.getUserinfo().getHeight()+"";
if(result.getUserinfo().getHeight() > 0) {
settings_info_edit_height.setText(result.getUserinfo().getHeight() + "CM");
}
mOldSchool = result.getUserinfo().getSchool();
settings_info_edit_school.setText(result.getUserinfo().getSchool());
List<String> album_list = result.getUserinfo().getAlbum_list(); List<String> album_list = result.getUserinfo().getAlbum_list();
mRequestArray.addAll(album_list); mRequestArray.addAll(album_list);
int size = album_list.size(); int size = album_list.size();
if (size > 0) { if (size > 0) {
photosImageView.setImageURI(StrU.getResourcePath(album_list.get(0), activity));
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
mPhotoDataList.set(i, album_list.get(i)); mPhotoDataList.set(i, album_list.get(i));
mOldPhotoDataList.set(i, album_list.get(i)); mOldPhotoDataList.set(i, album_list.get(i));
String str = album_list.get(i);
stringBuilder.append(str);
if (i < size - 1) {
stringBuilder.append(",");
} }
}
mOldalbum = stringBuilder.toString();
if (size < 6) { if (size < 6) {
mPhotoDataList.set(size, "selector"); mPhotoDataList.set(size, "selector");
mOldPhotoDataList.set(size, "selector"); mOldPhotoDataList.set(size, "selector");
@@ -852,18 +976,22 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} }
} }
//职业 //职业
if (!TextUtils.isEmpty(result.getUserinfo().getJob())) { /*if (!TextUtils.isEmpty(result.getUserinfo().getJob())) {
job = result.getUserinfo().getJob(); job = result.getUserinfo().getJob();
} else { } else {
job = "自由职业-自由职业"; job = "自由职业-自由职业";
} }*/
List<String> jobList = Arrays.asList(job.split("-")); /* List<String> jobList = Arrays.asList(job.split("-"));
if (jobList.size() > 0) { if (jobList.size() > 0) {
mJob.setText(jobList.get(jobList.size() - 1)); mJob.setText(jobList.get(jobList.size() - 1));
} } else {
mJob.setText(jobList.get(0));
}*/
mJob.setText(result.getUserinfo().getJob());
if (result.getIp_info() != null) { if (result.getIp_info() != null) {
settings_info_edit_ip_city_layout.setVisibility(View.VISIBLE); settings_info_edit_ip_city_layout.setVisibility(View.GONE);
settings_info_edit_ip_city.setText(!TextUtils.isEmpty(result.getIp_info().getProvince()) ? result.getIp_info().getProvince() : !TextUtils.isEmpty(result.getIp_info().getCity()) ? result.getIp_info().getCity() : "未知"); settings_info_edit_ip_city.setText(!TextUtils.isEmpty(result.getIp_info().getProvince()) ? result.getIp_info().getProvince() : !TextUtils.isEmpty(result.getIp_info().getCity()) ? result.getIp_info().getCity() : "未知");
if (mCityId == null) { if (mCityId == null) {
if (!TextUtils.isEmpty(result.getIp_info().getCity())) { if (!TextUtils.isEmpty(result.getIp_info().getCity())) {
@@ -874,6 +1002,45 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
mCity.setText(!TextUtils.isEmpty(result.getIp_info().getProvince()) ? result.getIp_info().getProvince() : !TextUtils.isEmpty(result.getIp_info().getCity()) ? result.getIp_info().getCity() : "未知"); mCity.setText(!TextUtils.isEmpty(result.getIp_info().getProvince()) ? result.getIp_info().getProvince() : !TextUtils.isEmpty(result.getIp_info().getCity()) ? result.getIp_info().getCity() : "未知");
} }
} }
if(!TextUtils.isEmpty(mUserInfo.getNickname())){
progress = progress + 10;
}
if(!TextUtils.isEmpty(mUserInfo.getAvatar())){
progress = progress + 10;
}
if(mUserInfo.getAlbum_list() != null && mUserInfo.getAlbum_list().size() > 0){
progress = progress + 10;
}
if(mUserInfo.getGender() == 1 || mUserInfo.getGender() == 2) {
progress = progress + 10;
}
if(!TextUtils.isEmpty(mUserInfo.getBirthday())){
progress = progress + 20;
}
if(mUserInfo.getHeight() != 0){
progress = progress + 10;
}
if(!TextUtils.isEmpty(mUserInfo.getJob())){
progress = progress + 10;
}
if(!TextUtils.isEmpty(mUserInfo.getSchool())){
progress = progress + 10;
}
if(!TextUtils.isEmpty(mUserInfo.getSignature())){
progress = progress + 10;
}
tv_finish_bfb.setText(progress+"%");
progress_bar_bfb.setProgress(progress);
} }
@Override @Override
@@ -956,7 +1123,8 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} else if (requestCode == VIDEO_COVER_REQUEST) {//封面视频 } else if (requestCode == VIDEO_COVER_REQUEST) {//封面视频
if (data != null) { if (data != null) {
String videoPath = data.getStringExtra("VideoPath"); String videoPath = data.getStringExtra("VideoPath");
if (ConstUrl.LOGDEBUG) Log.i(TAG, "onActivityResult: videoPath----------->" + videoPath); if (ConstUrl.LOGDEBUG)
Log.i(TAG, "onActivityResult: videoPath----------->" + videoPath);
String md5 = MD5.getStreamMD5(videoPath); String md5 = MD5.getStreamMD5(videoPath);
String filename = md5 + "." + FileUtil.getExtensionName(videoPath); String filename = md5 + "." + FileUtil.getExtensionName(videoPath);
@@ -1009,6 +1177,29 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
isSignature = true; isSignature = true;
mSign.setText(city); mSign.setText(city);
} }
}else if (requestCode == JOB_REQUEST && resultCode == RESULT_OK) {
if (null != data) {
String job = data.getStringExtra("job");
isJob = true;
mJob.setText(job);
}
}else if (requestCode == SCHOOL_REQUEST && resultCode == RESULT_OK) {
if (null != data) {
String school = data.getStringExtra("school");
isSchool = true;
settings_info_edit_school.setText(school);
}
}else if(requestCode == 206){
if(data != null) {
album = data.getStringExtra("album");
mOldalbum = album;
if(!TextUtils.isEmpty(album) && album.contains(",")) {
String[] split = album.split(",");
if (split.length > 0) {
photosImageView.setImageURI(ConstUrl.IMAGE_URL + split[0]);
}
}
}
} }
} }
@@ -1018,6 +1209,7 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
this.avatarPath = path; this.avatarPath = path;
avatarUrl = null; avatarUrl = null;
avatarImageView.setImageURI("file://" + this.avatarPath); avatarImageView.setImageURI("file://" + this.avatarPath);
uploadAvatar(avatarPath);
return; return;
} }
if (null != path && !TextUtils.isEmpty(path)) { if (null != path && !TextUtils.isEmpty(path)) {
@@ -1060,15 +1252,24 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
} }
private boolean isSignature = false; private boolean isSignature = false;
private boolean isJob = false;
private boolean isSchool = false;
private void isChange() { private void isChange() {
boolean isPhoto = photoChange(mPhotoDataList, mOldPhotoDataList); boolean isPhoto = !TextUtils.isEmpty(album);//photoChange(mPhotoDataList, mOldPhotoDataList);
boolean isName = mOldNickName.equals(mNickName.getText()); boolean isName = mOldNickName.equals(mNickName.getText());
boolean isBirthday = mOldBirthday.equals(mBirthDay.getText()); boolean isBirthday = mOldBirthday.equals(mBirthDay.getText());
boolean isCity = mOldCity.equals(mCity.getText()); //boolean isCity = mOldCity.equals(mCity.getText());
boolean avatarChange = TextUtils.isEmpty(avatarPath); boolean avatarChange = TextUtils.isEmpty(avatarPath);
boolean isJob = TextUtils.equals(mOldJob, job); String height = "";
if (isName && isBirthday && isCity && avatarChange && isJob && videoFile == null && !isSignature) { //没有改变 if(TextUtils.isEmpty(settings_info_edit_height.getText().toString())){
height = "0CM";
}else {
height = settings_info_edit_height.getText().toString();
}
boolean isHeight = mOldHeight.equals(height.replace("CM",""));
//boolean isSchool = mOldSchool.equals(settings_info_edit_school.getText().toString());
if (isName && isBirthday && isHeight && avatarChange && !isJob && !isSchool && videoFile == null && !isSignature) { //没有改变
if (!isPhoto) { if (!isPhoto) {
finish(); finish();
} else { } else {
@@ -1114,21 +1315,21 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
private List<String> options1Items = new ArrayList<>(); private List<String> options1Items = new ArrayList<>();
private ArrayList<ArrayList<String>> options2Items = new ArrayList<>(); private ArrayList<ArrayList<String>> options2Items = new ArrayList<>();
private void initOptionPicker() {//条件选择器初始化 /* private void initOptionPicker() {//条件选择器初始化
options1Items.clear(); options1Items.clear();
options2Items.clear(); options2Items.clear();
String s = SysSPUtils.getString(this, ConsUser.PROFILE); String s = SysSPUtils.getString(this, ConsUser.PROFILE);
Gson gson = new Gson(); Gson gson = new Gson();
GlobalConfigBean.ProfileBean bean = gson.fromJson(s, GlobalConfigBean.ProfileBean.class); GlobalConfigBean.ProfileBean bean = gson.fromJson(s, GlobalConfigBean.ProfileBean.class);
if(bean != null && bean.getJob_list().size() > 0) { if (bean != null && bean.getJob_list().size() > 0) {
for (int i = 0; i < bean.getJob_list().size(); i++) { for (int i = 0; i < bean.getJob_list().size(); i++) {
options1Items.add(bean.getJob_list().get(i).getName()); options1Items.add(bean.getJob_list().get(i).getName());
options2Items.add(bean.getJob_list().get(i).getMenu()); options2Items.add(bean.getJob_list().get(i).getMenu());
} }
} }
/** *//**
* 注意 :如果是三级联动的数据(省市区等),请参照 JsonDataActivity 类里面的写法。 * 注意 :如果是三级联动的数据(省市区等),请参照 JsonDataActivity 类里面的写法。
*/ *//*
pvOptions = new OptionsPickerBuilder(this, new OnOptionsSelectListener() { pvOptions = new OptionsPickerBuilder(this, new OnOptionsSelectListener() {
@Override @Override
public void onOptionsSelect(int options1, int options2, int options3, View v) { public void onOptionsSelect(int options1, int options2, int options3, View v) {
@@ -1158,7 +1359,95 @@ public class InfoEditActivity extends BaseActivity implements View.OnClickListen
if (options1Items.size() > 0 && options2Items.size() > 0) { if (options1Items.size() > 0 && options2Items.size() > 0) {
pvOptions.setPicker(options1Items, options2Items);//二级选择器 pvOptions.setPicker(options1Items, options2Items);//二级选择器
} }
}*/
@SuppressLint("NewApi")
public int calculateAge(String birthDateString) {
LocalDate birthDate = LocalDate.parse(birthDateString, FORMATTER);
LocalDate today = LocalDate.now();
int age = Period.between(birthDate, today).getYears();
return age;
} }
@SuppressLint("NewApi")
private final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd");
@SuppressLint("NewApi")
public String getZodiac(String birthDateString) {
LocalDate birthDate = LocalDate.parse(birthDateString, FORMATTER);
int month = birthDate.getMonthValue();
int day = birthDate.getDayOfMonth();
String chinese;
if ((month == 1 && day >= 20) || (month == 2 && day <= 18)) {
chinese = "水瓶座";
} else if ((month == 2 && day >= 19) || (month == 3 && day <= 20)) {
chinese = "双鱼座";
} else if ((month == 3 && day >= 21) || (month == 4 && day <= 19)) {
chinese = "白羊座";
} else if ((month == 4 && day >= 20) || (month == 5 && day <= 20)) {
chinese = "金牛座";
} else if ((month == 5 && day >= 21) || (month == 6 && day <= 20)) {
chinese = "双子座";
} else if ((month == 6 && day >= 21) || (month == 7 && day <= 22)) {
chinese = "巨蟹座";
} else if ((month == 7 && day >= 23) || (month == 8 && day <= 22)) {
chinese = "狮子座";
} else if ((month == 8 && day >= 23) || (month == 9 && day <= 22)) {
chinese = "处女座";
} else if ((month == 9 && day >= 23) || (month == 10 && day <= 22)) {
chinese = "天秤座";
} else if ((month == 10 && day >= 23) || (month == 11 && day <= 21)) {
chinese = "天蝎座";
} else if ((month == 11 && day >= 22) || (month == 12 && day <= 21)) {
chinese = "射手座";
} else {
chinese = "摩羯座";
}
return chinese;
}
public List<String> heightLists=new ArrayList<>();
private OptionsPickerView pvHeighttions;
private void initHeightOptionPicker() {//条件选择器初始化
heightLists.clear();
for (int i = 160; i < 191; i++) {
heightLists.add(i+"CM");
}
/**
* 注意 :如果是三级联动的数据(省市区等),请参照 JsonDataActivity 类里面的写法。
*/
pvHeighttions = new OptionsPickerBuilder(this, new OnOptionsSelectListener() {
@Override
public void onOptionsSelect(int options1, int options2, int options3, View v) {
//返回的分别是三个级别的选中位置
if (heightLists.size() > 0) {
String occupation = heightLists.get(options1);
settings_info_edit_height.setText(occupation);
height = heightLists.get(options1).replace("CM","");
}
}
})
.setTitleText("身高")
.setSelectOptions(0, 0)//默认选中项
.setTitleBgColor(Color.WHITE)
.isRestoreItem(true)//切换时是否还原,设置默认选中第一项。
.isCenterLabel(false) //是否只显示中间选中项的label文字false则每项item全部都带有label。
.setOptionsSelectChangeListener(new OnOptionsSelectChangeListener() {
@Override
public void onOptionsSelectChanged(int options1, int options2, int options3) {
String str = "options1: " + options1 + "\noptions2: " + options2 + "\noptions3: " + options3;
//Toast.makeText(MainActivity.this, str, Toast.LENGTH_SHORT).show();
}
})
.build();
if (heightLists.size() > 0) {
pvHeighttions.setPicker(heightLists);//二级选择器
}
}
} }

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

@@ -6,6 +6,7 @@ import android.content.ClipboardManager;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
@@ -41,6 +42,9 @@ public class InvitationActivity extends BaseActivity implements
private String qrImageUrl; private String qrImageUrl;
ActivityInvitationBinding binding; ActivityInvitationBinding binding;
private List<String> posterList; private List<String> posterList;
private TextView tv_zg;
private TextView tv_my_fc_bl;
private TextView tv_rule_txt;
@Override @Override
@@ -48,8 +52,15 @@ public class InvitationActivity extends BaseActivity implements
super.onCreate(onSavedInstance); super.onCreate(onSavedInstance);
binding = ActivityInvitationBinding.inflate(getLayoutInflater()); binding = ActivityInvitationBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot()); setContentView(binding.getRoot());
setDefaultTitle(); // setDefaultTitle();
setTitleName("邀请好友"); // setTitleName("邀请好友");
setRightCustomTextTitle("邀请好友", "邀请明细", new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(InvitationActivity.this, InviteListActivity.class);
startActivity(intent);
}
});
// View lin = binding.holderView; // View lin = binding.holderView;
// ImageView bgImageView = findViewById(R.id.bgImageView); // ImageView bgImageView = findViewById(R.id.bgImageView);
// lin.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { // lin.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@@ -77,6 +88,10 @@ public class InvitationActivity extends BaseActivity implements
// }); // });
tv_zg = findViewById(R.id.tv_zg);
tv_my_fc_bl = findViewById(R.id.tv_my_fc_bl);
tv_rule_txt = findViewById(R.id.tv_rule_txt);
mShareDialog = new BottomShareDialog(this, R.style.SelectiveDialog); mShareDialog = new BottomShareDialog(this, R.style.SelectiveDialog);
mShareDialog.setOnButtonSelectListener(this); mShareDialog.setOnButtonSelectListener(this);
binding.ruleBtn.setOnClickListener(new View.OnClickListener() { binding.ruleBtn.setOnClickListener(new View.OnClickListener() {
@@ -94,17 +109,24 @@ public class InvitationActivity extends BaseActivity implements
startActivity(intent); startActivity(intent);
} }
}); });
binding.shareLinkBtn.setOnClickListener(new View.OnClickListener() { binding.shareLinkBtn2.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
mShareDialog.show(); mShareDialog.show();
} }
}); });
/*binding.tv_share_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mShareDialog.show();
}
});*/
if (UserManager.getUserInfo().getGender() == 2) { if (UserManager.getUserInfo().getGender() == 2) {
binding.tvManTip.setVisibility(View.GONE); binding.tvManTip.setVisibility(View.GONE);
binding.menTip1.setVisibility(View.GONE); binding.menTip1.setVisibility(View.GONE);
} }
binding.sharePosterBtn.setOnClickListener(new View.OnClickListener() { binding.sharePosterBtn2.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
showPoster(); showPoster();
@@ -200,11 +222,16 @@ public class InvitationActivity extends BaseActivity implements
binding.firstLabel.setText(result.getReward().getFirst()); binding.firstLabel.setText(result.getReward().getFirst());
binding.secondLabel.setText(result.getReward().getSecond()); binding.secondLabel.setText(result.getReward().getSecond());
binding.thirdLabel.setText(result.getReward().getThird()); binding.thirdLabel.setText(result.getReward().getThird());
tv_zg.setText("最高" + result.getMax_divide() +"分成");
tv_my_fc_bl.setText(result.getPermanent_divide());
binding.fourLabel.setText(result.getReward().getFour() + ""); binding.fourLabel.setText(result.getReward().getFour() + "");
posterList = result.getAvatar_list(); posterList = result.getAvatar_list();
binding.totalPeopleLabel.setText(result.getTotal().getTotal_invite() + ""); binding.totalPeopleLabel.setText(result.getTotal().getTotal_invite() + "");
binding.totalRewardLabel.setText(result.getTotal().getRecharge_count() + ""); binding.totalRewardLabel.setText(result.getTotal().getTotal_commission_coin() + "");
binding.totalTiChengLabel.setText(result.getTotal().getAuth_count() + ""); binding.totalTiChengLabel.setText(result.getTotal().getAuth_count() + "");
tv_rule_txt.setText(result.getInvite_rule());
mShareData = result.getShare(); mShareData = result.getShare();
qrImageUrl = ConstUrl.IMAGE_URL + result.getQrcode(); qrImageUrl = ConstUrl.IMAGE_URL + result.getQrcode();
if (result.getShow_invite_list() == 1) { if (result.getShow_invite_list() == 1) {

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

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