Merge branch 'master' into dev_proguard

This commit is contained in:
2023-06-05 16:42:18 +08:00
158 changed files with 6013 additions and 788 deletions

View File

@@ -179,6 +179,10 @@ public class Constants {
public static final String CUSTOM_FULL_SERVICE_NOTIFY = "customFullServiceNotify";//全服通知
public static final String XYD_COMPLETE = "XydComplete";//心愿单完成通知
public static final String WISH_LIST_PROGRESS = "wishListProgress";//心愿单进度通知
public static final String LIVE_VOTE_CREATE="createVote";
public static final String LIVE_VOTE_UPDATE="updateVote";
public static final String LIVE_VOTE_END="endVote";
public static final String LIVE_PK_END="endPK";//结束PK以这个PK获取到的参数为准
//游戏socket
public static final String SOCKET_GAME_ZJH = "startGame";//炸金花

View File

@@ -82,7 +82,6 @@ public class WebViewActivity extends AbsActivity {
ft_title = (FrameLayout) findViewById(R.id.ft_title);
v_spacing = (View) findViewById(R.id.v_spacing);
mWebView = findViewById(R.id.webView);
AndroidBug5497Workaround.assistActivity(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
params.topMargin = DpUtil.dp2px(1);
@@ -110,10 +109,11 @@ public class WebViewActivity extends AbsActivity {
mWebView.loadUrl("javascript:goAnchorTab()");
}
//真实屏幕高度-(ft_title的高度+导航栏高度)
int height = DeviceUtils.getScreenRealHeight(mContext) - DpUtil.dp2px(72) - getCurrentNavigationBarHeight(mContext);
//屏蔽掉是因为在线客服页面 AndroidBug5497Workaround会失效
/* int height = DeviceUtils.getScreenRealHeight(mContext) - DpUtil.dp2px(72) - getCurrentNavigationBarHeight(mContext);
if (!navigationGestureEnabled(mContext)) {
view.loadUrl("javascript:window.androidObject.setHeight(" + height + ",0,false)");
}
}*/
}
});
@@ -171,6 +171,7 @@ public class WebViewActivity extends AbsActivity {
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}
mWebView.loadUrl(url);
AndroidBug5497Workaround.assistActivity(this);
if (Constants.myIntoIndex == 2) {
ft_title.setVisibility(View.GONE);

View File

@@ -1,6 +1,7 @@
package com.yunbao.common.adapter;
import android.content.Context;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -48,12 +49,22 @@ public class DrawerTaskAdapter extends RecyclerView.Adapter {
@Override
public int getItemCount() {
return 2;
if (child.size()>3){
return 3;
}else {
return child.size();
}
}
public void updateData(List<CustomSidebarChildModel> mChild) {
child.clear();
child.addAll(mChild);
// for (CustomSidebarChildModel childModel : mChild) {
// if (TextUtils.equals("1", childModel.getIsShow())) {
// child.add(childModel);
// }
// }
notifyDataSetChanged();
}
}

View File

@@ -0,0 +1,99 @@
package com.yunbao.common.bean;
import com.google.gson.annotations.SerializedName;
import java.util.List;
public class BlindBoxInfoModel extends BaseModel {
/**
* "info":[{"item_name":["麒麟勛章饰品","麒麟頭像框饰品","麒麟坐騎饰品","水晶项链礼物","夢幻水晶球礼物","心動泡泡礼物","蝴蝶少女礼物","金色唱片礼物","鑽石禮盒礼物","紙花船礼物"],"threshold_value":268,"threshold_dress_name":"麒麟坐騎","dress_threshold_value":0,"blind_box_type":1,"blind_box_id":1636},{"item_name":["金鳳勛章饰品","金鳳頭像框饰品","金鳳坐騎饰品","浪漫氣球礼物","捕夢網礼物","仙女棒礼物","藍寶石鈴鐺礼物","榮耀星礼物","童話屋礼物","夢幻許願池礼物"],"threshold_value":198,"threshold_dress_name":"金鳳坐騎","dress_threshold_value":0,"blind_box_type":2,"blind_box_id":1637},{"item_name":["神龍勛章饰品","神龍頭像框饰品","神龍坐騎饰品","水晶玫瑰礼物","sweet香水礼物","甜蜜熱氣球礼物","風鈴舞動礼物","音樂噴泉礼物","星空列車礼物","漂洋過海來看你礼物"],"threshold_value":128,"threshold_dress_name":"神龍坐騎","dress_threshold_value":0,"blind_box_type":3,"blind_box_id":1638}]
*/
@SerializedName("item_name")
private List<String> itemName;
@SerializedName("threshold_value")
private String thresholdValue = "0";
@SerializedName("threshold_dress_name")
private String thresholdDressName;
@SerializedName("dress_threshold_value")
private String dressThresholdValue;
@SerializedName("blind_box_type")
private String blindBoxType;
@SerializedName("blind_box_id")
private String blindBoxId;
@SerializedName("blind_box_swf")
private String blindBoxSwf;
@SerializedName("threshold_effect_src")
private String thresholdEffectSrc;
public String getThresholdEffectSrc() {
return thresholdEffectSrc;
}
public BlindBoxInfoModel setThresholdEffectSrc(String thresholdEffectSrc) {
this.thresholdEffectSrc = thresholdEffectSrc;
return this;
}
public String getBlindBoxSwf() {
return blindBoxSwf;
}
public BlindBoxInfoModel setBlindBoxSwf(String blindBoxSwf) {
this.blindBoxSwf = blindBoxSwf;
return this;
}
public List<String> getItemName() {
return itemName;
}
public BlindBoxInfoModel setItemName(List<String> itemName) {
this.itemName = itemName;
return this;
}
public String getThresholdValue() {
return thresholdValue;
}
public BlindBoxInfoModel setThresholdValue(String thresholdValue) {
this.thresholdValue = thresholdValue;
return this;
}
public String getThresholdDressName() {
return thresholdDressName;
}
public BlindBoxInfoModel setThresholdDressName(String thresholdDressName) {
this.thresholdDressName = thresholdDressName;
return this;
}
public String getDressThresholdValue() {
return dressThresholdValue;
}
public BlindBoxInfoModel setDressThresholdValue(String dressThresholdValue) {
this.dressThresholdValue = dressThresholdValue;
return this;
}
public String getBlindBoxType() {
return blindBoxType;
}
public BlindBoxInfoModel setBlindBoxType(String blindBoxType) {
this.blindBoxType = blindBoxType;
return this;
}
public String getBlindBoxId() {
return blindBoxId;
}
public BlindBoxInfoModel setBlindBoxId(String blindBoxId) {
this.blindBoxId = blindBoxId;
return this;
}
}

View File

@@ -31,7 +31,18 @@ public class CustomSidebarChildModel extends BaseModel {
@SerializedName("activity_id")
private String activityId;
@SerializedName("flag")
private String flag;
private String flag = "";
@SerializedName("is_show")
private String isShow;
public String getIsShow() {
return isShow;
}
public CustomSidebarChildModel setIsShow(String isShow) {
this.isShow = isShow;
return this;
}
public String getFlag() {
return flag;

View File

@@ -104,12 +104,22 @@ public class EnterRoomInfoModel extends BaseModel {
private String anchorGoodnum;
@SerializedName("jackpot_level")
private String jackpotLevel="-1";
@SerializedName("live_vote")
private LiveRoomVoteModel voteModel;
public String getJackpotLevel() {
return jackpotLevel;
}
public LiveRoomVoteModel getVoteModel() {
return voteModel;
}
public void setVoteModel(LiveRoomVoteModel voteModel) {
this.voteModel = voteModel;
}
public EnterRoomInfoModel setJackpotLevel(String jackpotLevel) {
this.jackpotLevel = jackpotLevel;
return this;
@@ -488,6 +498,9 @@ public class EnterRoomInfoModel extends BaseModel {
}
public String getIsleave() {
if(StringUtil.isEmpty(isleave)){
isleave="0";
}
return isleave;
}

View File

@@ -18,7 +18,7 @@ public class LiveGiftBean {
// public static final int MARK_LUCK = 3;
private int id;
private int type;//0 普通礼物 1是豪华礼物
private int type;//0 普通礼物 1是贵族 2守护 3粉丝团 5盲盒礼物
private int mark;// 0 普通 1热门 2守护 3幸运
private String name;
private String price;
@@ -34,6 +34,17 @@ public class LiveGiftBean {
private String isweek;
private String end_time;
private String tag;
@JSONField(name = "blind_box_type")
private int blind_box_type = 0;
public int getBlind_box_type() {
return blind_box_type;
}
public LiveGiftBean setBlind_box_type(int blind_box_type) {
this.blind_box_type = blind_box_type;
return this;
}
public String getTag() {
return tag;

View File

@@ -0,0 +1,193 @@
package com.yunbao.common.bean;
import com.google.gson.annotations.SerializedName;
import com.yunbao.common.utils.StringUtil;
import com.yunbao.common.utils.WordUtil;
import java.util.List;
/**
* 主播创建投票
* {
* "live_vote_id": "20",
* "question_content": "123",
* "vote_end_time": 180,
* "option_content_first_num": 0,
* "option_content_second_num": 0,
* "users_id": []
* }
*/
public class LiveRoomVoteModel extends BaseModel {
@SerializedName("vote_status")
private int status;
@SerializedName("live_vote_id")
private String voteId;
@SerializedName("question_content")
private String content;
@SerializedName("vote_end_time")
private int time;
@SerializedName("option_content_first_num")
private int answer1Num;
@SerializedName("option_content_second_num")
private int answer2Num;
@SerializedName("users_id")
private List<String> userIds;
@SerializedName("option_content_first")
private String answer1;
@SerializedName("option_content_second")
private String answer2;
@SerializedName("result_zh")
private String resultZh;
@SerializedName("result_en")
private String resultEn;
@SerializedName("option_text")
private String optionText;
@SerializedName("option_content_key")
private String vote;
private String liveUid;
public String getLiveUid() {
return liveUid;
}
public void setLiveUid(String liveUid) {
this.liveUid = liveUid;
}
public String getAnswer1() {
return answer1;
}
public void setAnswer1(String answer1) {
this.answer1 = answer1;
}
public String getAnswer2() {
return answer2;
}
public void setAnswer2(String answer2) {
this.answer2 = answer2;
}
public String getVoteId() {
return voteId;
}
public void setVoteId(String voteId) {
this.voteId = voteId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public int getTime() {
return time;
}
public void setTime(int time) {
this.time = time;
}
public int getAnswer1Num() {
return answer1Num;
}
public void setAnswer1Num(int answer1Num) {
this.answer1Num = answer1Num;
}
public int getAnswer2Num() {
return answer2Num;
}
public void setAnswer2Num(int answer2Num) {
this.answer2Num = answer2Num;
}
public List<String> getUserIds() {
return userIds;
}
public void setUserIds(List<String> userIds) {
this.userIds = userIds;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getResult() {
return WordUtil.isNewZh() ? resultZh : resultEn;
}
public String getResultZh() {
return resultZh;
}
public void setResultZh(String resultZh) {
this.resultZh = resultZh;
}
public String getResultEn() {
return resultEn;
}
public void setResultEn(String resultEn) {
this.resultEn = resultEn;
}
public String getOptionText() {
return optionText;
}
public void setOptionText(String optionText) {
this.optionText = optionText;
}
@Override
public String toString() {
return "LiveRoomVoteModel{" +
"status=" + status +
", voteId='" + voteId + '\'' +
", content='" + content + '\'' +
", time=" + time +
", answer1Num=" + answer1Num +
", answer2Num=" + answer2Num +
", userIds=" + userIds +
", answer1='" + answer1 + '\'' +
", answer2='" + answer2 + '\'' +
", resultZh='" + resultZh + '\'' +
", resultEn='" + resultEn + '\'' +
", optionText='" + optionText + '\'' +
", vote='" + vote + '\'' +
", liveUid='" + liveUid + '\'' +
'}';
}
public String getVote() {
return vote;
}
public void setVote(String vote) {
this.vote = vote;
}
public boolean isVoteLeft() {
return vote.equals("option_content_first_num");
}
public boolean isVote() {
return !StringUtil.isEmpty(vote);
}
}

View File

@@ -50,7 +50,7 @@ public class UserBean implements Parcelable {
private String fans_pic;
private String gifticon;
private String department_name;
private String token_rong="";
private String token_rong = "";
private String noble_end_time;
private String slide;
private String users_type;
@@ -66,6 +66,17 @@ public class UserBean implements Parcelable {
private boolean randomPk;
//随机天梯排位赛PK img仅在主播PK时使用
private String mRankPkImgUrl;
//是否填写完整资料
private int user_info_complete;
public int getUserInfoComplete() {
return user_info_complete;
}
public UserBean seUserInfoComplete(int userInfoComplete) {
this.user_info_complete = userInfoComplete;
return this;
}
public boolean isRandomPk() {
return randomPk;
@@ -117,8 +128,8 @@ public class UserBean implements Parcelable {
}
public String getIs_bind() {
if(StringUtil.isEmpty(is_bind)){
is_bind="0";
if (StringUtil.isEmpty(is_bind)) {
is_bind = "0";
}
return is_bind;
}

View File

@@ -16,6 +16,9 @@ public abstract class AbsDialogPopupWindow extends BottomPopupView {
this.mContext = context;
}
/**
* <a href="https://github.com/li-xiaojun/XPopup/wiki/5.-%E5%B8%B8%E7%94%A8%E8%AE%BE%E7%BD%AE">参考配置</a>
*/
public abstract void buildDialog(XPopup.Builder builder);
public abstract int bindLayoutId();

View File

@@ -0,0 +1,142 @@
package com.yunbao.common.event;
import com.google.gson.annotations.SerializedName;
import com.yunbao.common.bean.BaseModel;
public class AllServerNotifyEvent extends BaseModel {
//礼物图标
@SerializedName("gifticon")
private String giftIcon;
//用户名
@SerializedName("userNiceName")
private String userNiceName;
//礼物名称
@SerializedName("giftname")
private String giftName;
//盲盒名称
@SerializedName("box_type_name")
private String boxTypeName;
//饰品名称
@SerializedName("dress_name")
private String dressName;
//区分礼物还是饰品 lw 1 sp 0
@SerializedName("gift_notification")
private String giftNotification;
//盲盒礼物ID
@SerializedName("blind_box_id")
private String blindBoxId;
//盲盒类型
@SerializedName("box_type")
private String boxType;
//饰品图片
@SerializedName("display_src")
private String displaySrc;
//主播名字
@SerializedName("ancherName")
private String anchorName;
public String getAnchorName() {
return anchorName;
}
public AllServerNotifyEvent setAnchorName(String anchorName) {
this.anchorName = anchorName;
return this;
}
public String getDisplaySrc() {
return displaySrc;
}
public AllServerNotifyEvent setDisplaySrc(String displaySrc) {
this.displaySrc = displaySrc;
return this;
}
public String getBoxType() {
return boxType;
}
public AllServerNotifyEvent setBoxType(String boxType) {
this.boxType = boxType;
return this;
}
public String getGiftIcon() {
return giftIcon;
}
public AllServerNotifyEvent setGiftIcon(String giftIcon) {
this.giftIcon = giftIcon;
return this;
}
public String getUserNiceName() {
return userNiceName;
}
public AllServerNotifyEvent setUserNiceName(String userNiceName) {
this.userNiceName = userNiceName;
return this;
}
public String getGiftName() {
return giftName;
}
public AllServerNotifyEvent setGiftName(String giftName) {
this.giftName = giftName;
return this;
}
public String getBoxTypeName() {
return boxTypeName;
}
public AllServerNotifyEvent setBoxTypeName(String boxTypeName) {
this.boxTypeName = boxTypeName;
return this;
}
public String getDressName() {
return dressName;
}
public AllServerNotifyEvent setDressName(String dressName) {
this.dressName = dressName;
return this;
}
public String getGiftNotification() {
return giftNotification;
}
public AllServerNotifyEvent setGiftNotification(String giftNotification) {
this.giftNotification = giftNotification;
return this;
}
public String getBlindBoxId() {
return blindBoxId;
}
public AllServerNotifyEvent setBlindBoxId(String blindBoxId) {
this.blindBoxId = blindBoxId;
return this;
}
@Override
public String toString() {
return "\n" + "AllServerNotifyEvent{" + "\n" +
"giftIcon='" + giftIcon + '\'' + "\n" +
", userNiceName='" + userNiceName + '\'' + "\n" +
", giftName='" + giftName + '\'' + "\n" +
", boxTypeName='" + boxTypeName + '\'' + "\n" +
", dressName='" + dressName + '\'' + "\n" +
", giftNotification='" + giftNotification + '\'' + "\n" +
", blindBoxId='" + blindBoxId + '\'' + "\n" +
", boxType='" + boxType + '\'' + "\n" +
", displaySrc='" + displaySrc + '\'' + "\n" +
'}' + "\n" ;
}
}

View File

@@ -0,0 +1,16 @@
package com.yunbao.common.event;
import com.yunbao.common.bean.BaseModel;
public class CompleteInformationEvent extends BaseModel {
private boolean completeInformation = false;
public boolean isCompleteInformation() {
return completeInformation;
}
public CompleteInformationEvent setCompleteInformation(boolean completeInformation) {
this.completeInformation = completeInformation;
return this;
}
}

View File

@@ -0,0 +1,559 @@
package com.yunbao.common.event;
import com.google.gson.annotations.SerializedName;
import com.yunbao.common.bean.BaseModel;
public class SendBlindGiftEvent extends BaseModel {
@SerializedName("uid")
private String uid;
@SerializedName("giftid")
private String giftid;
@SerializedName("type")
private String type;
@SerializedName("mark")
private String mark;
@SerializedName("wrap_gift_num")
private String wrapGiftNum;
@SerializedName("giftcount")
private String giftcount;
@SerializedName("totalcoin")
private String totalcoin;
@SerializedName("giftname")
private String giftname;
@SerializedName("giftnameen")
private String giftnameen;
@SerializedName("gifticon")
private String gifticon;
@SerializedName("swftime")
private String swftime;
@SerializedName("swftype")
private String swftype;
@SerializedName("swf")
private String swf;
@SerializedName("level")
private String level;
@SerializedName("medal_name")
private String medalName;
@SerializedName("medal_level")
private String medalLevel;
@SerializedName("coin")
private String coin;
@SerializedName("gold")
private String gold;
@SerializedName("votestotal")
private String votestotal;
@SerializedName("medalRankNum")
private String medalRankNum;
@SerializedName("ispk")
private String ispk;
@SerializedName("pkuid")
private String pkuid;
@SerializedName("pkuid1")
private String pkuid1;
@SerializedName("pkuid2")
private String pkuid2;
@SerializedName("pktotal1")
private String pktotal1;
@SerializedName("pktotal2")
private String pktotal2;
@SerializedName("active_total")
private String activeTotal;
@SerializedName("blind_box_status")
private String blindBoxStatus;
@SerializedName("gift_id")
private String giftId;
@SerializedName("gift_type")
private String giftType;
@SerializedName("needcoin")
private String needcoin;
@SerializedName("gift_msg")
private String giftMsg;
@SerializedName("gift_colour")
private String giftColour;
@SerializedName("box_type")
private String boxType;
@SerializedName("box_type_name")
private String boxTypeName;
@SerializedName("action")
private String action;
@SerializedName("dress_notification")
private String dressNotification;
@SerializedName("dress_type")
private Object dressType;
@SerializedName("dress_id")
private Object dressId;
@SerializedName("dress_name")
private String dressName;
@SerializedName("display_src")
private Object displaySrc;
@SerializedName("effect_src")
private Object effectSrc;
@SerializedName("dress_description")
private Object dressDescription;
@SerializedName("noble_dress")
private Object nobleDress;
@SerializedName("dress_msg")
private String dressMsg;
@SerializedName("dress_colour")
private String dressColour;
@SerializedName("dress_threshold_value")
private String dressThresholdValue;
@SerializedName("threshold_value")
private String thresholdValue;
@SerializedName("live_gift_notify")
private String liveGiftNotify;
@SerializedName("userNiceName")
private String userNiceName;
public String getUserNiceName() {
return userNiceName;
}
public String getThresholdValue() {
return thresholdValue;
}
public SendBlindGiftEvent setThresholdValue(String thresholdValue) {
this.thresholdValue = thresholdValue;
return this;
}
public SendBlindGiftEvent setUserNiceName(String userNiceName) {
this.userNiceName = userNiceName;
return this;
}
public String getUid() {
return uid;
}
public SendBlindGiftEvent setUid(String uid) {
this.uid = uid;
return this;
}
public String getGiftid() {
return giftid;
}
public SendBlindGiftEvent setGiftid(String giftid) {
this.giftid = giftid;
return this;
}
public String getType() {
return type;
}
public SendBlindGiftEvent setType(String type) {
this.type = type;
return this;
}
public String getMark() {
return mark;
}
public SendBlindGiftEvent setMark(String mark) {
this.mark = mark;
return this;
}
public String getWrapGiftNum() {
return wrapGiftNum;
}
public SendBlindGiftEvent setWrapGiftNum(String wrapGiftNum) {
this.wrapGiftNum = wrapGiftNum;
return this;
}
public String getGiftcount() {
return giftcount;
}
public SendBlindGiftEvent setGiftcount(String giftcount) {
this.giftcount = giftcount;
return this;
}
public String getTotalcoin() {
return totalcoin;
}
public SendBlindGiftEvent setTotalcoin(String totalcoin) {
this.totalcoin = totalcoin;
return this;
}
public String getGiftname() {
return giftname;
}
public SendBlindGiftEvent setGiftname(String giftname) {
this.giftname = giftname;
return this;
}
public String getGiftnameen() {
return giftnameen;
}
public SendBlindGiftEvent setGiftnameen(String giftnameen) {
this.giftnameen = giftnameen;
return this;
}
public String getGifticon() {
return gifticon;
}
public SendBlindGiftEvent setGifticon(String gifticon) {
this.gifticon = gifticon;
return this;
}
public String getSwftime() {
return swftime;
}
public SendBlindGiftEvent setSwftime(String swftime) {
this.swftime = swftime;
return this;
}
public String getSwftype() {
return swftype;
}
public SendBlindGiftEvent setSwftype(String swftype) {
this.swftype = swftype;
return this;
}
public String getSwf() {
return swf;
}
public SendBlindGiftEvent setSwf(String swf) {
this.swf = swf;
return this;
}
public String getLevel() {
return level;
}
public SendBlindGiftEvent setLevel(String level) {
this.level = level;
return this;
}
public String getMedalName() {
return medalName;
}
public SendBlindGiftEvent setMedalName(String medalName) {
this.medalName = medalName;
return this;
}
public String getMedalLevel() {
return medalLevel;
}
public SendBlindGiftEvent setMedalLevel(String medalLevel) {
this.medalLevel = medalLevel;
return this;
}
public String getCoin() {
return coin;
}
public SendBlindGiftEvent setCoin(String coin) {
this.coin = coin;
return this;
}
public String getGold() {
return gold;
}
public SendBlindGiftEvent setGold(String gold) {
this.gold = gold;
return this;
}
public String getVotestotal() {
return votestotal;
}
public SendBlindGiftEvent setVotestotal(String votestotal) {
this.votestotal = votestotal;
return this;
}
public String getMedalRankNum() {
return medalRankNum;
}
public SendBlindGiftEvent setMedalRankNum(String medalRankNum) {
this.medalRankNum = medalRankNum;
return this;
}
public String getIspk() {
return ispk;
}
public SendBlindGiftEvent setIspk(String ispk) {
this.ispk = ispk;
return this;
}
public String isPkuid() {
return pkuid;
}
public SendBlindGiftEvent setPkuid(String pkuid) {
this.pkuid = pkuid;
return this;
}
public String getPkuid1() {
return pkuid1;
}
public SendBlindGiftEvent setPkuid1(String pkuid1) {
this.pkuid1 = pkuid1;
return this;
}
public String getPkuid2() {
return pkuid2;
}
public SendBlindGiftEvent setPkuid2(String pkuid2) {
this.pkuid2 = pkuid2;
return this;
}
public String getPktotal1() {
return pktotal1;
}
public SendBlindGiftEvent setPktotal1(String pktotal1) {
this.pktotal1 = pktotal1;
return this;
}
public String getPktotal2() {
return pktotal2;
}
public SendBlindGiftEvent setPktotal2(String pktotal2) {
this.pktotal2 = pktotal2;
return this;
}
public String getActiveTotal() {
return activeTotal;
}
public SendBlindGiftEvent setActiveTotal(String activeTotal) {
this.activeTotal = activeTotal;
return this;
}
public String isBlindBoxStatus() {
return blindBoxStatus;
}
public SendBlindGiftEvent setBlindBoxStatus(String blindBoxStatus) {
this.blindBoxStatus = blindBoxStatus;
return this;
}
public String getGiftId() {
return giftId;
}
public SendBlindGiftEvent setGiftId(String giftId) {
this.giftId = giftId;
return this;
}
public String getGiftType() {
return giftType;
}
public SendBlindGiftEvent setGiftType(String giftType) {
this.giftType = giftType;
return this;
}
public String getNeedcoin() {
return needcoin;
}
public SendBlindGiftEvent setNeedcoin(String needcoin) {
this.needcoin = needcoin;
return this;
}
public String getGiftMsg() {
return giftMsg;
}
public SendBlindGiftEvent setGiftMsg(String giftMsg) {
this.giftMsg = giftMsg;
return this;
}
public String getGiftColour() {
return giftColour;
}
public SendBlindGiftEvent setGiftColour(String giftColour) {
this.giftColour = giftColour;
return this;
}
public String getBoxType() {
return boxType;
}
public SendBlindGiftEvent setBoxType(String boxType) {
this.boxType = boxType;
return this;
}
public String getBoxTypeName() {
return boxTypeName;
}
public SendBlindGiftEvent setBoxTypeName(String boxTypeName) {
this.boxTypeName = boxTypeName;
return this;
}
public String getAction() {
return action;
}
public SendBlindGiftEvent setAction(String action) {
this.action = action;
return this;
}
public String isDressNotification() {
return dressNotification;
}
public SendBlindGiftEvent setDressNotification(String dressNotification) {
this.dressNotification = dressNotification;
return this;
}
public Object getDressType() {
return dressType;
}
public SendBlindGiftEvent setDressType(Object dressType) {
this.dressType = dressType;
return this;
}
public Object getDressId() {
return dressId;
}
public SendBlindGiftEvent setDressId(Object dressId) {
this.dressId = dressId;
return this;
}
public String getDressName() {
return dressName;
}
public SendBlindGiftEvent setDressName(String dressName) {
this.dressName = dressName;
return this;
}
public Object getDisplaySrc() {
return displaySrc;
}
public SendBlindGiftEvent setDisplaySrc(Object displaySrc) {
this.displaySrc = displaySrc;
return this;
}
public Object getEffectSrc() {
return effectSrc;
}
public SendBlindGiftEvent setEffectSrc(Object effectSrc) {
this.effectSrc = effectSrc;
return this;
}
public Object getDressDescription() {
return dressDescription;
}
public SendBlindGiftEvent setDressDescription(Object dressDescription) {
this.dressDescription = dressDescription;
return this;
}
public Object getNobleDress() {
return nobleDress;
}
public SendBlindGiftEvent setNobleDress(Object nobleDress) {
this.nobleDress = nobleDress;
return this;
}
public String getDressMsg() {
return dressMsg;
}
public SendBlindGiftEvent setDressMsg(String dressMsg) {
this.dressMsg = dressMsg;
return this;
}
public String getDressColour() {
return dressColour;
}
public SendBlindGiftEvent setDressColour(String dressColour) {
this.dressColour = dressColour;
return this;
}
public String getDressThresholdValue() {
return dressThresholdValue;
}
public SendBlindGiftEvent setDressThresholdValue(String dressThresholdValue) {
this.dressThresholdValue = dressThresholdValue;
return this;
}
public String getLiveGiftNotify() {
return liveGiftNotify;
}
public SendBlindGiftEvent setLiveGiftNotify(String liveGiftNotify) {
this.liveGiftNotify = liveGiftNotify;
return this;
}
}

View File

@@ -1,5 +1,6 @@
package com.yunbao.common.http;
import android.app.Dialog;
import android.content.Context;
import android.os.Build;
import android.util.Log;
@@ -21,6 +22,8 @@ import com.yunbao.common.manager.APKManager;
import com.yunbao.common.manager.IMLoginManager;
import com.yunbao.common.manager.LiveClassManager;
import com.yunbao.common.manager.NewLevelManager;
import com.yunbao.common.utils.AppManager;
import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.L;
import com.yunbao.common.utils.MD5Util;
import com.yunbao.common.utils.SpUtil;
@@ -224,7 +227,8 @@ public class CommonHttpUtil {
}
if (obj.containsKey("clarity")) {
IMLoginManager.get(context).setClarity(obj.getString("clarity"));
} if (obj.containsKey("defaultBubbleUrl")) {
}
if (obj.containsKey("defaultBubbleUrl")) {
IMLoginManager.get(context).setDefaultBubbleUrl(obj.getString("defaultBubbleUrl"));
}
} catch (Exception e) {
@@ -232,6 +236,22 @@ public class CommonHttpUtil {
String error = "info[0]:" + info[0] + "\n\n\n" + "Exception:" + e.getClass() + "---message--->" + e.getMessage();
ErrorActivity.forward("GetConfig接口返回数据异常", error);
}
} else if (code == 1000) {
new DialogUitl
.Builder(context)
.setContent(msg)
.setCancelable(false)
.setClickCallback3(new DialogUitl.SimpleCallback3() {
@Override
public void onConfirmClick(Dialog dialog) {
AppManager.getInstance().AppExit();
}
@Override
public void onCancel() {
AppManager.getInstance().AppExit();
}
}).build().show();
}
}

View File

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.yunbao.common.bean.ActiveModel;
import com.yunbao.common.bean.AnchorRecommendModel;
import com.yunbao.common.bean.BaseModel;
import com.yunbao.common.bean.BlindBoxInfoModel;
import com.yunbao.common.bean.CheckLiveModel;
import com.yunbao.common.bean.ContributeModel;
import com.yunbao.common.bean.CustomSidebarInfoModel;
@@ -21,6 +22,7 @@ import com.yunbao.common.bean.LiveAnchorSayModel;
import com.yunbao.common.bean.LiveDataInfoModel;
import com.yunbao.common.bean.LiveInfoModel;
import com.yunbao.common.bean.LiveRoomActivityBanner;
import com.yunbao.common.bean.LiveRoomVoteModel;
import com.yunbao.common.bean.LiveStetUpStatusModel;
import com.yunbao.common.bean.LiveTaskModel;
import com.yunbao.common.bean.LiveUserMailBoxModel;
@@ -398,7 +400,7 @@ public interface PDLiveApi {
* 自由PK开始后调用接口扣掉次数
*/
@GET("/api/public/?service=Livepk.setActivePkNum")
Observable<ResponseModel<BaseModel>> setFreePkNum();
Observable<ResponseModel<List<BaseModel>>> setFreePkNum();
/**
* 随机PK搜索用户
@@ -694,4 +696,38 @@ public interface PDLiveApi {
*/
@GET("/api/public/?service=User.setLogOff")
Observable<ResponseModel<List<Object>>> setLogOff();
/**
* 领取完善资料奖励
*/
@GET("/api/public/?service=Task.userInfoTask")
Observable<ResponseModel<List<Object>>> userInfoTask();
/**
* 创建投票
*/
@GET("/api/public/?service=Live.createLiveVote")
Observable<ResponseModel<LiveRoomVoteModel>> createLiveVote(@Query("liveuid") String liveUid,
@Query("question_content") String content,
@Query("option_content_first") String first,
@Query("option_content_second") String second);
/**
* 更新投票
*/
@GET("/api/public/?service=Live.setLiveVote")
Observable<ResponseModel<List<String>>> updateLiveVote(@Query("liveuid") String liveUid,
@Query("option_content_key") String key);
/**
* 主动结束投票
*/
@GET("/api/public/?service=Live.endLiveVote")
Observable<ResponseModel<List<String>>> endLiveVote(@Query("liveuid") String liveUid);
/**
* 获取盲盒礼物当前数据
*/
@GET("/api/public/?service=Live.getBlindBoxInfo")
Observable<ResponseModel<List<BlindBoxInfoModel>>> getBlindBoxInfo();
}

View File

@@ -8,6 +8,7 @@ import com.yunbao.common.Constants;
import com.yunbao.common.R;
import com.yunbao.common.bean.ActiveModel;
import com.yunbao.common.bean.BaseModel;
import com.yunbao.common.bean.BlindBoxInfoModel;
import com.yunbao.common.bean.CheckLiveModel;
import com.yunbao.common.bean.CustomSidebarInfoModel;
import com.yunbao.common.bean.DiscountsModel;
@@ -22,6 +23,7 @@ import com.yunbao.common.bean.LiveAnchorSayModel;
import com.yunbao.common.bean.LiveDataInfoModel;
import com.yunbao.common.bean.LiveInfoModel;
import com.yunbao.common.bean.LiveRoomActivityBanner;
import com.yunbao.common.bean.LiveRoomVoteModel;
import com.yunbao.common.bean.LiveStetUpStatusModel;
import com.yunbao.common.bean.LiveTaskModel;
import com.yunbao.common.bean.LiveUserMailBoxModel;
@@ -637,9 +639,9 @@ public class LiveNetManager {
.setFreePkNum()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Consumer<ResponseModel<BaseModel>>() {
.subscribe(new Consumer<ResponseModel<List<BaseModel>>>() {
@Override
public void accept(ResponseModel<BaseModel> responseModel) throws Exception {
public void accept(ResponseModel<List<BaseModel>> listResponseModel) throws Exception {
}
}, new Consumer<Throwable>() {
@@ -1427,6 +1429,127 @@ public class LiveNetManager {
}).isDisposed();
}
public void createLiveVote(String liveUid, String content, String first, String second, HttpCallback<LiveRoomVoteModel> callback) {
API.get().pdLiveApi(mContext)
.createLiveVote(liveUid, content, first, second)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<LiveRoomVoteModel>>() {
@Override
public void accept(ResponseModel<LiveRoomVoteModel> listResponseModel) throws Exception {
if (callback != null) {
callback.onSuccess(listResponseModel.getData().getInfo());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
if (callback != null) {
callback.onError(throwable.getMessage());
}
}
}).isDisposed();
}
public void updateLiveVote(String liveUid, boolean isLeftVote, HttpCallback<String> callback) {
String key;
if (isLeftVote) {//是左边的投票
key = "option_content_first_num";
} else {
key = "option_content_second_num";
}
API.get().pdLiveApi(mContext)
.updateLiveVote(liveUid, key)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<String>>>() {
@Override
public void accept(ResponseModel<List<String>> listResponseModel) throws Exception {
if (callback != null) {
callback.onSuccess("");
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
if (callback != null) {
callback.onError(throwable.getMessage());
}
}
}).isDisposed();
}
public void endLiveVote(String liveUid, HttpCallback<String> callback) {
API.get().pdLiveApi(mContext)
.endLiveVote(liveUid)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<String>>>() {
@Override
public void accept(ResponseModel<List<String>> listResponseModel) throws Exception {
if (callback != null) {
callback.onSuccess(listResponseModel.getData().getMsg());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
if (callback != null) {
callback.onError(throwable.getMessage());
}
}
}).isDisposed();
}
public void userInfoTask(HttpCallback<String> callback) {
API.get().pdLiveApi(mContext)
.userInfoTask()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<Object>>>() {
@Override
public void accept(ResponseModel<List<Object>> listResponseModel) throws Exception {
if (callback != null) {
callback.onSuccess(listResponseModel.getData().getMsg());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
if (callback != null) {
callback.onError(mContext.getString(R.string.net_error));
}
}
}).isDisposed();
}
/**
* 获取盲盒礼物信息
*
* @param callback
*/
public void getBlindBoxInfo(HttpCallback<List<BlindBoxInfoModel>> callback) {
API.get().pdLiveApi(mContext)
.getBlindBoxInfo()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<BlindBoxInfoModel>>>() {
@Override
public void accept(ResponseModel<List<BlindBoxInfoModel>> listResponseModel) throws Exception {
if (callback != null) {
callback.onSuccess(listResponseModel.getData().getInfo());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
if (callback != null) {
callback.onError(mContext.getString(R.string.net_error));
}
}
}).isDisposed();
}
/**
* 直播间取消网络请求
*/

View File

@@ -6,6 +6,10 @@ import android.view.View;
import android.view.ViewTreeObserver;
import android.widget.FrameLayout;
/**
* 修复全屏WebView输入法遮挡输入框的问题
* <a href="https://github.com/madebycm/AndroidBug5497Workaround/tree/master">GitHub</a>
*/
public class AndroidBug5497Workaround {
// For more information, see https://issuetracker.google.com/issues/36911528

View File

@@ -121,7 +121,7 @@ public class AppManager {
*/
public static void runDebugCode(Runnable runnable) {
if (BuildConfig.DEBUG) {
// runnable.run();
runnable.run();
}
}

View File

@@ -8,7 +8,6 @@ import android.os.Handler;
import android.os.Looper;
import android.text.InputFilter;
import android.text.InputType;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.format.DateFormat;
import android.util.SparseArray;
@@ -331,7 +330,7 @@ public class DialogUitl {
private Context mContext;
private String mTitle;
private String mContent;
private String mConfrimString;
private String mConfirmString;
private String mCancelString;
private boolean mCancelable;
private boolean mBackgroundDimEnabled;//显示区域以外是否使用黑色半透明背景
@@ -371,8 +370,8 @@ public class DialogUitl {
return this;
}
public Builder setConfrimString(String confrimString) {
mConfrimString = confrimString;
public Builder setConfirmString(String confirmString) {
mConfirmString = confirmString;
return this;
}
@@ -460,8 +459,8 @@ public class DialogUitl {
content.setFilters(new InputFilter[]{new InputFilter.LengthFilter(mLength)});
}
TextView btnConfirm = (TextView) dialog.findViewById(R.id.btn_confirm);
if (!TextUtils.isEmpty(mConfrimString)) {
btnConfirm.setText(mConfrimString);
if (!TextUtils.isEmpty(mConfirmString)) {
btnConfirm.setText(mConfirmString);
}
TextView btnCancel = (TextView) dialog.findViewById(R.id.btn_cancel);
if (!TextUtils.isEmpty(mCancelString)) {

View File

@@ -50,7 +50,7 @@ public class VersionUtil {
DialogUitl.Builder builder = new DialogUitl.Builder(context);
builder.setTitle(context.getString(R.string.version_update))
.setContent(configBean.getUpdateDes())
.setConfrimString(context.getString(R.string.version_immediate_use))
.setConfirmString(context.getString(R.string.version_immediate_use))
.setCancelString(context.getString(R.string.version_not_update))
.setCancelable(false)
.setClickCallback(new DialogUitl.SimpleCallback2() {
@@ -81,7 +81,7 @@ public class VersionUtil {
DialogUitl.Builder builder = new DialogUitl.Builder(context);
builder.setTitle(context.getString(R.string.version_update))
.setContent(configBean.getUpdateDes())
.setConfrimString(context.getString(R.string.version_immediate_use))
.setConfirmString(context.getString(R.string.version_immediate_use))
.setCancelString(context.getString(R.string.version_not_update))
.setCancelable(false)
.setClickCallback(new DialogUitl.SimpleCallback2() {
@@ -111,7 +111,7 @@ public class VersionUtil {
DialogUitl.Builder builder = new DialogUitl.Builder(context);
builder.setTitle(context.getString(R.string.version_update))
.setContent(configBean.getUpdateDes())
.setConfrimString(context.getString(R.string.version_immediate_use))
.setConfirmString(context.getString(R.string.version_immediate_use))
.setCancelString(context.getString(R.string.version_not_update))
.setCancelable(false)
.setClickCallback(new DialogUitl.SimpleCallback2() {
@@ -134,7 +134,7 @@ public class VersionUtil {
DialogUitl.Builder builder = new DialogUitl.Builder(context);
builder.setTitle(context.getString(R.string.version_update))
.setContent(configBean.getUpdateDes())
.setConfrimString(context.getString(R.string.version_immediate_use))
.setConfirmString(context.getString(R.string.version_immediate_use))
.setCancelString(context.getString(R.string.version_not_update))
.setCancelable(false)
.setClickCallback(new DialogUitl.SimpleCallback2() {

View File

@@ -3,6 +3,7 @@ package com.yunbao.common.utils;
import android.content.res.Resources;
import com.yunbao.common.CommonAppContext;
import com.yunbao.common.manager.IMLoginManager;
import java.util.Locale;
import java.util.regex.Matcher;
@@ -30,6 +31,9 @@ public class WordUtil {
String language = locale.getLanguage();
return language.endsWith("zh");
}
public static boolean isNewZh(){
return IMLoginManager.get(CommonAppContext.sInstance).getLocaleLanguage() == Locale.SIMPLIFIED_CHINESE;
}
/**
* 是否包含特殊字符

View File

@@ -0,0 +1,80 @@
package com.yunbao.common.views;
import android.content.Context;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import com.lxj.xpopup.core.CenterPopupView;
import com.yunbao.common.R;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
public class CompleteInformationPopup extends CenterPopupView {
private TextView completeInformationHint, completeInformation2;
private ImageView iconLive, expression;
private boolean isLeave;
private CompleteInformationCallBack callBack;
public CompleteInformationPopup(@NonNull Context context, boolean isLeave, CompleteInformationCallBack callBack) {
super(context);
this.isLeave = isLeave;
this.callBack = callBack;
}
// 返回自定义弹窗的布局离开
@Override
protected int getImplLayoutId() {
return R.layout.view_complete_information;
}
// 执行初始化操作比如findView设置点击或者任何你弹窗内的业务逻辑
@Override
protected void onCreate() {
super.onCreate();
initView();
}
private void initView() {
completeInformationHint = findViewById(R.id.complete_information_hint);
completeInformation2 = findViewById(R.id.complete_information2);
iconLive = findViewById(R.id.icon_live);
expression = findViewById(R.id.expression);
if (isLeave) {
completeInformationHint.setText(R.string.complete_information_hint3);
completeInformation2.setText(R.string.you_guide_me);
iconLive.setVisibility(GONE);
ImgLoader.display(getContext(), R.mipmap.icon_cry_face, expression);
} else {
ImgLoader.display(getContext(), R.mipmap.icon_smiling_face, expression);
completeInformation2.setText(R.string.complete_information_hint2);
completeInformationHint.setText(R.string.complete_information_hint);
}
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.live_open_cancel), new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
dismiss();
if (callBack != null) {
callBack.onCancel();
}
}
});
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.live_open_ok), new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
dismiss();
if (callBack != null) {
callBack.onSure();
}
}
});
}
public interface CompleteInformationCallBack {
void onCancel();
void onSure();
}
}

View File

@@ -55,16 +55,22 @@ public class DrawerTaskChildViewHolder extends RecyclerView.ViewHolder {
case "illumine":
iconImg = R.mipmap.icon_052x;
break;
default:
iconImg = R.mipmap.icon_013x;
break;
}
ImgLoader.display(itemView.getContext(), iconImg, icon);
StringBuffer titleBuffer = new StringBuffer();
titleBuffer
.append(model.getTitle())
.append("(")
.append(model.getNowNum())
.append("/")
.append(model.getNeedNum())
.append(")");
.append(model.getTitle());
if (!TextUtils.isEmpty(model.getNowNum())) {
titleBuffer.append("(")
.append(model.getNowNum())
.append("/")
.append(model.getNeedNum())
.append(")");
}
title.setText(titleBuffer.toString());
subtitle.setText(model.getSubtitle());
if (TextUtils.equals(model.getStatus(), "0")) {
@@ -86,27 +92,34 @@ public class DrawerTaskChildViewHolder extends RecyclerView.ViewHolder {
ViewClicksAntiShake.clicksAntiShake(toReceive, new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
if (TextUtils.equals(model.getStatus(), "2")) {
LiveNetManager.get(itemView.getContext())
.sendTaskGift(model.getFlag(), new HttpCallback<String>() {
@Override
public void onSuccess(String data) {
if (listener != null) {
listener.giftSuccess(model, index);
}
}
@Override
public void onError(String error) {
ToastUtil.show( R.string.net_error);
}
});
} else {
if (TextUtils.equals(model.getSrc(), "to_me_information")) {
Bus.get().post(new CustomDrawerPopupEvent()
.setDisMiss(true));
.setDisMiss(true)
.setHtmlUrl(model.getSrc())
.setScreen(TextUtils.equals(model.getShowType(), "2")));
}else {
if (TextUtils.equals(model.getStatus(), "2")) {
LiveNetManager.get(itemView.getContext())
.sendTaskGift(model.getFlag(), new HttpCallback<String>() {
@Override
public void onSuccess(String data) {
if (listener != null) {
listener.giftSuccess(model, index);
}
}
@Override
public void onError(String error) {
ToastUtil.show(R.string.net_error);
}
});
} else {
Bus.get().post(new CustomDrawerPopupEvent()
.setDisMiss(true));
}
}
}
});
}

View File

@@ -2,7 +2,6 @@ package com.yunbao.common.views;
import android.text.TextUtils;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
@@ -49,27 +48,35 @@ public class DrawerTaskViewHolder extends RecyclerView.ViewHolder {
if (TextUtils.isEmpty(model.getSrc())) {
ToastUtil.show("SHOWER_ERROR");
} else {
IMLoginModel userInfo = IMLoginManager.get(itemView.getContext()).getUserInfo();
StringBuffer htmlUrl = new StringBuffer();
if (model.getSrc().contains("?")) {
htmlUrl.append(CommonAppConfig.HOST).append("/").append(model.getSrc())
.append("&uid=")
.append(userInfo.getId())
.append("&token=")
.append(userInfo.getToken());
if (TextUtils.equals(model.getSrc(), "to_me_information")) {
Bus.get().post(new CustomDrawerPopupEvent()
.setDisMiss(true)
.setHtmlUrl(model.getSrc())
.setScreen(TextUtils.equals(model.getShowType(), "2")));
} else {
htmlUrl.append(CommonAppConfig.HOST)
.append("/")
.append(model.getSrc())
.append("?uid=")
.append(userInfo.getId())
.append("&token=")
.append(userInfo.getToken());
IMLoginModel userInfo = IMLoginManager.get(itemView.getContext()).getUserInfo();
StringBuffer htmlUrl = new StringBuffer();
if (model.getSrc().contains("?")) {
htmlUrl.append(CommonAppConfig.HOST).append("/").append(model.getSrc())
.append("&uid=")
.append(userInfo.getId())
.append("&token=")
.append(userInfo.getToken());
} else {
htmlUrl.append(CommonAppConfig.HOST)
.append("/")
.append(model.getSrc())
.append("?uid=")
.append(userInfo.getId())
.append("&token=")
.append(userInfo.getToken());
}//资料
Bus.get().post(new CustomDrawerPopupEvent()
.setDisMiss(true)
.setHtmlUrl(htmlUrl.toString())
.setScreen(TextUtils.equals(model.getShowType(), "2")));
}
Bus.get().post(new CustomDrawerPopupEvent()
.setDisMiss(true)
.setHtmlUrl(htmlUrl.toString())
.setScreen(TextUtils.equals(model.getShowType(), "2")));
}

View File

@@ -11,7 +11,7 @@ import com.yunbao.common.R;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
public class HintCustomPopup extends CenterPopupView {
private String title, contest,openCancel,openOk;
private String title, contest, openCancel, openOk;
private TextView liveOpenCancel, liveOpenOk;
public HintCustomPopup(@NonNull Context context, String title, String contest) {
@@ -30,7 +30,7 @@ public class HintCustomPopup extends CenterPopupView {
}
public HintCustomPopup setLiveOpenOk(String openOk) {
this.openOk = openOk;
this.openOk = openOk;
return this;
}
@@ -48,8 +48,13 @@ public class HintCustomPopup extends CenterPopupView {
TextView contestText = findViewById(R.id.contest);
liveOpenCancel = findViewById(R.id.live_open_cancel);
liveOpenOk = findViewById(R.id.live_open_ok);
liveOpenOk.setText(openOk);
liveOpenCancel.setText(openCancel);
if (!TextUtils.isEmpty(openOk)) {
liveOpenOk.setText(openOk);
}
if (!TextUtils.isEmpty(openCancel)) {
liveOpenCancel.setText(openCancel);
}
if (!TextUtils.isEmpty(title)) {
titleText.setText(title);
}

View File

@@ -12,6 +12,7 @@ import com.lxj.xpopup.animator.PopupAnimator;
import com.lxj.xpopup.core.CenterPopupView;
import com.yunbao.common.R;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
/**
* 输入弹窗
@@ -54,15 +55,21 @@ public class InputCustomPopup extends CenterPopupView {
findViewById(R.id.btn_confirm).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String textContent = content.getText().toString();
if (TextUtils.isEmpty(textContent)) {
ToastUtil.show("输入内容不可为空");
return;
}
if (listener != null) {
listener.onConfirm(textContent);
}
dismiss(); // 关闭弹窗
ViewClicksAntiShake.clicksAntiShake(v, new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
String textContent = content.getText().toString();
if (TextUtils.isEmpty(textContent)) {
ToastUtil.show("输入内容不可为空");
return;
}
if (listener != null) {
listener.onConfirm(textContent);
}
dismiss(); // 关闭弹窗
}
});
}
});
}

View File

@@ -81,6 +81,10 @@ public class LiveRobotSayHelloCustomPopup extends BottomPopupView {
findViewById(R.id.robot_add_content).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(robotMessageAdapter.getItemCount()>=20){
ToastUtil.show(getContext().getString(R.string.rebot_config_auto_say_max));
return;
}
new XPopup.Builder(getContext())
.asCustom(new InputCustomPopup(getContext(), R.string.automatic_greeting_setting).setListener(new InputCustomPopup.InputCustomListener() {
@Override

View File

@@ -0,0 +1,88 @@
package com.yunbao.common.views;
import android.content.Context;
import android.graphics.Color;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import com.lxj.xpopup.core.BottomPopupView;
import com.yunbao.common.R;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
public class UpdateSexPopup extends BottomPopupView {
private int sex;
private LinearLayout linearMan, linearGirl;
private ImageView imageMan, imageGirl;
private TextView textMan, textGirl;
private UpdateSexCallBack callBack;
public UpdateSexPopup(@NonNull Context context, int sex, UpdateSexCallBack callBack) {
super(context);
this.sex = sex;
this.callBack = callBack;
}
// 返回自定义弹窗的布局
@Override
protected int getImplLayoutId() {
return R.layout.view_update_sex_popup;
}
// 执行初始化操作比如findView设置点击或者任何你弹窗内的业务逻辑
@Override
protected void onCreate() {
super.onCreate();
initView();
}
private void initView() {
linearMan = findViewById(R.id.linear_man);
imageMan = findViewById(R.id.image_man);
textMan = findViewById(R.id.text_man);
linearGirl = findViewById(R.id.linear_girl);
imageGirl = findViewById(R.id.image_girl);
textGirl = findViewById(R.id.text_girl);
if (sex == 0) {
ImgLoader.display(getContext(), R.mipmap.icon_male_default, imageMan);
ImgLoader.display(getContext(), R.mipmap.icon_female_default, imageGirl);
textMan.setTextColor(Color.parseColor("#999999"));
textGirl.setTextColor(Color.parseColor("#999999"));
} else if (sex == 1) {
ImgLoader.display(getContext(), R.mipmap.icon_male_highlighted, imageMan);
ImgLoader.display(getContext(), R.mipmap.icon_female_default, imageGirl);
textMan.setTextColor(Color.parseColor("#333333"));
textGirl.setTextColor(Color.parseColor("#999999"));
} else if (sex == 2) {
ImgLoader.display(getContext(), R.mipmap.icon_male_default, imageMan);
ImgLoader.display(getContext(), R.mipmap.icon_female_highlight, imageGirl);
textMan.setTextColor(Color.parseColor("#999999"));
textGirl.setTextColor(Color.parseColor("#333333"));
}
ViewClicksAntiShake.clicksAntiShake(linearMan, new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
dismiss();
if (callBack != null) {
callBack.onSex(1);
}
}
});
ViewClicksAntiShake.clicksAntiShake(linearGirl, new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
dismiss();
if (callBack != null) {
callBack.onSex(2);
}
}
});
}
public interface UpdateSexCallBack {
void onSex(int sex);
}
}

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!--设置ProgressBar背景色-->
<item android:id="@android:id/background">
<shape>
<!--设置ProgressBar进度条圆角半径-->
<corners android:radius="3dp" />
<solid android:color="#90FB712D" />
</shape>
</item>
<!--设置ProgressBar进度条颜色-->
<item android:id="@android:id/progress">
<scale android:scaleWidth="100%">
<shape>
<corners android:radius="3dp" />
<gradient
android:endColor="#FCCCA4"
android:startColor="#FCAB6A" />
</shape>
</scale>
</item>
</layer-list>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!--设置ProgressBar背景色-->
<item android:id="@android:id/background">
<shape>
<!--设置ProgressBar进度条圆角半径-->
<corners android:radius="3dp" />
<solid android:color="#909FFBF6" />
</shape>
</item>
<!--设置ProgressBar进度条颜色-->
<item android:id="@android:id/progress" >
<scale android:scaleWidth="100%" android:scaleHeight="6dp">
<shape >
<corners android:radius="3dp" />
<gradient
android:endColor="#10A5FB"
android:startColor="#78E2FD" />
</shape>
</scale>
</item>
</layer-list>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!--设置ProgressBar背景色-->
<item android:id="@android:id/background">
<shape>
<!--设置ProgressBar进度条圆角半径-->
<corners android:radius="3dp" />
<solid android:color="#90F8B334" />
</shape>
</item>
<!--设置ProgressBar进度条颜色-->
<item android:id="@android:id/progress">
<scale android:scaleWidth="100%">
<shape>
<corners android:radius="3dp" />
<gradient
android:startColor="#FFF682"
android:endColor="#FDF9C2" />
</shape>
</scale>
</item>
</layer-list>

View File

@@ -246,140 +246,6 @@
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="30dp"
android:text="@string/live_config"
android:textColor="@color/white"
android:textSize="14sp" />
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
android:paddingEnd="16dp">
<LinearLayout
android:id="@+id/live_tool_beauty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_beauty" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_beauty"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_camera"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_live_ready_camera" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_camera"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_leave"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/live_tool_leave_img"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_leave" />
<TextView
android:id="@+id/live_tool_leave_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_zslk"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_anchor_say"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/ic_live_fun_anchor_say" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_fun_anchor_say"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_call_me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/ic_live_fun_anchor_letter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_fun_call_me"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -493,6 +359,177 @@
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="30dp"
android:text="@string/live_config"
android:textColor="@color/white"
android:textSize="14sp" />
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
android:paddingEnd="16dp">
<LinearLayout
android:id="@+id/live_tool_beauty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_beauty" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_beauty"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_camera"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_live_ready_camera" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_camera"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_leave"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/live_tool_leave_img"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_leave" />
<TextView
android:id="@+id/live_tool_leave_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_zslk"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_anchor_say"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/ic_live_fun_anchor_say" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_fun_anchor_say"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/live_tool_call_me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="23dp"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/ic_live_fun_anchor_letter" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/live_fun_call_me"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginBottom="20dp">
<LinearLayout
android:id="@+id/live_tool_qa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@mipmap/icon_live_qa" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/dialog_live_function_qa"
android:textColor="#FF9A9A9A"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>

View File

@@ -0,0 +1,97 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="274dp"
android:layout_height="168.5dp"
app:cardCornerRadius="15dp"
app:cardElevation="16dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/complete_information_hint"
android:layout_width="124.5dp"
android:layout_height="wrap_content"
android:layout_marginStart="25.5dp"
android:layout_marginTop="30.5dp"
android:text="@string/complete_information_hint"
android:textColor="#333333"
android:textSize="14sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<!--表情-->
<ImageView
android:id="@+id/expression"
android:layout_width="44dp"
android:layout_height="44dp"
android:layout_marginTop="22.5dp"
android:src="@mipmap/icon_smiling_face" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="2dp">
<TextView
android:id="@+id/complete_information2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:text="@string/complete_information_hint2"
android:textColor="#666666"
android:textSize="10sp" />
<ImageView
android:id="@+id/icon_live"
android:layout_width="34dp"
android:layout_height="10dp"
android:layout_gravity="bottom"
android:layout_marginStart="2dp"
android:src="@mipmap/icon_live" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/live_open_cancel"
android:layout_width="111dp"
android:layout_height="37dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="16dp"
android:background="@drawable/backgroud_live_open_lfet"
android:gravity="center"
android:text="@string/cancel"
android:textColor="#FFC621"
android:textSize="14sp" />
<TextView
android:id="@+id/live_open_ok"
android:layout_width="100dp"
android:layout_height="36dp"
android:layout_gravity="end|center_vertical"
android:layout_marginEnd="16dp"
android:background="@drawable/backgroud_live_open_right"
android:gravity="center"
android:text="@string/confirm"
android:textColor="@color/white"
android:textSize="14sp" />
</FrameLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>

View File

@@ -2,7 +2,7 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="58dp"
android:layout_height="63dp"
android:layout_marginStart="10dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="10dp"
@@ -10,8 +10,8 @@
<ImageView
android:id="@+id/icon"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_width="41dp"
android:layout_height="41dp"
android:layout_centerVertical="true"
android:layout_marginStart="9dp"
android:scaleType="fitCenter" />
@@ -27,17 +27,6 @@
android:textColor="#FFFFFF"
android:textSize="14sp" />
<TextView
android:id="@+id/subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/title"
android:layout_marginStart="9dp"
android:layout_marginTop="4dp"
android:layout_toEndOf="@id/icon"
android:text="赠送送玫瑰 (5/5)"
android:textColor="#9A9A9A"
android:textSize="10sp" />
<FrameLayout
android:id="@+id/to_receive_layout"
@@ -59,5 +48,18 @@
android:textSize="12sp" />
</FrameLayout>
<TextView
android:id="@+id/subtitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/title"
android:layout_marginStart="9dp"
android:layout_marginTop="3dp"
android:layout_marginEnd="70dp"
android:layout_toLeftOf="@id/to_receive_layout"
android:layout_toEndOf="@id/icon"
android:text="赠送送玫瑰 (5/5)"
android:textColor="#9A9A9A"
android:textSize="10sp" />
</RelativeLayout>

View File

@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="213.5dp"
android:background="@mipmap/bg_gift_completely"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/linear_man"
android:layout_width="0dp"
android:background="?android:attr/selectableItemBackground"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/image_man"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@mipmap/icon_male_highlighted" />
<TextView
android:id="@+id/text_man"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="9.5dp"
android:text="@string/man_student"
android:textColor="#333333"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/linear_girl"
android:layout_width="0dp"
android:background="?android:attr/selectableItemBackground"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/image_girl"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@mipmap/icon_female_highlight" />
<TextView
android:id="@+id/text_girl"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="9.5dp"
android:text="@string/girl_student"
android:textColor="#333333"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

View File

@@ -872,6 +872,7 @@ Limited ride And limited avatar frame</string>
<string name="activity_center">Activity</string>
<string name="basic_tools">Basic tools</string>
<string name="effects_settings">Effect settings</string>
<string name="live_chat_font_settings">Font settings</string>
<string name="shield_gift_effect">Shield gift effect</string>
<string name="shield_mount_effect">Shield car effect</string>
<string name="current_live_room">You are in the current live room</string>
@@ -1125,6 +1126,11 @@ Limited ride And limited avatar frame</string>
<string name="unfollow"> Where is the host doing badly~\nBrother, are you sure you want to unfollow?</string>
<string name="unfollow_confrim">follow</string>
<string name="heat_add">Heat Add</string>
<string name="live_room_chat_fount_size_low">LOW</string>
<string name="live_room_chat_fount_size_def">DEFAULT</string>
<string name="live_room_chat_fount_size_high">HIGH</string>
<string name="dialog_live_fount_title">Select font size</string>
<string name="dialog_fount_submit">confirm</string>
<string name="chat_prompt">Private chat prompt</string>
<string name="broadcast_oom">A private buoy on the side of the broadcast room</string>
<string name="chat_prompt2">Dynamic message</string>
@@ -1143,4 +1149,48 @@ Limited ride And limited avatar frame</string>
<string name="delete_account1">Do you want to delete the account</string>
<string name="delete_account2">After clicking delete, it will take effect immediately and cannot be restored. Are you sure you want to continue?</string>
<string name="delete_account3">Confirm deletion</string>
<string name="complete_information">Fill And gift</string>
<string name="complete_information_consumable">Fill in the \'*\' option to complete</string>
<string name="love_powder">True love powder\nPhoto Frame(7 days)</string>
<string name="golden_beans_128">128 Golden Beans</string>
<string name="love_powder_medal">True love powder\nMedal (7 days)</string>
<string name="man_student">MAN</string>
<string name="girl_student">GIRL</string>
<string name="complete_information_hint">Backpack, please check</string>
<string name="complete_information_hint3">Leave without a gift</string>
<string name="complete_information_hint2">Love you</string>
<string name="you_guide_me">Can you guide me</string>
<string name="dialog_live_gift_noble">This gift is exclusive to the nobility~</string>
<string name="dialog_live_gift_guard">"This gift is exclusive to guardianship~ "</string>
<string name="dialog_live_gift_fans">This gift is exclusive to the fan group~</string>
<string name="dialog_live_gift_open_noble">VIP</string>
<string name="dialog_live_gift_open_guard">Open Guard</string>
<string name="dialog_live_gift_open_fans">Open Fan group</string>
<string name="dialog_live_function_qa">QA</string>
<string name="dialog_anchor_create_qa_submit">submit</string>
<string name="dialog_anchor_create_qa_cancel">cancel</string>
<string name="dialog_anchor_create_qa_question">question:</string>
<string name="dialog_anchor_create_qa_answer">answer:</string>
<string name="live_vote_close_title">Do you want to end this voting early?</string>
<string name="live_vote_close_yes">Yes</string>
<string name="live_vote_close_no">No</string>
<string name="live_vote_hide_text">VOTE</string>
<string name="live_room_vote_over_tip">%s <br/> box disappears after %s seconds</string>
<string name="live_anchor_vote_tip">Please complete the form.</string>
<string name="live_vote_create_error">Create Vote Error</string>
<string name="blind_box_list">Blind box</string>
<string name="resend_win">Send%smore must-have%s</string>
<string name="get_it_done">Completing a must have</string>
<string name="have_already_win">%s has been sent to your personalized dress up</string>
<string name="mini_blind_box">Mini blind box</string>
<string name="collection_blind_box">Collection blind box</string>
<string name="pd_blind_box">PD blind box</string>
<string name="individual_dressing">Individual dressing</string>
<string name="random_availability">Can be obtained randomly, %s</string>
<string name="random_availability2">I got %s %s</string>
<string name="random_availability3">Obtained, %s</string>
<string name="participate_in">Participate in</string>
<string name="extract_to">%s is extracted from %s</string>
<string name="extract_to2">%S sent to %s</string>
<string name="rebot_config_auto_say_max">Over the maximum value</string>
</resources>

View File

@@ -1144,4 +1144,48 @@
<string name="delete_account1">是否刪除賬號</string>
<string name="delete_account2">點擊刪除後即刻生效,且不可恢復,您確認要繼續嗎?</string>
<string name="delete_account3">確認刪除</string>
<string name="dialog_live_gift_noble">該禮物是貴族專屬禮物噢~</string>
<string name="dialog_live_gift_guard">該禮物是守護專屬禮物噢~</string>
<string name="dialog_live_gift_fans">"該禮物是粉絲團專屬禮物噢~ "</string>
<string name="dialog_live_gift_open_noble">開通貴族</string>
<string name="dialog_live_gift_open_guard">開通守護</string>
<string name="dialog_live_gift_open_fans">開通粉絲團</string>
<string name="dialog_live_function_qa">發啟問答</string>
<string name="dialog_anchor_create_qa_submit">發啟問答</string>
<string name="dialog_anchor_create_qa_cancel">取消</string>
<string name="dialog_anchor_create_qa_question">問題設置:</string>
<string name="dialog_anchor_create_qa_answer">答案設置:</string>
<string name="live_vote_close_title">是否提前結束本次投票?</string>
<string name="live_vote_close_yes"></string>
<string name="live_vote_close_no"></string>
<string name="live_vote_hide_text">投票中</string>
<string name="live_room_vote_over_tip">%s <br/> 問答框%s秒后消失</string>
<string name="live_anchor_vote_tip">請完整填寫</string>
<string name="complete_information_consumable">填寫“*”的選項可完成</string>
<string name="love_powder">真愛粉\n頭像框(7天)</string>
<string name="golden_beans_128">128金豆</string>
<string name="love_powder_medal">真愛粉\n勛章(7天)</string>
<string name="man_student">男生</string>
<string name="girl_student">女生</string>
<string name="complete_information_hint">已將獎勵發送至您的背包,請注意查看。</string>
<string name="complete_information_hint3">離開會讓您失去獎勵,您確認離開嗎?</string>
<string name="complete_information_hint2">愛你,愛你</string>
<string name="you_guide_me">指導下我好嗎</string>
<string name="complete_information">完整填寫領大禮</string>
<string name="live_vote_create_error">投票創建失敗</string>
<string name="mini_blind_box">迷你盲盒</string>
<string name="resend_win">再送%s个必得%s</string>
<string name="have_already_win">已将%s发送至您的个性装扮</string>
<string name="pd_blind_box">PD盲盒</string>
<string name="collection_blind_box">典藏盲盒</string>
<string name="individual_dressing">个性装扮</string>
<string name="random_availability">可随机获得,%s</string>
<string name="random_availability2">已获得,%s%s</string>
<string name="random_availability3">已获得,%s</string>
<string name="get_it_done">完成必得</string>
<string name="blind_box_list">盲盒榜</string>
<string name="participate_in">參與</string>
<string name="extract_to">%s在%s中抽取到了</string>
<string name="extract_to2">%S送给了%s</string>
<string name="rebot_config_auto_say_max">超过最大值</string>
</resources>

View File

@@ -1143,4 +1143,48 @@
<string name="delete_account1">是否刪除賬號</string>
<string name="delete_account2">點擊刪除後即刻生效,且不可恢復,您確認要繼續嗎?</string>
<string name="delete_account3">確認刪除</string>
<string name="dialog_live_gift_noble">該禮物是貴族專屬禮物噢~</string>
<string name="dialog_live_gift_guard">該禮物是守護專屬禮物噢~</string>
<string name="dialog_live_gift_fans">"該禮物是粉絲團專屬禮物噢~ "</string>
<string name="dialog_live_gift_open_noble">開通貴族</string>
<string name="dialog_live_gift_open_guard">開通守護</string>
<string name="dialog_live_gift_open_fans">開通粉絲團</string>
<string name="dialog_live_function_qa">發啟問答</string>
<string name="dialog_anchor_create_qa_submit">發啟問答</string>
<string name="dialog_anchor_create_qa_cancel">取消</string>
<string name="dialog_anchor_create_qa_question">問題設置:</string>
<string name="dialog_anchor_create_qa_answer">答案設置:</string>
<string name="live_vote_close_title">是否提前結束本次投票?</string>
<string name="live_vote_close_yes"></string>
<string name="live_vote_close_no"></string>
<string name="live_vote_hide_text">投票中</string>
<string name="live_room_vote_over_tip">%s <br/> 問答框%s秒后消失</string>
<string name="live_anchor_vote_tip">請完整填寫</string>
<string name="complete_information_consumable">填寫“*”的選項可完成</string>
<string name="love_powder">真愛粉\n頭像框(7天)</string>
<string name="golden_beans_128">128金豆</string>
<string name="love_powder_medal">真愛粉\n勛章(7天)</string>
<string name="man_student">男生</string>
<string name="girl_student">女生</string>
<string name="complete_information_hint">已將獎勵發送至您的背包,請注意查看。</string>
<string name="complete_information_hint3">離開會讓您失去獎勵,您確認離開嗎?</string>
<string name="complete_information_hint2">愛你,愛你</string>
<string name="you_guide_me">指導下我好嗎</string>
<string name="complete_information">完整填寫領大禮</string>
<string name="live_vote_create_error">投票創建失敗</string>
<string name="mini_blind_box">迷你盲盒</string>
<string name="resend_win">再送%s个必得%s</string>
<string name="have_already_win">已将%s发送至您的个性装扮</string>
<string name="pd_blind_box">PD盲盒</string>
<string name="collection_blind_box">典藏盲盒</string>
<string name="individual_dressing">个性装扮</string>
<string name="random_availability">可随机获得,%s</string>
<string name="random_availability2">已获得,%s%s</string>
<string name="random_availability3">已获得,%s</string>
<string name="get_it_done">完成必得</string>
<string name="blind_box_list">盲盒榜</string>
<string name="participate_in">參與</string>
<string name="extract_to">%s在%s中抽取到了</string>
<string name="extract_to2">%S送给了%s</string>
<string name="rebot_config_auto_say_max">超过最大值</string>
</resources>

View File

@@ -1144,4 +1144,48 @@
<string name="delete_account1">是否刪除賬號</string>
<string name="delete_account2">點擊刪除後即刻生效,且不可恢復,您確認要繼續嗎?</string>
<string name="delete_account3">確認刪除</string>
<string name="complete_information">完整填寫領大禮</string>
<string name="dialog_live_gift_noble">該禮物是貴族專屬禮物噢~</string>
<string name="dialog_live_gift_guard">該禮物是守護專屬禮物噢~</string>
<string name="dialog_live_gift_fans">"該禮物是粉絲團專屬禮物噢~ "</string>
<string name="dialog_live_gift_open_noble">開通貴族</string>
<string name="dialog_live_gift_open_guard">開通守護</string>
<string name="dialog_live_gift_open_fans">開通粉絲團</string>
<string name="dialog_live_function_qa">發啟問答</string>
<string name="dialog_anchor_create_qa_submit">發啟問答</string>
<string name="dialog_anchor_create_qa_cancel">取消</string>
<string name="dialog_anchor_create_qa_question">問題設置:</string>
<string name="dialog_anchor_create_qa_answer">答案設置:</string>
<string name="live_vote_close_title">是否提前結束本次投票?</string>
<string name="live_vote_close_yes"></string>
<string name="live_vote_close_no"></string>
<string name="live_vote_hide_text">投票中</string>
<string name="live_room_vote_over_tip">%s <br /> 問答框%s秒后消失</string>
<string name="live_anchor_vote_tip">請完整填寫</string>
<string name="complete_information_consumable">填寫“*”的選項可完成</string>
<string name="love_powder">真愛粉\n頭像框(7天)</string>
<string name="golden_beans_128">128金豆</string>
<string name="love_powder_medal">真愛粉\n勛章(7天)</string>
<string name="man_student">男生</string>
<string name="girl_student">女生</string>
<string name="complete_information_hint">已將獎勵發送至您的背包,請注意查看。</string>
<string name="complete_information_hint3">離開會讓您失去獎勵,您確認離開嗎?</string>
<string name="complete_information_hint2">愛你,愛你</string>
<string name="you_guide_me">指導下我好嗎</string>
<string name="resend_win">再送%s个必得%s</string>
<string name="have_already_win">已将%s发送至您的个性装扮</string>
<string name="mini_blind_box">迷你盲盒</string>
<string name="collection_blind_box">典藏盲盒</string>
<string name="pd_blind_box">PD盲盒</string>
<string name="live_vote_create_error">投票創建失敗</string>
<string name="individual_dressing">个性装扮</string>
<string name="random_availability">可随机获得,%s</string>
<string name="random_availability2">已获得,%s%s</string>
<string name="random_availability3">已获得,%s</string>
<string name="get_it_done">完成必得</string>
<string name="blind_box_list">盲盒榜</string>
<string name="participate_in">參與</string>
<string name="extract_to">%s在%s中抽取到了</string>
<string name="extract_to2">%S送给了%s</string>
<string name="rebot_config_auto_say_max">超过最大值</string>
</resources>

View File

@@ -1150,4 +1150,48 @@ Limited ride And limited avatar frame</string>
<string name="delete_account1">Do you want to delete the account</string>
<string name="delete_account2">After clicking delete, it will take effect immediately and cannot be restored. Are you sure you want to continue?</string>
<string name="delete_account3">Confirm deletion</string>
<string name="dialog_live_gift_noble">This gift is exclusive to the nobility~</string>
<string name="dialog_live_gift_guard">This gift is exclusive to guardianship~</string>
<string name="dialog_live_gift_fans">This gift is exclusive to the fan group~</string>
<string name="dialog_live_gift_open_noble">VIP</string>
<string name="dialog_live_gift_open_guard">Open Guard</string>
<string name="dialog_live_gift_open_fans">Open Fan group</string>
<string name="dialog_live_function_qa">QA</string>
<string name="dialog_anchor_create_qa_submit">submit</string>
<string name="dialog_anchor_create_qa_cancel">cancel</string>
<string name="dialog_anchor_create_qa_question">question:</string>
<string name="dialog_anchor_create_qa_answer">answer:</string>
<string name="live_vote_close_title">Do you want to end this voting early?</string>
<string name="live_vote_close_yes">Yes</string>
<string name="live_vote_close_no">No</string>
<string name="live_vote_hide_text">VOTE</string>
<string name="live_room_vote_over_tip">%s <br /> box disappears after %s seconds</string>
<string name="live_anchor_vote_tip">Please complete the form.</string>
<string name="complete_information">Fill And gift</string>
<string name="complete_information_consumable">Fill in the \'*\' option to complete</string>
<string name="love_powder">True love powder\nPhoto Frame(7 days)</string>
<string name="golden_beans_128">128 Golden Beans</string>
<string name="love_powder_medal">True love powder\nMedal (7 days)</string>
<string name="man_student">MAN</string>
<string name="girl_student">GIRL</string>
<string name="complete_information_hint">Backpack, please check</string>
<string name="complete_information_hint3">Leave without a gift</string>
<string name="complete_information_hint2">Love you</string>
<string name="you_guide_me">Can you guide me</string>
<string name="resend_win">Send%smore must-have%s</string>
<string name="have_already_win">%s has been sent to your personalized dress up</string>
<string name="mini_blind_box">Mini blind box</string>
<string name="collection_blind_box">Collection blind box</string>
<string name="pd_blind_box">PD blind box</string>
<string name="individual_dressing">Individual dressing</string>
<string name="random_availability">Can be obtained randomly, %s</string>
<string name="random_availability2">I got %s %s</string>
<string name="random_availability3">Obtained, %s</string>
<string name="get_it_done">Completing a must have</string>
<string name="blind_box_list">Blind box</string>
<string name="participate_in">Participate in</string>
<string name="extract_to">%s is extracted from %s</string>
<string name="extract_to2">%S sent to %s</string>
<string name="live_vote_create_error">Create Vote Error</string>
<string name="rebot_config_auto_say_max">Over the maximum value</string>
</resources>

View File

@@ -93,9 +93,10 @@
<style name="edit_profile_group" parent="AppTheme">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">60dp</item>
<item name="android:layout_height">45dp</item>
<item name="android:paddingLeft">15dp</item>
<item name="android:paddingRight">15dp</item>
<item name="android:background">@color/white</item>
</style>
<style name="Theme.PayssionTrans" parent="Theme.AppCompat.Light">