Compare commits
119 Commits
dev_gift_6
...
master_sen
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
644615ffc0 | ||
|
|
345c9067aa | ||
|
|
c20312b982 | ||
|
|
643568f63b | ||
|
|
f03ba293b5 | ||
| a2f954b28a | |||
| d4549793d1 | |||
|
|
5da8855948 | ||
|
|
348dca8474 | ||
|
|
5afed0ee43 | ||
|
|
d065726274 | ||
|
|
8f9d558043 | ||
| c594364574 | |||
|
|
68140c8a3a | ||
| 5a4001c858 | |||
|
|
d5953bd651 | ||
|
|
17a2f5e091 | ||
|
|
b2297b062e | ||
| b53472de28 | |||
|
|
9bce235817 | ||
|
|
60ce5572cf | ||
|
|
3761cad653 | ||
|
|
2a276503b5 | ||
| fd0ad36a58 | |||
| 41c8783b53 | |||
|
|
7226add482 | ||
| 09e5f9b984 | |||
| 83ee1f94df | |||
|
|
7e1b054a98 | ||
|
|
9e0c437af5 | ||
|
|
ad26ae7db8 | ||
|
|
84230e517e | ||
| 9818a1af74 | |||
| f91ba79c5c | |||
|
|
0ea9ffc2e8 | ||
|
|
defb5fdd02 | ||
| b443fdd683 | |||
|
|
c11c66f56f | ||
|
|
a618bee6b7 | ||
| 399bedb874 | |||
|
|
3b6e2d47f4 | ||
|
|
96daf73a5c | ||
|
|
55cbd0ff5b | ||
|
|
a3ab9ff03e | ||
|
|
92ed82ea2a | ||
|
|
6d262d0c94 | ||
|
|
ce1174a88c | ||
|
|
2406e9bede | ||
| 9b3a011499 | |||
|
|
7859e7cb29 | ||
|
|
1fd36e3ba0 | ||
| ec3722b7d0 | |||
|
|
35917a5848 | ||
|
|
7ea6bb570d | ||
|
|
43f95260e6 | ||
|
|
54a4c0b590 | ||
|
|
2057a3575f | ||
|
|
aa809ebaf4 | ||
|
|
dffa71e346 | ||
|
|
fea46aab1f | ||
|
|
e032e0807b | ||
|
|
24ed313f60 | ||
|
|
02b70d559d | ||
|
|
7a26e81f67 | ||
| d07439efcf | |||
|
|
7bca817633 | ||
|
|
bad2b3689a | ||
| 3cc9b90151 | |||
|
|
e32e6f95b0 | ||
|
|
2162645da1 | ||
|
|
af17c85366 | ||
|
|
20c00e2896 | ||
|
|
44b95cb1c6 | ||
| 40e744a533 | |||
|
|
82ccd2d89c | ||
|
|
994bd2a3aa | ||
| 3ab91a74d1 | |||
|
|
d899975495 | ||
| dbbe753492 | |||
|
|
017320ac09 | ||
| 7ce0bb3a7c | |||
|
|
a78d5b4aba | ||
| 37fd1e9f47 | |||
|
|
97ad28ba62 | ||
| 3304e8f673 | |||
| e7daabe588 | |||
| d912ad6119 | |||
|
|
dfeb1c246b | ||
|
|
9588619b73 | ||
|
|
6ba71508ca | ||
| c8f443c105 | |||
|
|
ebcfddf450 | ||
| e43fb5e479 | |||
|
|
0c096dcafc | ||
|
|
545c69ff8b | ||
| bf8d88608d | |||
|
|
45c256cbbb | ||
|
|
fb1d6c0688 | ||
| fe921e25bb | |||
|
|
d5ca010ec7 | ||
|
|
04259472a1 | ||
| fae0d01dc2 | |||
| 9a8bc0505d | |||
| e31fa0310c | |||
| 2705342e18 | |||
| 1bdf3a2ba3 | |||
| c53b9a6064 | |||
| 92d4130c45 | |||
| 7e3ca79a01 | |||
| dfeb3a78c1 | |||
| e32d450ca1 | |||
| f29766731c | |||
| 736592b4e1 | |||
| 3108c898c2 | |||
| dd2f3db16a | |||
| 8af231e526 | |||
| fdbbc3b224 | |||
| 1e4b0bb536 | |||
| 4729f93515 |
@@ -19,6 +19,8 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.blankj.utilcode.util.Utils;
|
||||
import com.facebook.appevents.AppEventsLogger;
|
||||
import com.fm.openinstall.OpenInstall;
|
||||
@@ -34,6 +36,7 @@ import com.yunbao.common.BuildConfig;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.CommonAppContext;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.bean.AnchorStartLiveBean;
|
||||
import com.yunbao.common.bean.CrashSaveBean;
|
||||
import com.yunbao.common.manager.imrongcloud.InstructorSendReward;
|
||||
import com.yunbao.common.manager.imrongcloud.InstructorSendRewardProvider;
|
||||
@@ -44,6 +47,7 @@ import com.yunbao.common.utils.AppManager;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.live.socket.SocketReceiveBean;
|
||||
import com.yunbao.live.socket.SocketRyClient;
|
||||
import com.yunbao.live.utils.LiveImDeletUtil;
|
||||
import com.yunbao.live.views.PortraitLiveManager;
|
||||
@@ -131,12 +135,6 @@ public class AppContext extends CommonAppContext {
|
||||
if (!isMainProcess()) {
|
||||
return;
|
||||
}
|
||||
AppManager.runDebugCode(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
ToastUtil.show("Debug代码");
|
||||
}
|
||||
});
|
||||
CrashSaveBean.getInstance().setStartTime(System.currentTimeMillis());
|
||||
//注册全局异常捕获
|
||||
registerError();
|
||||
@@ -201,11 +199,16 @@ public class AppContext extends CommonAppContext {
|
||||
&& (TextUtils.equals("__system__", message.getTargetId())
|
||||
|| ("g" + PortraitLiveManager.liveID).contains(message.getTargetId()))) {
|
||||
SocketRyClient.mSocketHandler.sendMessage(msg);
|
||||
} else if (content.getContent().contains("LivePK_anchorStartLiveNotify")) {//开播通知
|
||||
SocketReceiveBean received = JSON.parseObject(content.getContent(), SocketReceiveBean.class);
|
||||
JSONObject map = received.getMsg().getJSONObject(0);
|
||||
sendStartAnchorLive(map);
|
||||
}
|
||||
//主播页面
|
||||
if (TextUtils.isEmpty(PortraitLiveManager.liveID) && SocketRyClient.mSocketHandler != null) {
|
||||
SocketRyClient.mSocketHandler.sendMessage(msg);
|
||||
}
|
||||
|
||||
} else if (message.getConversationType() == Conversation.ConversationType.PRIVATE) {//私聊信息
|
||||
EventBus.getDefault().post(message);
|
||||
}
|
||||
@@ -215,6 +218,14 @@ public class AppContext extends CommonAppContext {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private void sendStartAnchorLive(JSONObject map) {
|
||||
AnchorStartLiveBean bean = new AnchorStartLiveBean();
|
||||
bean.setAnchorName(map.getString("anchorName"));
|
||||
bean.setRoomId(map.getString("roomid"));
|
||||
bean.setAvatar(map.getString("avatar"));
|
||||
EventBus.getDefault().post(bean);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -322,7 +333,7 @@ public class AppContext extends CommonAppContext {
|
||||
}
|
||||
|
||||
|
||||
private void setFirebaseCrashData() {
|
||||
public static void setFirebaseCrashData() {
|
||||
if (!CommonAppConfig.IS_UPLOAD_ERROR_LOG) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -8,11 +8,13 @@ import android.os.Looper;
|
||||
import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.google.firebase.crashlytics.FirebaseCrashlytics;
|
||||
import com.yunbao.common.BuildConfig;
|
||||
import com.yunbao.common.bean.CrashSaveBean;
|
||||
import com.yunbao.common.utils.AppManager;
|
||||
import com.yunbao.common.utils.FileUtil;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.PrintWriter;
|
||||
@@ -105,7 +107,8 @@ public class NeverCrashUtils {
|
||||
Log.e(TAG, "未捕获的主线程异常行为", e);
|
||||
}
|
||||
e.printStackTrace();
|
||||
|
||||
AppContext.setFirebaseCrashData();
|
||||
FirebaseCrashlytics.getInstance().recordException(e);
|
||||
AppManager.runDebugCode(() -> Toast.makeText(application, "发生闪退:" + e.getMessage(), Toast.LENGTH_SHORT).show());
|
||||
FileUtil.saveStringToFile(new File(application.getDir("files", Context.MODE_PRIVATE).getAbsolutePath()), throwableToString(e), "error.log");
|
||||
getMainCrashHandler().mainException(Looper.getMainLooper().getThread(), e);
|
||||
|
||||
@@ -23,12 +23,16 @@ import android.widget.ProgressBar;
|
||||
|
||||
import androidx.annotation.RequiresApi;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.CommonAppContext;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.R;
|
||||
import com.yunbao.common.bean.LiveBean;
|
||||
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||
import com.yunbao.common.event.LiveRoomChangeEvent;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.http.live.LiveNetManager;
|
||||
import com.yunbao.common.manager.IMLoginManager;
|
||||
@@ -39,10 +43,13 @@ import com.yunbao.common.utils.DeviceUtils;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.common.utils.MicStatusManager;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.HintCustomPopup;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
@@ -162,7 +169,7 @@ public class WebViewActivity extends AbsActivity {
|
||||
mWebView.getSettings().setJavaScriptEnabled(true);
|
||||
mWebView.getSettings().setDomStorageEnabled(true);
|
||||
String appCachePath = mContext.getCacheDir().getAbsolutePath();
|
||||
mWebView.getSettings().setAppCachePath(appCachePath);
|
||||
// mWebView.getSettings().setAppCachePath(appCachePath);
|
||||
mWebView.getSettings().setAllowFileAccess(true);
|
||||
mWebView.getSettings().setUseWideViewPort(true); // 关键点
|
||||
mWebView.getSettings().setAllowFileAccess(true); // 允许访问文件
|
||||
@@ -253,7 +260,8 @@ public class WebViewActivity extends AbsActivity {
|
||||
}
|
||||
|
||||
public static void forward(Context context, String url) {
|
||||
forward(context, url, true); }
|
||||
forward(context, url, true);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@@ -374,6 +382,44 @@ public class WebViewActivity extends AbsActivity {
|
||||
}
|
||||
}))
|
||||
.show();
|
||||
} else if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||
//看直播
|
||||
gotoLive(event.getLiveId());
|
||||
}
|
||||
}
|
||||
|
||||
private void gotoLive(final String live_id) {
|
||||
|
||||
LiveHttpUtil.getLiveInfo(live_id, new com.yunbao.common.http.HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 0 && info.length > 0) {
|
||||
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
|
||||
new LiveRoomCheckLivePresenter(mContext, liveBean.getUid(), liveBean.getStream(), new LiveRoomCheckLivePresenter.NewActionListener() {
|
||||
@Override
|
||||
public void onLiveRoomChanged(String liveUid, String stream, int liveType, String liveTypeVal, String liveSdk) {
|
||||
if (liveBean == null) {
|
||||
return;
|
||||
}
|
||||
if (MicStatusManager.getInstance().isMic(liveUid)) {
|
||||
MicStatusManager.getInstance().showDownMicDialog(mContext);
|
||||
return;
|
||||
}
|
||||
RouteUtil.forwardLiveAudienceActivity(liveBean, liveType, Integer.parseInt(liveSdk), Integer.parseInt(liveTypeVal));
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCheckError(String contextError) {
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
RouteUtil.forwardUserHome(mContext, live_id, 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,11 @@ import java.util.List;
|
||||
|
||||
public class GiftAlreadyWallAdapter extends RecyclerView.Adapter {
|
||||
private List<GiftWallModel> giftWall = new ArrayList<>();
|
||||
private boolean sbWy;//是否正在直播
|
||||
|
||||
public GiftAlreadyWallAdapter(boolean sbWy) {
|
||||
this.sbWy = sbWy;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
@@ -27,7 +32,7 @@ public class GiftAlreadyWallAdapter extends RecyclerView.Adapter {
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
||||
GiftAlreadyWallViewHolder withoutWallViewHolder = (GiftAlreadyWallViewHolder) holder;
|
||||
withoutWallViewHolder.showData(giftWall.get(position));
|
||||
withoutWallViewHolder.showData(giftWall.get(position), sbWy);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.yunbao.common.adapter;
|
||||
|
||||
import android.text.TextUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@@ -11,6 +12,7 @@ import com.yunbao.common.R;
|
||||
import com.yunbao.common.bean.WishModel;
|
||||
import com.yunbao.common.event.LiveNewWishListCloseEvent;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.DayWishItemViewHolder;
|
||||
import com.yunbao.common.views.LunarWishItemViewHolder;
|
||||
import com.yunbao.common.views.SeasonalWishItemViewHolder;
|
||||
@@ -46,8 +48,20 @@ public class LiveNewWishAdapter extends RecyclerView.Adapter {
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setSeasonalWish(true));
|
||||
break;
|
||||
}
|
||||
boolean isAdd = false;
|
||||
for (int i = 0; i < wishList.size(); i++) {
|
||||
if (wishList.get(i)!=null){
|
||||
if (!TextUtils.isEmpty(wishList.get(i).getLid()) && !TextUtils.isEmpty(model.getLid())
|
||||
&& TextUtils.equals(wishList.get(i).getLid(), model.getLid())) {
|
||||
ToastUtil.show(R.string.too_many_gifts);
|
||||
isAdd = true;
|
||||
}
|
||||
}
|
||||
|
||||
wishList.add(0, model);
|
||||
}
|
||||
if (!isAdd) {
|
||||
wishList.add(0, model);
|
||||
}
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
public class AnchorStartLiveBean extends BaseModel{
|
||||
private String anchorName;
|
||||
private String avatar;
|
||||
private String roomId;
|
||||
|
||||
public String getAnchorName() {
|
||||
return anchorName;
|
||||
}
|
||||
|
||||
public void setAnchorName(String anchorName) {
|
||||
this.anchorName = anchorName;
|
||||
}
|
||||
|
||||
public String getAvatar() {
|
||||
return avatar;
|
||||
}
|
||||
|
||||
public void setAvatar(String avatar) {
|
||||
this.avatar = avatar;
|
||||
}
|
||||
|
||||
public String getRoomId() {
|
||||
return roomId;
|
||||
}
|
||||
|
||||
public void setRoomId(String roomId) {
|
||||
this.roomId = roomId;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class FansCheckRed extends BaseModel{
|
||||
@SerializedName("fans_level_upgrade_status")
|
||||
private int status;
|
||||
|
||||
public FansCheckRed() {
|
||||
}
|
||||
|
||||
public int getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(int status) {
|
||||
this.status = status;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class FansGroupGiftPack extends BaseModel{
|
||||
@SerializedName("id")
|
||||
private int id;
|
||||
@SerializedName("quantity")
|
||||
private int quantity;
|
||||
@SerializedName("end_time")
|
||||
private String endTime;
|
||||
@SerializedName("giftname")
|
||||
private String giftName;
|
||||
@SerializedName("needcoin")
|
||||
private String needCoin;
|
||||
@SerializedName("gifticon")
|
||||
private String icon;
|
||||
|
||||
public FansGroupGiftPack() {
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public int getQuantity() {
|
||||
return quantity;
|
||||
}
|
||||
|
||||
public void setQuantity(int quantity) {
|
||||
this.quantity = quantity;
|
||||
}
|
||||
|
||||
public String getEndTime() {
|
||||
return endTime;
|
||||
}
|
||||
|
||||
public void setEndTime(String endTime) {
|
||||
this.endTime = endTime;
|
||||
}
|
||||
|
||||
public String getGiftName() {
|
||||
return giftName;
|
||||
}
|
||||
|
||||
public void setGiftName(String giftName) {
|
||||
this.giftName = giftName;
|
||||
}
|
||||
|
||||
public String getNeedCoin() {
|
||||
return needCoin;
|
||||
}
|
||||
|
||||
public void setNeedCoin(String needCoin) {
|
||||
this.needCoin = needCoin;
|
||||
}
|
||||
|
||||
public String getIcon() {
|
||||
return icon;
|
||||
}
|
||||
|
||||
public void setIcon(String icon) {
|
||||
this.icon = icon;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "FansGroupGiftPack{" +
|
||||
"id=" + id +
|
||||
", quantity=" + quantity +
|
||||
", endTime='" + endTime + '\'' +
|
||||
", giftName='" + giftName + '\'' +
|
||||
", needCoin='" + needCoin + '\'' +
|
||||
", icon='" + icon + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,161 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class FansGroupGiftPackInfo extends BaseModel {
|
||||
@SerializedName("id")
|
||||
private int id;
|
||||
@SerializedName("pack_name")
|
||||
private String packName;
|
||||
@SerializedName("description")
|
||||
private String description;
|
||||
@SerializedName("coin")
|
||||
private String coin;
|
||||
@SerializedName("data")
|
||||
private List<Gift> data;
|
||||
|
||||
public FansGroupGiftPackInfo() {
|
||||
}
|
||||
|
||||
public String getPackName() {
|
||||
return packName;
|
||||
}
|
||||
|
||||
public void setPackName(String packName) {
|
||||
this.packName = packName;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public String getCoin() {
|
||||
return coin;
|
||||
}
|
||||
|
||||
public void setCoin(String coin) {
|
||||
this.coin = coin;
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public List<Gift> getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public void setData(List<Gift> data) {
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "FansGroupGiftPackInfo{" +
|
||||
"id=" + id +
|
||||
", packName='" + packName + '\'' +
|
||||
", description='" + description + '\'' +
|
||||
", coin='" + coin + '\'' +
|
||||
", data=" + data +
|
||||
'}';
|
||||
}
|
||||
|
||||
public static class Gift {
|
||||
@SerializedName("id")
|
||||
private int id;
|
||||
@SerializedName("name")
|
||||
private String giftName;
|
||||
@SerializedName("needcoin")
|
||||
private String needCoin;
|
||||
@SerializedName("src")
|
||||
private String giftIcon;
|
||||
@SerializedName("quantity")
|
||||
private String quantity;
|
||||
@SerializedName("restrict")
|
||||
private int restrict;
|
||||
@SerializedName("type")
|
||||
private int type;
|
||||
|
||||
public Gift() {
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getGiftName() {
|
||||
return giftName;
|
||||
}
|
||||
|
||||
public void setGiftName(String giftName) {
|
||||
this.giftName = giftName;
|
||||
}
|
||||
|
||||
public String getNeedCoin() {
|
||||
return needCoin;
|
||||
}
|
||||
|
||||
public void setNeedCoin(String needCoin) {
|
||||
this.needCoin = needCoin;
|
||||
}
|
||||
|
||||
public String getGiftIcon() {
|
||||
return giftIcon;
|
||||
}
|
||||
|
||||
public void setGiftIcon(String giftIcon) {
|
||||
this.giftIcon = giftIcon;
|
||||
}
|
||||
|
||||
public String getQuantity() {
|
||||
return quantity;
|
||||
}
|
||||
|
||||
public void setQuantity(String quantity) {
|
||||
this.quantity = quantity;
|
||||
}
|
||||
|
||||
public int getRestrict() {
|
||||
return restrict;
|
||||
}
|
||||
|
||||
public void setRestrict(int restrict) {
|
||||
this.restrict = restrict;
|
||||
}
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(int type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Gift{" +
|
||||
"id=" + id +
|
||||
", giftName='" + giftName + '\'' +
|
||||
", needCoin='" + needCoin + '\'' +
|
||||
", giftIcon='" + giftIcon + '\'' +
|
||||
", quantity='" + quantity + '\'' +
|
||||
", restrict='" + restrict + '\'' +
|
||||
", type=" + type +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
}
|
||||
57
common/src/main/java/com/yunbao/common/bean/FansModel.java
Normal file
57
common/src/main/java/com/yunbao/common/bean/FansModel.java
Normal file
@@ -0,0 +1,57 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class FansModel extends BaseModel {
|
||||
|
||||
@SerializedName("levelid")
|
||||
private int levelid;
|
||||
@SerializedName("thumb")
|
||||
private String thumb;
|
||||
@SerializedName("colour")
|
||||
private String colour;
|
||||
@SerializedName("thumb_mark")
|
||||
private String thumbMark;
|
||||
@SerializedName("bg")
|
||||
private String bg;
|
||||
|
||||
public int getLevelid() {
|
||||
return levelid;
|
||||
}
|
||||
|
||||
public void setLevelid(int levelid) {
|
||||
this.levelid = levelid;
|
||||
}
|
||||
|
||||
public String getThumb() {
|
||||
return thumb;
|
||||
}
|
||||
|
||||
public void setThumb(String thumb) {
|
||||
this.thumb = thumb;
|
||||
}
|
||||
|
||||
public String getColour() {
|
||||
return colour;
|
||||
}
|
||||
|
||||
public void setColour(String colour) {
|
||||
this.colour = colour;
|
||||
}
|
||||
|
||||
public String getThumbMark() {
|
||||
return thumbMark;
|
||||
}
|
||||
|
||||
public void setThumbMark(String thumbMark) {
|
||||
this.thumbMark = thumbMark;
|
||||
}
|
||||
|
||||
public String getBg() {
|
||||
return bg;
|
||||
}
|
||||
|
||||
public void setBg(String bg) {
|
||||
this.bg = bg;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,359 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class GiftNamingInfoModel extends BaseModel {
|
||||
|
||||
@SerializedName("id")
|
||||
private String id;
|
||||
@SerializedName("sendtype")
|
||||
private String sendtype;
|
||||
@SerializedName("type")
|
||||
private String type;
|
||||
@SerializedName("name")
|
||||
private String name;
|
||||
@SerializedName("release_status")
|
||||
private String releaseStatus;
|
||||
@SerializedName("type_sort")
|
||||
private String typeSort;
|
||||
@SerializedName("operate_image")
|
||||
private String operateImage;
|
||||
@SerializedName("operate_url")
|
||||
private String operateUrl;
|
||||
@SerializedName("mark")
|
||||
private String mark;
|
||||
@SerializedName("giftname")
|
||||
private String giftname;
|
||||
@SerializedName("needcoin")
|
||||
private String needcoin;
|
||||
@SerializedName("gifticon")
|
||||
private String gifticon;
|
||||
@SerializedName("gift_description")
|
||||
private String giftDescription;
|
||||
@SerializedName("corner_mark")
|
||||
private String cornerMark;
|
||||
@SerializedName("swf")
|
||||
private String swf;
|
||||
@SerializedName("gift_uid")
|
||||
private String giftUid;
|
||||
@SerializedName("type_start_time")
|
||||
private String typeStartTime;
|
||||
@SerializedName("type_end_time")
|
||||
private String typeEndTime;
|
||||
@SerializedName("gift_start_time")
|
||||
private String giftStartTime;
|
||||
@SerializedName("gift_end_time")
|
||||
private String giftEndTime;
|
||||
@SerializedName("naming_liveuid")
|
||||
private String namingLiveuid;
|
||||
@SerializedName("naming_uid")
|
||||
private String namingUid;
|
||||
@SerializedName("naming_live_name")
|
||||
private String namingLiveName;
|
||||
@SerializedName("naming_user_name")
|
||||
private String namingUserName;
|
||||
@SerializedName("naming_live_avatar")
|
||||
private String namingLiveAvatar;
|
||||
@SerializedName("naming_user_avatar")
|
||||
private String namingUserAvatar;
|
||||
@SerializedName("naming_status")
|
||||
private String namingStatus;
|
||||
@SerializedName("naming_coin")
|
||||
private String namingCoin;
|
||||
@SerializedName("fans_level")
|
||||
private String fansLevel;
|
||||
@SerializedName("naming_user_coin")
|
||||
private String namingUserCoin;
|
||||
@SerializedName("naming_live_coin")
|
||||
private String namingLiveCoin;
|
||||
@SerializedName("isweek")
|
||||
private String isweek;
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setId(String id) {
|
||||
this.id = id;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getSendtype() {
|
||||
return sendtype;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setSendtype(String sendtype) {
|
||||
this.sendtype = sendtype;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setType(String type) {
|
||||
this.type = type;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setName(String name) {
|
||||
this.name = name;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getReleaseStatus() {
|
||||
return releaseStatus;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setReleaseStatus(String releaseStatus) {
|
||||
this.releaseStatus = releaseStatus;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getTypeSort() {
|
||||
return typeSort;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setTypeSort(String typeSort) {
|
||||
this.typeSort = typeSort;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getOperateImage() {
|
||||
return operateImage;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setOperateImage(String operateImage) {
|
||||
this.operateImage = operateImage;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getOperateUrl() {
|
||||
return operateUrl;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setOperateUrl(String operateUrl) {
|
||||
this.operateUrl = operateUrl;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getMark() {
|
||||
return mark;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setMark(String mark) {
|
||||
this.mark = mark;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGiftname() {
|
||||
return giftname;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGiftname(String giftname) {
|
||||
this.giftname = giftname;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNeedcoin() {
|
||||
return needcoin;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNeedcoin(String needcoin) {
|
||||
this.needcoin = needcoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGifticon() {
|
||||
return gifticon;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGifticon(String gifticon) {
|
||||
this.gifticon = gifticon;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGiftDescription() {
|
||||
return giftDescription;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGiftDescription(String giftDescription) {
|
||||
this.giftDescription = giftDescription;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCornerMark() {
|
||||
return cornerMark;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setCornerMark(String cornerMark) {
|
||||
this.cornerMark = cornerMark;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getSwf() {
|
||||
return swf;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setSwf(String swf) {
|
||||
this.swf = swf;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGiftUid() {
|
||||
return giftUid;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGiftUid(String giftUid) {
|
||||
this.giftUid = giftUid;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getTypeStartTime() {
|
||||
return typeStartTime;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setTypeStartTime(String typeStartTime) {
|
||||
this.typeStartTime = typeStartTime;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getTypeEndTime() {
|
||||
return typeEndTime;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setTypeEndTime(String typeEndTime) {
|
||||
this.typeEndTime = typeEndTime;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGiftStartTime() {
|
||||
return giftStartTime;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGiftStartTime(String giftStartTime) {
|
||||
this.giftStartTime = giftStartTime;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGiftEndTime() {
|
||||
return giftEndTime;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setGiftEndTime(String giftEndTime) {
|
||||
this.giftEndTime = giftEndTime;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingLiveuid() {
|
||||
return namingLiveuid;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingLiveuid(String namingLiveuid) {
|
||||
this.namingLiveuid = namingLiveuid;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingUid() {
|
||||
return namingUid;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingUid(String namingUid) {
|
||||
this.namingUid = namingUid;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingLiveName() {
|
||||
return namingLiveName;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingLiveName(String namingLiveName) {
|
||||
this.namingLiveName = namingLiveName;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingUserName() {
|
||||
return namingUserName;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingUserName(String namingUserName) {
|
||||
this.namingUserName = namingUserName;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingLiveAvatar() {
|
||||
return namingLiveAvatar;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingLiveAvatar(String namingLiveAvatar) {
|
||||
this.namingLiveAvatar = namingLiveAvatar;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingUserAvatar() {
|
||||
return namingUserAvatar;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingUserAvatar(String namingUserAvatar) {
|
||||
this.namingUserAvatar = namingUserAvatar;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingStatus() {
|
||||
return namingStatus;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingStatus(String namingStatus) {
|
||||
this.namingStatus = namingStatus;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingCoin() {
|
||||
return namingCoin;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingCoin(String namingCoin) {
|
||||
this.namingCoin = namingCoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getFansLevel() {
|
||||
return fansLevel;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setFansLevel(String fansLevel) {
|
||||
this.fansLevel = fansLevel;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingUserCoin() {
|
||||
return namingUserCoin;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingUserCoin(String namingUserCoin) {
|
||||
this.namingUserCoin = namingUserCoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNamingLiveCoin() {
|
||||
return namingLiveCoin;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setNamingLiveCoin(String namingLiveCoin) {
|
||||
this.namingLiveCoin = namingLiveCoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getIsweek() {
|
||||
return isweek;
|
||||
}
|
||||
|
||||
public GiftNamingInfoModel setIsweek(String isweek) {
|
||||
this.isweek = isweek;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -11,7 +11,7 @@ public class GiftWallGiftDetail extends BaseModel {
|
||||
@SerializedName("avatar")
|
||||
private String avatar;
|
||||
@SerializedName("naming_coin")
|
||||
private int namingCoin;
|
||||
private String namingCoin;
|
||||
|
||||
public int getUid() {
|
||||
return uid;
|
||||
@@ -23,6 +23,9 @@ public class GiftWallGiftDetail extends BaseModel {
|
||||
}
|
||||
|
||||
public String getUserNicename() {
|
||||
if (userNicename.length() > 5) {
|
||||
userNicename = userNicename.substring(0, 5) + "...";
|
||||
}
|
||||
return userNicename;
|
||||
}
|
||||
|
||||
@@ -40,11 +43,11 @@ public class GiftWallGiftDetail extends BaseModel {
|
||||
return this;
|
||||
}
|
||||
|
||||
public int getNamingCoin() {
|
||||
public String getNamingCoin() {
|
||||
return namingCoin;
|
||||
}
|
||||
|
||||
public GiftWallGiftDetail setNamingCoin(int namingCoin) {
|
||||
public GiftWallGiftDetail setNamingCoin(String namingCoin) {
|
||||
this.namingCoin = namingCoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -64,6 +64,17 @@ public class LiveGiftBean {
|
||||
private String namingStatus;
|
||||
@JSONField(name = "naming_coin")
|
||||
private String namingCoin;
|
||||
@JSONField(name = "naming_user_coin")
|
||||
private String namingUserCoin;
|
||||
|
||||
public String getNamingUserCoin() {
|
||||
return namingUserCoin;
|
||||
}
|
||||
|
||||
public LiveGiftBean setNamingUserCoin(String namingUserCoin) {
|
||||
this.namingUserCoin = namingUserCoin;
|
||||
return this;
|
||||
}
|
||||
|
||||
public View getmView() {
|
||||
return mView;
|
||||
@@ -191,6 +202,16 @@ public class LiveGiftBean {
|
||||
return this;
|
||||
}
|
||||
|
||||
private int fansGiftLevel=0;//粉丝团礼物等级要求
|
||||
|
||||
public int getFansGiftLevel() {
|
||||
return fansGiftLevel;
|
||||
}
|
||||
|
||||
public void setFansGiftLevel(int fansGiftLevel) {
|
||||
this.fansGiftLevel = fansGiftLevel;
|
||||
}
|
||||
|
||||
public int getBlind_box_type() {
|
||||
return blind_box_type;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.yunbao.common.bean;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class UserAvatarSelectBean extends BaseModel {
|
||||
@SerializedName("id")
|
||||
private int id;
|
||||
@SerializedName("name")
|
||||
private String name;
|
||||
@SerializedName("path")
|
||||
private String path;
|
||||
@SerializedName("checked")
|
||||
private int checked;
|
||||
|
||||
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 String getPath() {
|
||||
return path;
|
||||
}
|
||||
|
||||
public void setPath(String path) {
|
||||
this.path = path;
|
||||
}
|
||||
|
||||
public int getChecked() {
|
||||
return checked;
|
||||
}
|
||||
|
||||
public void setChecked(int checked) {
|
||||
this.checked = checked;
|
||||
}
|
||||
}
|
||||
@@ -68,6 +68,10 @@ public class UserBean implements Parcelable {
|
||||
private String mRankPkImgUrl;
|
||||
//是否填写完整资料
|
||||
private int user_info_complete;
|
||||
//粉丝团等级
|
||||
private int fansLevel;
|
||||
//粉丝团进场皮肤
|
||||
private String fansEnterRoomUrl;
|
||||
|
||||
public int getUserInfoComplete() {
|
||||
return user_info_complete;
|
||||
@@ -78,6 +82,22 @@ public class UserBean implements Parcelable {
|
||||
return this;
|
||||
}
|
||||
|
||||
public int getFansLevel() {
|
||||
return fansLevel;
|
||||
}
|
||||
|
||||
public void setFansLevel(int fansLevel) {
|
||||
this.fansLevel = fansLevel;
|
||||
}
|
||||
|
||||
public String getFansEnterRoomUrl() {
|
||||
return fansEnterRoomUrl;
|
||||
}
|
||||
|
||||
public void setFansEnterRoomUrl(String fansEnterRoomUrl) {
|
||||
this.fansEnterRoomUrl = fansEnterRoomUrl;
|
||||
}
|
||||
|
||||
public boolean isRandomPk() {
|
||||
return randomPk;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.yunbao.common.dialog;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.lxj.xpopup.core.CenterPopupView;
|
||||
|
||||
/**
|
||||
* 居中弹窗
|
||||
*/
|
||||
public abstract class AbsDialogCenterPopupWindow extends CenterPopupView {
|
||||
public final Context mContext;
|
||||
|
||||
public AbsDialogCenterPopupWindow(@NonNull Context context) {
|
||||
super(context);
|
||||
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();
|
||||
|
||||
@Override
|
||||
protected int getImplLayoutId() {
|
||||
return bindLayoutId();
|
||||
}
|
||||
|
||||
public void showDialog() {
|
||||
XPopup.Builder builder = new XPopup.Builder(mContext);
|
||||
builder.isDestroyOnDismiss(true);
|
||||
builder.enableDrag(false);
|
||||
buildDialog(builder);
|
||||
builder.asCustom(this).show();
|
||||
}
|
||||
}
|
||||
@@ -7,9 +7,11 @@ import androidx.annotation.NonNull;
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.lxj.xpopup.core.BottomPopupView;
|
||||
|
||||
|
||||
/**
|
||||
* 底部弹窗
|
||||
*/
|
||||
public abstract class AbsDialogPopupWindow extends BottomPopupView {
|
||||
private final Context mContext;
|
||||
public final Context mContext;
|
||||
|
||||
public AbsDialogPopupWindow(@NonNull Context context) {
|
||||
super(context);
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.yunbao.common.dialog;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.lxj.xpopup.core.PositionPopupView;
|
||||
|
||||
/**
|
||||
* 自定义位置弹窗
|
||||
*/
|
||||
public abstract class AbsDialogPositionPopupWindow extends PositionPopupView {
|
||||
public final Context mContext;
|
||||
|
||||
public AbsDialogPositionPopupWindow(@NonNull Context context) {
|
||||
super(context);
|
||||
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();
|
||||
|
||||
@Override
|
||||
protected int getImplLayoutId() {
|
||||
return bindLayoutId();
|
||||
}
|
||||
|
||||
public void showDialog() {
|
||||
XPopup.Builder builder = new XPopup.Builder(mContext);
|
||||
builder.isDestroyOnDismiss(true);
|
||||
builder.enableDrag(false);
|
||||
buildDialog(builder);
|
||||
builder.asCustom(this).show();
|
||||
}
|
||||
}
|
||||
@@ -7,6 +7,7 @@ public class GiftWallItemEvent extends BaseModel {
|
||||
private GiftWallModel giftWallModel;
|
||||
private boolean unlit;
|
||||
|
||||
|
||||
public GiftWallModel getGiftWallModel() {
|
||||
return giftWallModel;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
package com.yunbao.common.event;
|
||||
|
||||
import com.yunbao.common.bean.BaseModel;
|
||||
|
||||
public class LiveErrorEvent extends BaseModel {
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yunbao.live.event;
|
||||
package com.yunbao.common.event;
|
||||
|
||||
import com.yunbao.common.bean.LiveBean;
|
||||
|
||||
@@ -17,11 +17,11 @@ import com.yunbao.common.bean.WishListModel;
|
||||
import com.yunbao.common.bean.WishModel;
|
||||
import com.yunbao.common.bean.WishModel2;
|
||||
import com.yunbao.common.event.LiveNewWishListCloseEvent;
|
||||
import com.yunbao.common.event.PopupViewDismissEvent;
|
||||
import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.http.live.LiveNetManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.HintCustomPopup;
|
||||
import com.yunbao.common.views.LiveNewWishGiftPopup;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
|
||||
@@ -66,7 +66,7 @@ public class LiveNewWishListFragment extends BaseFragment {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
saveWish();
|
||||
Bus.get().post(new PopupViewDismissEvent());
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -105,29 +105,51 @@ public class LiveNewWishListFragment extends BaseFragment {
|
||||
liveNewWishAdapter.addData(wishList, type);
|
||||
}
|
||||
|
||||
public void saveWish() {
|
||||
public int liveNewWishAdapterWishList() {
|
||||
List<WishModel> wishList = liveNewWishAdapter.getWishList();
|
||||
List<WishModel2> wishList2 = new ArrayList<>();
|
||||
Gson gson = new Gson();
|
||||
for (WishModel model : wishList) {
|
||||
if (model!=null){
|
||||
if (model != null) {
|
||||
WishModel2 model2 = gson.fromJson(gson.toJson(model), WishModel2.class);
|
||||
wishList2.add(model2);
|
||||
}
|
||||
|
||||
}
|
||||
if (wishList2.size() == 0) {
|
||||
Bus.get().post(new PopupViewDismissEvent());
|
||||
} else {
|
||||
if (wishList2.size()>10){
|
||||
ToastUtil.show(R.string.must_hint);
|
||||
return;
|
||||
return wishList2.size();
|
||||
}
|
||||
|
||||
public void saveWish() {
|
||||
List<WishModel> wishList = liveNewWishAdapter.getWishList();
|
||||
List<WishModel2> wishList2 = new ArrayList<>();
|
||||
Gson gson = new Gson();
|
||||
for (WishModel model : wishList) {
|
||||
if (model != null) {
|
||||
WishModel2 model2 = gson.fromJson(gson.toJson(model), WishModel2.class);
|
||||
wishList2.add(model2);
|
||||
}
|
||||
|
||||
}
|
||||
switch (type) {
|
||||
case 1:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setDayWish(false));
|
||||
break;
|
||||
case 2:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setZhouXin(false));
|
||||
break;
|
||||
case 3:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setLunarWish(false));
|
||||
break;
|
||||
case 4:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setSeasonalWish(false));
|
||||
break;
|
||||
}
|
||||
if (wishList2.size() == 0) {
|
||||
LiveNetManager.get(getContext()).
|
||||
setWishlistV2(type, gson.toJson(wishList2), new HttpCallback<String>() {
|
||||
@Override
|
||||
public void onSuccess(String data) {
|
||||
|
||||
ToastUtil.show("修改成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -135,22 +157,58 @@ public class LiveNewWishListFragment extends BaseFragment {
|
||||
ToastUtil.show(R.string.net_error);
|
||||
}
|
||||
});
|
||||
switch (type) {
|
||||
case 1:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setDayWish(false));
|
||||
break;
|
||||
case 2:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setZhouXin(false));
|
||||
break;
|
||||
case 3:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setLunarWish(false));
|
||||
break;
|
||||
case 4:
|
||||
Bus.get().post(new LiveNewWishListCloseEvent().setSeasonalWish(false));
|
||||
break;
|
||||
} else if (wishList2.size() == 1) {
|
||||
new XPopup.Builder(getContext())
|
||||
.asCustom(new HintCustomPopup(getContext(),
|
||||
getContext().getString(R.string.dialog_tip),
|
||||
getContext().getString(R.string.sett_rigger))
|
||||
.setLiveOpenOk(getContext().getString(R.string.settings_ser))
|
||||
.setLiveOpenCancel(getContext().getString(R.string.cancel_ca))
|
||||
.setCallBack(new HintCustomPopup.HintCustomCallBack() {
|
||||
@Override
|
||||
public void onSure() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCancel() {
|
||||
|
||||
if (wishList2.size() > 10) {
|
||||
ToastUtil.show(R.string.must_hint);
|
||||
return;
|
||||
}
|
||||
LiveNetManager.get(getContext()).
|
||||
setWishlistV2(type, gson.toJson(wishList2), new HttpCallback<String>() {
|
||||
@Override
|
||||
public void onSuccess(String data) {
|
||||
ToastUtil.show("修改成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(String error) {
|
||||
ToastUtil.show(R.string.net_error);
|
||||
}
|
||||
});
|
||||
}
|
||||
})).show();
|
||||
} else {
|
||||
if (wishList2.size() > 10) {
|
||||
ToastUtil.show(R.string.must_hint);
|
||||
return;
|
||||
}
|
||||
LiveNetManager.get(getContext()).
|
||||
setWishlistV2(type, gson.toJson(wishList2), new HttpCallback<String>() {
|
||||
@Override
|
||||
public void onSuccess(String data) {
|
||||
ToastUtil.show("修改成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(String error) {
|
||||
ToastUtil.show(R.string.net_error);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -198,6 +198,10 @@ public class CommonHttpUtil {
|
||||
if (obj.containsKey("is_chat")) {
|
||||
IMLoginManager.get(context).initChat(String.valueOf(obj.getInteger("is_chat")));
|
||||
}
|
||||
if (obj.containsKey("levelfans")) {
|
||||
JSONArray levelArray = obj.getJSONArray("levelfans");
|
||||
new NewLevelManager(context).upDataFansLevel(levelArray.toJSONString());
|
||||
}
|
||||
if (obj.containsKey("level_new")) {//缓存等级数据
|
||||
JSONArray levelArray = obj.getJSONArray("level_new");
|
||||
new NewLevelManager(context).UpDataLevel(levelArray.toJSONString());
|
||||
@@ -310,8 +314,15 @@ public class CommonHttpUtil {
|
||||
.execute(new HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 0 && info.length > 0) {
|
||||
if (code == 0 && info.length > 0 || code == 1001) {
|
||||
int isAttention = JSON.parseObject(info[0]).getIntValue("isattent");//1是 关注 0是未关注
|
||||
/* if (code == 1001) {
|
||||
if (WordUtil.isNewZh()) {
|
||||
ToastUtil.show("粉絲團等級已清零,待領取獎勵已自動領取至【個性裝扮】");
|
||||
} else {
|
||||
ToastUtil.show("The level of the fan club has been cleared, and the rewards to be claimed have been automatically received to [Personalized Dressing]");
|
||||
}
|
||||
}*/
|
||||
EventBus.getDefault().post(new FollowEvent(touid, isAttention));
|
||||
if (callback != null) {
|
||||
callback.callback(isAttention);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yunbao.live.http;
|
||||
package com.yunbao.common.http;
|
||||
|
||||
/**
|
||||
* Created by cxf on 2019/3/21.
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yunbao.live.http;
|
||||
package com.yunbao.common.http;
|
||||
|
||||
import android.text.TextUtils;
|
||||
|
||||
@@ -619,15 +619,17 @@ public class LiveHttpUtil {
|
||||
* 观众给主播送礼物
|
||||
*/
|
||||
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, HttpCallback callback) {
|
||||
sendGift(by, liveUid, stream, giftId, giftCount, 0, callback);
|
||||
sendGift(by, liveUid, stream, giftId, giftCount, 0, false,callback);
|
||||
}
|
||||
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, HttpCallback callback) {
|
||||
sendGift(by, liveUid, stream, giftId, giftCount, isContactGift, false,callback);
|
||||
}
|
||||
|
||||
/**
|
||||
* 观众给主播送礼物
|
||||
*
|
||||
* @param isContactGift 是否为联系方式礼物
|
||||
*/
|
||||
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, HttpCallback callback) {
|
||||
public static void sendGift(String by, String liveUid, String stream, int giftId, String giftCount, int isContactGift, boolean isFansGroupGift,HttpCallback callback) {
|
||||
HttpClient.getInstance().get("Live.sendGift", LiveHttpConsts.SEND_GIFT)
|
||||
.params("liveuid", liveUid)
|
||||
.params("stream", stream)
|
||||
@@ -635,6 +637,7 @@ public class LiveHttpUtil {
|
||||
.params("isContactGift", isContactGift)
|
||||
.params("giftcount", giftCount)
|
||||
.params("isprank", by)
|
||||
.params("fans_exclusive_pack",isFansGroupGift?"1":"0")
|
||||
.params("appVersion", CommonAppConfig.getInstance().getVersion())
|
||||
.execute(callback);
|
||||
}
|
||||
@@ -12,8 +12,12 @@ import com.yunbao.common.bean.CustomSidebarInfoModel;
|
||||
import com.yunbao.common.bean.DiscountsModel;
|
||||
import com.yunbao.common.bean.EnterRoomNewModel;
|
||||
import com.yunbao.common.bean.FaceBookUpModel;
|
||||
import com.yunbao.common.bean.FansCheckRed;
|
||||
import com.yunbao.common.bean.FansGroupGiftPack;
|
||||
import com.yunbao.common.bean.FansGroupGiftPackInfo;
|
||||
import com.yunbao.common.bean.GiftAlreadyWallModel;
|
||||
import com.yunbao.common.bean.GiftGuideModel;
|
||||
import com.yunbao.common.bean.GiftNamingInfoModel;
|
||||
import com.yunbao.common.bean.GiftWallGiftDetail;
|
||||
import com.yunbao.common.bean.GiftWallModel;
|
||||
import com.yunbao.common.bean.HourRank;
|
||||
@@ -50,6 +54,7 @@ import com.yunbao.common.bean.SetAttentsModel;
|
||||
import com.yunbao.common.bean.SlideInBannerModel;
|
||||
import com.yunbao.common.bean.StarChallengeStatusModel;
|
||||
import com.yunbao.common.bean.UserAreaBean;
|
||||
import com.yunbao.common.bean.UserAvatarSelectBean;
|
||||
import com.yunbao.common.bean.VipModel;
|
||||
import com.yunbao.common.bean.WishListGiftConfModel;
|
||||
import com.yunbao.common.bean.WishListModel;
|
||||
@@ -835,6 +840,22 @@ public interface PDLiveApi {
|
||||
@Query("red_packet_id") String redPacketId
|
||||
);
|
||||
|
||||
/**
|
||||
* 获取系统默认头像列表
|
||||
*/
|
||||
@GET("/api/public/?service=Userhome.getDefaultAvatarList")
|
||||
Observable<ResponseModel<List<UserAvatarSelectBean>>> getSystemUserAvatar();
|
||||
|
||||
/**
|
||||
* 设置系统默认头像
|
||||
*
|
||||
* @param id 头像id
|
||||
*/
|
||||
@GET("/api/public/?service=Userhome.setAvatar")
|
||||
Observable<ResponseModel<Object>> setSystemUserAvatar(
|
||||
@Query("avatar_id") int id
|
||||
);
|
||||
|
||||
/**
|
||||
* 礼物墙已点亮
|
||||
*/
|
||||
@@ -844,6 +865,15 @@ public interface PDLiveApi {
|
||||
@Query("to_uid") String toUid
|
||||
);
|
||||
|
||||
/**
|
||||
* 礼物墙已点亮
|
||||
*/
|
||||
@GET("/api/public/?service=Gift.giftUserSendWall")
|
||||
Observable<ResponseModel<GiftAlreadyWallModel>> giftUserSendWall(
|
||||
@Query("liveuid") String liveUid,
|
||||
@Query("to_uid") String toUid
|
||||
);
|
||||
|
||||
/**
|
||||
* 礼物墙未点亮
|
||||
*/
|
||||
@@ -885,18 +915,57 @@ public interface PDLiveApi {
|
||||
*/
|
||||
@GET("/api/public/?service=Gift.getGiftGuide")
|
||||
Observable<ResponseModel<List<GiftGuideModel>>> getGiftGuide(
|
||||
@Query("liveuid") String liveUid
|
||||
@Query("liveuid") String liveUid,
|
||||
@Query("to_uid") String toUid
|
||||
);
|
||||
|
||||
@GET("/api/public/?service=Gift.getGiftGuideHistory")
|
||||
Observable<ResponseModel<List<GiftGuideModel>>> getGiftGuideHistory(
|
||||
@Query("liveuid") String liveUid
|
||||
@Query("liveuid") String liveUid,
|
||||
@Query("to_uid") String toUid
|
||||
);
|
||||
|
||||
@GET("/api/public/?service=Gift.getUserMedalList")
|
||||
Observable<ResponseModel<MedalAchievementModel>> getUserMedalList(@Query("to_uid") String toUid);
|
||||
|
||||
@GET("/api/public/?service=Gift.getLiveMedalList")
|
||||
Observable<ResponseModel<MedalAchievementModel>> getLiveMedalList();
|
||||
Observable<ResponseModel<MedalAchievementModel>> getLiveMedalList(@Query("liveuid") String liveUid);
|
||||
|
||||
/**
|
||||
* 获取粉丝团礼物信息
|
||||
*
|
||||
* @param packId 礼包id
|
||||
*/
|
||||
@GET("/api/public/?service=Fans.getFansExclusivePack")
|
||||
Observable<ResponseModel<FansGroupGiftPackInfo>> getFansExclusivePack(@Query("liveuid") String liveUid,
|
||||
@Query("pack_id") String packId
|
||||
);
|
||||
|
||||
/**
|
||||
* 购买粉丝团礼包
|
||||
*
|
||||
* @param packId 礼包id
|
||||
*/
|
||||
@GET("/api/public/?service=Fans.buyFansExclusivePack")
|
||||
Observable<ResponseModel<HttpCallbackModel>> buyFansExclusivePack(@Query("liveuid") String liveUid,
|
||||
@Query("pack_id") String packId,
|
||||
@Query("stream") String stream
|
||||
);
|
||||
|
||||
/**
|
||||
* 获取粉丝团礼物包裹
|
||||
*/
|
||||
@GET("/api/public/?service=Fans.userFansExclusivePackList")
|
||||
Observable<ResponseModel<List<FansGroupGiftPack>>> userFansExclusivePackList(@Query("liveuid") String liveUid);
|
||||
|
||||
/**
|
||||
* 获取粉丝团礼物包裹
|
||||
*/
|
||||
@GET("/api/public/?service=Fans.getCheckFansLevelUpgrade")
|
||||
Observable<ResponseModel<FansCheckRed>> getCheckFansLevelUpgrade(@Query("liveuid") String liveUid);
|
||||
|
||||
@GET("/api/public/?service=gift.getGiftNamingInfo")
|
||||
Observable<ResponseModel<GiftNamingInfoModel>> getGiftNamingInfo(@Query("gift_id") String giftId);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -13,8 +13,12 @@ import com.yunbao.common.bean.CheckLiveModel;
|
||||
import com.yunbao.common.bean.CustomSidebarInfoModel;
|
||||
import com.yunbao.common.bean.DiscountsModel;
|
||||
import com.yunbao.common.bean.EnterRoomNewModel;
|
||||
import com.yunbao.common.bean.FansCheckRed;
|
||||
import com.yunbao.common.bean.FansGroupGiftPack;
|
||||
import com.yunbao.common.bean.FansGroupGiftPackInfo;
|
||||
import com.yunbao.common.bean.GiftAlreadyWallModel;
|
||||
import com.yunbao.common.bean.GiftGuideModel;
|
||||
import com.yunbao.common.bean.GiftNamingInfoModel;
|
||||
import com.yunbao.common.bean.GiftWallGiftDetail;
|
||||
import com.yunbao.common.bean.GiftWallModel;
|
||||
import com.yunbao.common.bean.HttpCallbackModel;
|
||||
@@ -25,6 +29,7 @@ import com.yunbao.common.bean.LiveAiRobotBean;
|
||||
import com.yunbao.common.bean.LiveAnchorCallMeModel;
|
||||
import com.yunbao.common.bean.LiveAnchorSayModel;
|
||||
import com.yunbao.common.bean.LiveDataInfoModel;
|
||||
import com.yunbao.common.bean.LiveGiftBean;
|
||||
import com.yunbao.common.bean.LiveInfoModel;
|
||||
import com.yunbao.common.bean.LiveRoomActivityBanner;
|
||||
import com.yunbao.common.bean.LiveRoomVoteModel;
|
||||
@@ -46,6 +51,7 @@ import com.yunbao.common.bean.RedPacketListBean;
|
||||
import com.yunbao.common.bean.SetAttentsModel;
|
||||
import com.yunbao.common.bean.StarChallengeStatusModel;
|
||||
import com.yunbao.common.bean.UserAreaBean;
|
||||
import com.yunbao.common.bean.UserAvatarSelectBean;
|
||||
import com.yunbao.common.bean.VipModel;
|
||||
import com.yunbao.common.bean.WishListGiftConfModel;
|
||||
import com.yunbao.common.bean.WishListModel;
|
||||
@@ -172,8 +178,16 @@ public class LiveNetManager {
|
||||
.subscribe(listResponseModel -> {
|
||||
List<SetAttentsModel> setAttentsModels = listResponseModel.getData().getInfo();
|
||||
if (setAttentsModels.size() > 0) {
|
||||
if (callback != null)
|
||||
if (callback != null) {
|
||||
/* if (listResponseModel.getData().getCode() == 1001) {
|
||||
if (WordUtil.isNewZh()) {
|
||||
ToastUtil.show("粉絲團等級已清零,待領取獎勵已自動領取至【個性裝扮】");
|
||||
} else {
|
||||
ToastUtil.show("The level of the fan club has been cleared, and the rewards to be claimed have been automatically received to [Personalized Dressing]");
|
||||
}
|
||||
}*/
|
||||
callback.onSuccess(setAttentsModels.get(0));
|
||||
}
|
||||
} else {
|
||||
if (callback != null)
|
||||
callback.onError("操作失效");
|
||||
@@ -1801,6 +1815,54 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void getSystemUserAvatar(HttpCallback<List<UserAvatarSelectBean>> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getSystemUserAvatar()
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<List<UserAvatarSelectBean>>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<List<UserAvatarSelectBean>> objectResponseModel) throws Exception {
|
||||
if (objectResponseModel.getData().getCode() == 0) {
|
||||
callback.onSuccess(objectResponseModel.getData().getInfo());
|
||||
} else {
|
||||
callback.onError(objectResponseModel.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();
|
||||
}
|
||||
|
||||
public void setSystemUserAvatar(int id, HttpCallback<String> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.setSystemUserAvatar(id)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<Object>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<Object> objectResponseModel) throws Exception {
|
||||
if (objectResponseModel.getData().getCode() == 0) {
|
||||
callback.onSuccess(objectResponseModel.getData().getMsg());
|
||||
} else {
|
||||
callback.onError(objectResponseModel.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();
|
||||
}
|
||||
|
||||
public void giftAlreadyWall(String liveUid, String toUid, HttpCallback<GiftAlreadyWallModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.giftAlreadyWall(liveUid, toUid)
|
||||
@@ -1823,6 +1885,28 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void giftUserSendWall(String liveUid, String toUid, HttpCallback<GiftAlreadyWallModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.giftUserSendWall(liveUid, toUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<GiftAlreadyWallModel>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<GiftAlreadyWallModel> giftAlreadyWallModelResponseModel) throws Exception {
|
||||
if (callback != null) {
|
||||
callback.onSuccess(giftAlreadyWallModelResponseModel.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();
|
||||
}
|
||||
|
||||
public void giftWithoutWall(String liveUid, String toUid, HttpCallback<GiftAlreadyWallModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.giftWithoutWall(liveUid, toUid)
|
||||
@@ -1911,9 +1995,9 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void getGiftGuide(String liveUid, HttpCallback<List<GiftGuideModel>> callback) {
|
||||
public void getGiftGuide(String liveUid, String toUid, HttpCallback<List<GiftGuideModel>> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getGiftGuide(liveUid)
|
||||
.getGiftGuide(liveUid, toUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<List<GiftGuideModel>>>() {
|
||||
@@ -1933,9 +2017,9 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void getGiftGuideHistory(String liveUid, HttpCallback<List<GiftGuideModel>> callback) {
|
||||
public void getGiftGuideHistory(String toUid, String liveUid, HttpCallback<List<GiftGuideModel>> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getGiftGuideHistory(liveUid)
|
||||
.getGiftGuideHistory(liveUid, toUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<List<GiftGuideModel>>>() {
|
||||
@@ -1977,9 +2061,9 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void getLiveMedalList(HttpCallback<MedalAchievementModel> callback) {
|
||||
public void getLiveMedalList(String liveUid, HttpCallback<MedalAchievementModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getLiveMedalList()
|
||||
.getLiveMedalList(liveUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<MedalAchievementModel>>() {
|
||||
@@ -1999,6 +2083,116 @@ public class LiveNetManager {
|
||||
}).isDisposed();
|
||||
}
|
||||
|
||||
public void getFansExclusivePack(String liveUid, String packId, HttpCallback<FansGroupGiftPackInfo> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getFansExclusivePack(liveUid, packId)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<FansGroupGiftPackInfo>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<FansGroupGiftPackInfo> 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();
|
||||
}
|
||||
|
||||
public void buyFansExclusivePack(String liveUid, String packId, String stream, HttpCallback<HttpCallbackModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.buyFansExclusivePack(liveUid, packId, stream)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<HttpCallbackModel>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<HttpCallbackModel> 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();
|
||||
}
|
||||
|
||||
public void userFansExclusivePackList(String liveUid, HttpCallback<List<FansGroupGiftPack>> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.userFansExclusivePackList(liveUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<List<FansGroupGiftPack>>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<List<FansGroupGiftPack>> 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();
|
||||
}
|
||||
|
||||
public void getCheckFansLevelUpgrade(String liveUid, HttpCallback<FansCheckRed> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getCheckFansLevelUpgrade(liveUid)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<FansCheckRed>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<FansCheckRed> 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();
|
||||
}
|
||||
|
||||
public void getGiftNamingInfo(String giftId,HttpCallback<GiftNamingInfoModel> callback) {
|
||||
API.get().pdLiveApi(mContext)
|
||||
.getGiftNamingInfo(giftId)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Consumer<ResponseModel<GiftNamingInfoModel>>() {
|
||||
@Override
|
||||
public void accept(ResponseModel<GiftNamingInfoModel> liveGiftBeanResponseModel) throws Exception {
|
||||
if (callback!=null){
|
||||
callback.onSuccess(liveGiftBeanResponseModel.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();
|
||||
}
|
||||
|
||||
/**
|
||||
* 直播间取消网络请求
|
||||
*/
|
||||
|
||||
@@ -29,13 +29,13 @@ public class GiftQuantityManager extends BaseCacheManager {
|
||||
List<GiftQuantityModel> giftQuantityModels = getList(KEY_GIFT_QUANTITY, new TypeToken<List<GiftQuantityModel>>() {
|
||||
}.getType());
|
||||
if (giftQuantityModels == null || giftQuantityModels.size() == 0) {
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("1").setFontColour("#ffffff"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("10").setFontColour("#ffffff"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("66").setFontColour("#ffffff"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("88").setFontColour("#FA62A1"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("100").setFontColour("#9B62FF"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("520").setFontColour("#65BFFB"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("1314").setFontColour("#05F3EC"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("520").setFontColour("#65BFFB"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("100").setFontColour("#9B62FF"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("88").setFontColour("#FA62A1"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("66").setFontColour("#ffffff"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("10").setFontColour("#ffffff"));
|
||||
giftQuantityModels.add(new GiftQuantityModel().setGiftQuantity("1").setFontColour("#ffffff"));
|
||||
}
|
||||
return giftQuantityModels;
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ public class IMLoginManager extends BaseCacheManager {
|
||||
private final String keyDefaultBubbleUrl = "defaultBubbleUrl";
|
||||
private final String STATUS_ANCHOR_SAY = "anchorSay";
|
||||
private final String STATUS_ANCHOR_CALL = "anchorCallMe";
|
||||
private final String LIVE_NOTIFY_SETTINGS = "liveNotifySettings";//开播通知
|
||||
|
||||
private final String KEY_LANGUAGE = "language";
|
||||
|
||||
@@ -280,6 +281,10 @@ public class IMLoginManager extends BaseCacheManager {
|
||||
return userInfo;
|
||||
}
|
||||
|
||||
public void setMedalName(String medalName) {
|
||||
userInfo.setMedalName(medalName);
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否已登录
|
||||
*
|
||||
@@ -354,6 +359,14 @@ public class IMLoginManager extends BaseCacheManager {
|
||||
return getBoolean(GiftEffect, !(Build.VERSION.SDK_INT < Build.VERSION_CODES.O));
|
||||
}
|
||||
|
||||
public void setLiveNotifySettings(boolean isTrue) {
|
||||
put(LIVE_NOTIFY_SETTINGS, isTrue);
|
||||
}
|
||||
|
||||
public boolean isLiveNotifySettings() {
|
||||
return getBoolean(LIVE_NOTIFY_SETTINGS, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新请求管理员身份信息
|
||||
*/
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Context;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import com.yunbao.common.bean.FansModel;
|
||||
import com.yunbao.common.bean.NewLevelModel;
|
||||
import com.yunbao.common.manager.base.BaseCacheManager;
|
||||
|
||||
@@ -17,9 +18,11 @@ public class NewLevelManager extends BaseCacheManager {
|
||||
private final String KEY_USER_LEVEL = "keyUserLevel";
|
||||
private final String KEY_ANCHOR_LEVEL = "keyAnchorLevel";
|
||||
private final String KEY_LIVE_LEVEL = "keyLiveLevel";
|
||||
private final String KEY_FANS_LEVEL = "keyFansLevel";
|
||||
|
||||
private List<NewLevelModel> newLevelModels = new ArrayList<>();
|
||||
private List<NewLevelModel> keyAnchorLevel = new ArrayList<>();
|
||||
private List<FansModel> fansModels = new ArrayList<>();
|
||||
|
||||
public NewLevelManager(Context context) {
|
||||
super(context);
|
||||
@@ -36,6 +39,29 @@ public class NewLevelManager extends BaseCacheManager {
|
||||
put(KEY_USER_LEVEL, newLevelModels);
|
||||
}
|
||||
|
||||
public void upDataFansLevel(String json) {
|
||||
fansModels = new Gson().fromJson(json, new TypeToken<List<FansModel>>() {
|
||||
}.getType());
|
||||
put(KEY_FANS_LEVEL, fansModels);
|
||||
}
|
||||
|
||||
public List<FansModel> getFansLevel() {
|
||||
fansModels = getList(KEY_FANS_LEVEL, new TypeToken<List<FansModel>>() {
|
||||
}.getType());
|
||||
return fansModels;
|
||||
}
|
||||
|
||||
public FansModel getFansModel(int level) {
|
||||
getFansLevel();
|
||||
FansModel fansModel = null;
|
||||
for (FansModel model : fansModels) {
|
||||
if (model.getLevelid() == level) {
|
||||
fansModel = model;
|
||||
}
|
||||
}
|
||||
return fansModel;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取等级数据
|
||||
*
|
||||
@@ -45,6 +71,7 @@ public class NewLevelManager extends BaseCacheManager {
|
||||
return getList(KEY_USER_LEVEL, new TypeToken<List<NewLevelModel>>() {
|
||||
}.getType());
|
||||
}
|
||||
|
||||
/**
|
||||
* 缓存等级图标
|
||||
*
|
||||
|
||||
@@ -401,7 +401,7 @@ public class RandomPkManager {
|
||||
* 清空状态,下播时调用
|
||||
*/
|
||||
public void release() {
|
||||
status = PK_STATUS_REQUEST;
|
||||
status = PK_STATUS_DEFAULT;
|
||||
if (task != null) {
|
||||
task.cancel();
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
|
||||
/**
|
||||
@@ -88,7 +89,11 @@ public class FileUtil {
|
||||
duration= Long.parseLong(time);
|
||||
} catch (Exception ex) {
|
||||
} finally {
|
||||
mmr.release();
|
||||
try {
|
||||
mmr.release();
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
return duration;
|
||||
}
|
||||
|
||||
@@ -22,6 +22,8 @@ import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.bean.VideoBean;
|
||||
import com.yunbao.common.bean.VideoListBean;
|
||||
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.http.HttpClient;
|
||||
import com.yunbao.common.interfaces.CommonCallback;
|
||||
import com.yunbao.common.manager.IMLoginManager;
|
||||
|
||||
@@ -548,9 +550,46 @@ public class JavascriptInterfaceUtils {
|
||||
Bus.get().post(new JavascriptInterfaceEvent()
|
||||
.setMethod("clickLogOffAccount"));
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void androidFansGroupBuy(String id){
|
||||
Bus.get().post(new JavascriptInterfaceEvent()
|
||||
.setMethod("androidFansGroupBuy").setUserId(id));
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void androidFansGroupPack(){
|
||||
Bus.get().post(new JavascriptInterfaceEvent()
|
||||
.setMethod("androidFansGroupPack"));
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void androidFansGroupInfo(){
|
||||
Bus.get().post(new JavascriptInterfaceEvent()
|
||||
.setMethod("androidFansGroupInfo"));
|
||||
}
|
||||
|
||||
@JavascriptInterface
|
||||
public void toGiftNamingAlertAllPageView(String mAnchorName, String mLiveUid, String mAvatarUrl) {
|
||||
RouteUtil.forwardGiftWallActivity("", mAnchorName, mLiveUid, mAvatarUrl, 0);
|
||||
public void toGiftNamingAlertAllPageView(String mAnchorName, String mLiveUid, String mAvatarUrl,int isAnchor ) {
|
||||
RouteUtil.forwardGiftWallActivity("", mAnchorName, mLiveUid, mAvatarUrl, 0,isAnchor==1);
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void wearOrCancelFanMedal(){
|
||||
HttpClient.getInstance().get("User.getBaseInfos", "getBaseInfo")
|
||||
.params("uid", IMLoginManager.get(mContext).getUserInfo().getId())
|
||||
.params("token", IMLoginManager.get(mContext).getUserInfo().getToken())
|
||||
.execute(new HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 0 && info.length > 0) {
|
||||
IMLoginManager.get(mContext).upDataUserInfo(info[0]);
|
||||
JSONObject obj = JSON.parseObject(info[0]);
|
||||
UserBean bean = JSON.toJavaObject(obj, UserBean.class);
|
||||
CommonAppConfig.getInstance().setUserBean(bean);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@JavascriptInterface
|
||||
public void androidCancelAnchorAttention(){
|
||||
Bus.get().post(new JavascriptInterfaceEvent()
|
||||
.setMethod("androidCancelAnchorAttention"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yunbao.live.presenter;
|
||||
package com.yunbao.common.utils;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
@@ -10,19 +10,15 @@ import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.R;
|
||||
import com.yunbao.common.bean.CheckLiveModel;
|
||||
import com.yunbao.common.bean.LiveBean;
|
||||
import com.yunbao.common.event.LiveErrorEvent;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.base.CheckLiveCallBack;
|
||||
import com.yunbao.common.http.live.LiveNetManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.MD5Util;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.event.LiveAudienceEvent;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
|
||||
/**
|
||||
* Created by cxf on 2017/9/29.
|
||||
@@ -111,8 +107,7 @@ public class LiveRoomCheckLivePresenter {
|
||||
@Override
|
||||
public void onError(String error) {
|
||||
Log.e("直播间异常", "onError: " + error);
|
||||
Bus.get().post(new LiveAudienceEvent()
|
||||
.setType(LiveAudienceEvent.LiveAudienceType.LIVE_ROOM_EXCEPTION));
|
||||
Bus.get().post(new LiveErrorEvent());
|
||||
ToastUtil.show(error);
|
||||
}
|
||||
});
|
||||
@@ -162,8 +157,7 @@ public class LiveRoomCheckLivePresenter {
|
||||
}
|
||||
} else {
|
||||
Log.e("直播间异常", "Error: " + msg);
|
||||
Bus.get().post(new LiveAudienceEvent()
|
||||
.setType(LiveAudienceEvent.LiveAudienceType.LIVE_ROOM_EXCEPTION));
|
||||
Bus.get().post(new LiveErrorEvent());
|
||||
ToastUtil.show(msg);
|
||||
}
|
||||
}
|
||||
@@ -266,8 +266,7 @@ public class LogUtil {
|
||||
.connectTimeout(3, TimeUnit.SECONDS)
|
||||
.build();
|
||||
Request request = new Request.Builder()
|
||||
//.url("https://newht.yaoulive.com/index.php/api/error_log/report") //无法接受文件
|
||||
.url("https://tools.yutou233.cn/public/file/request.do")//临时上报地址,可接受文件
|
||||
.url("https://newht.yaoulive.com/index.php/api/error_log/report") //无法接受文件
|
||||
.post(requestBody)
|
||||
.build();
|
||||
client.newCall(request)
|
||||
|
||||
@@ -23,6 +23,9 @@ public class NobleUtil {
|
||||
return -1;
|
||||
}
|
||||
public static String nobleIdToStringName(int id){
|
||||
if(!WordUtil.isNewZh()){
|
||||
return nobleIdToStringNameForEn(id);
|
||||
}
|
||||
switch (id){
|
||||
case 1:return "男爵";
|
||||
case 2:return "子爵";
|
||||
@@ -34,6 +37,18 @@ public class NobleUtil {
|
||||
}
|
||||
return "未开通";
|
||||
}
|
||||
public static String nobleIdToStringNameForEn(int id){
|
||||
switch (id){
|
||||
case 1:return "baron";
|
||||
case 2:return "viscount";
|
||||
case 3:return "marquis";
|
||||
case 4:return "duke";
|
||||
case 5:return "king";
|
||||
case 6:return "emperor";
|
||||
case 7:return "SuperEmperor";
|
||||
}
|
||||
return "Not Opened";
|
||||
}
|
||||
public static int getNobleBackgroundId(int id){
|
||||
switch (id){
|
||||
case 1:return R.mipmap.img_aristocrat_nanjue;
|
||||
|
||||
@@ -44,6 +44,7 @@ public class RouteUtil {
|
||||
public static final String PATH_RED_PACKET_LIST = "/main/RedPacketListActivity";
|
||||
public static final String PATH_RED_PACKET_INFO = "/main/RedPacketInfoActivity";
|
||||
public static final String PATH_RED_PACKET_USER = "/main/RedPacketUsersActivity";
|
||||
public static final String PATH_SELECT_AVATAR="/main/UserAvatarSelectActivity";
|
||||
|
||||
public static void forwardFansActivity(String uid) {
|
||||
ARouter.getInstance().build(PATH_FANSACTIVITY)
|
||||
@@ -233,13 +234,14 @@ public class RouteUtil {
|
||||
postcard.navigation();
|
||||
}
|
||||
|
||||
public static void forwardGiftWallActivity(String mStream, String mAnchorName, String mLiveUid, String mAvatarUrl, int isAttention) {
|
||||
public static void forwardGiftWallActivity(String mStream, String mAnchorName, String mLiveUid, String mAvatarUrl, int isAttention,boolean isLive) {
|
||||
ARouter.getInstance().build(PATH_GIFT_WALL)
|
||||
.withString(Constants.LIVE_UID, mLiveUid)
|
||||
.withString(Constants.STREAM, mStream)
|
||||
.withString("mAnchorName", mAnchorName)
|
||||
.withString("mAvatarUrl", mAvatarUrl)
|
||||
.withInt("isAttention", isAttention)
|
||||
.withBoolean("isLive",isLive)
|
||||
.navigation();
|
||||
}
|
||||
|
||||
@@ -305,4 +307,12 @@ public class RouteUtil {
|
||||
.withInt("id", id)
|
||||
.navigation();
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统头像选择
|
||||
*/
|
||||
public static void forwardUserAvatarSelect(){
|
||||
ARouter.getInstance().build(PATH_SELECT_AVATAR)
|
||||
.navigation();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ public class CustomDrawerPopupView extends DrawerPopupView {
|
||||
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.online), new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
XPopup.Builder builder = new XPopup.Builder(getContext()).atView(findViewById(R.id.diamond_linear));
|
||||
XPopup.Builder builder = new XPopup.Builder(getContext()).atView(findViewById(R.id.more_menu));
|
||||
builder.hasShadowBg(false)
|
||||
.isDestroyOnDismiss(true)
|
||||
.isLightStatusBar(false)
|
||||
|
||||
@@ -80,10 +80,13 @@ public class DayWishItemViewHolder extends RecyclerView.ViewHolder {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
int number = model.wishProgress();
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
if (number>1){
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
||||
@@ -16,16 +16,18 @@ import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
|
||||
public class GiftAlreadyWallViewHolder extends RecyclerView.ViewHolder {
|
||||
private ImageView giftImg;
|
||||
private TextView giftTitle;
|
||||
private TextView giftTitle, giftNumber;
|
||||
|
||||
public GiftAlreadyWallViewHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
giftImg = itemView.findViewById(R.id.gift_img);
|
||||
giftTitle = itemView.findViewById(R.id.gift_title);
|
||||
giftNumber = itemView.findViewById(R.id.gift_number);
|
||||
}
|
||||
|
||||
public void showData(GiftWallModel giftWallModel) {
|
||||
public void showData(GiftWallModel giftWallModel,boolean sbWy) {
|
||||
giftTitle.setText(giftWallModel.getGiftname());
|
||||
giftNumber.setText("*" + giftWallModel.getGiftCountNumber());
|
||||
ImgLoader.display(itemView.getContext(), giftWallModel.getGifticon(), giftImg);
|
||||
ViewClicksAntiShake.clicksAntiShake(itemView, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
|
||||
@@ -1,17 +1,20 @@
|
||||
package com.yunbao.common.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.lxj.xpopup.core.BottomPopupView;
|
||||
import com.yunbao.common.R;
|
||||
import com.yunbao.common.adapter.GiftNumberAdapter;
|
||||
import com.yunbao.common.event.GiftNumberEvent;
|
||||
import com.yunbao.common.manager.GiftQuantityManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
@@ -41,6 +44,38 @@ public class GiftNumberPopup extends BottomPopupView {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
dismiss();
|
||||
Bus.get().post(new GiftNumberEvent().setmCount("-1"));
|
||||
}
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.custom_quantity), new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
dismiss();
|
||||
new XPopup.Builder(getContext())
|
||||
.asCustom(new InputCustomPopup(getContext(),
|
||||
getContext().getString(R.string.the_title_financier3),
|
||||
R.string.custom_quantity, true)
|
||||
.setMaxValue(4)
|
||||
.setListener(new InputCustomPopup.InputCustomListener() {
|
||||
@Override
|
||||
public void onConfirm(String text) {
|
||||
if (!TextUtils.isEmpty(text)) {
|
||||
int number = Integer.parseInt(text);
|
||||
if (1 <= number && number <= 9999) {
|
||||
Bus.get().post(new GiftNumberEvent().setmCount(text));
|
||||
} else {
|
||||
ToastUtil.show(String.format(getContext().getString(R.string.range_range_is), "1~9999"));
|
||||
Bus.get().post(new GiftNumberEvent().setmCount("-1"));
|
||||
}
|
||||
|
||||
} else {
|
||||
ToastUtil.show(String.format(getContext().getString(R.string.range_range_is), "1~9999"));
|
||||
Bus.get().post(new GiftNumberEvent().setmCount("-1"));
|
||||
}
|
||||
|
||||
}
|
||||
})).show();
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.yunbao.common.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.InputFilter;
|
||||
import android.text.InputType;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.widget.EditText;
|
||||
@@ -20,6 +22,8 @@ import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
public class InputCustomPopup extends CenterPopupView {
|
||||
private String message = "";
|
||||
private int title = R.string.dialog_tip;
|
||||
private boolean isType;
|
||||
private int maxValue=0;
|
||||
|
||||
public InputCustomPopup(@NonNull Context context, String message, int title) {
|
||||
super(context);
|
||||
@@ -27,7 +31,19 @@ public class InputCustomPopup extends CenterPopupView {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
public InputCustomPopup(@NonNull Context context,int title) {
|
||||
public InputCustomPopup(@NonNull Context context, String message, int title, boolean isType) {
|
||||
super(context);
|
||||
this.message = message;
|
||||
this.title = title;
|
||||
this.isType = isType;
|
||||
}
|
||||
|
||||
public InputCustomPopup setMaxValue(int maxValue) {
|
||||
this.maxValue = maxValue;
|
||||
return this;
|
||||
}
|
||||
|
||||
public InputCustomPopup(@NonNull Context context, int title) {
|
||||
super(context);
|
||||
this.title = title;
|
||||
}
|
||||
@@ -44,7 +60,16 @@ public class InputCustomPopup extends CenterPopupView {
|
||||
super.onCreate();
|
||||
EditText content = findViewById(R.id.content);
|
||||
TextView titleText = findViewById(R.id.title);
|
||||
content.setText(message);
|
||||
if(maxValue>0){
|
||||
content.setFilters(new InputFilter[]{new InputFilter.LengthFilter(maxValue)});
|
||||
}
|
||||
|
||||
if (isType) {
|
||||
content.setHint(message);
|
||||
content.setInputType(InputType.TYPE_CLASS_NUMBER);
|
||||
} else {
|
||||
content.setText(message);
|
||||
}
|
||||
titleText.setText(title);
|
||||
findViewById(R.id.btn_cancel).setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
|
||||
@@ -98,7 +98,6 @@ public class LiveNewWishListPopup extends BottomPopupView {
|
||||
|
||||
private void saveWishDialog(boolean isDismiss) {
|
||||
if (hintCustomPopup != null) return;
|
||||
|
||||
hintCustomPopup = new HintCustomPopup(
|
||||
getContext(),
|
||||
getContext().getString(R.string.replacement_reset_confirmed_cancel3),
|
||||
@@ -110,17 +109,15 @@ public class LiveNewWishListPopup extends BottomPopupView {
|
||||
public void onSure() {
|
||||
hintCustomPopup = null;
|
||||
if (dayWish) {
|
||||
dayWishFragment.saveWish();
|
||||
dayWishFragment.saveWish( );
|
||||
} else if (zhouXin) {
|
||||
zhouXinFragment.saveWish();
|
||||
zhouXinFragment.saveWish( );
|
||||
} else if (lunarWish) {
|
||||
lunarWishFragment.saveWish();
|
||||
lunarWishFragment.saveWish( );
|
||||
} else if (seasonalWish) {
|
||||
seasonalWishFragment.saveWish();
|
||||
}
|
||||
if (isDismiss) {
|
||||
dismiss();
|
||||
seasonalWishFragment.saveWish( );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -167,6 +164,7 @@ public class LiveNewWishListPopup extends BottomPopupView {
|
||||
.setWishlistName(event.getModel().getName())
|
||||
.setWishlistIcon(event.getModel().getImg())
|
||||
.setWishlistNum("1")
|
||||
.setLid(event.getModel().getId())
|
||||
.setLuid("" + IMLoginManager.get(mContext).getUserInfo().getId())
|
||||
.setWishlistProgress("0")
|
||||
.setPrice(Integer.parseInt(event.getModel().getPrice()))
|
||||
@@ -334,7 +332,7 @@ public class LiveNewWishListPopup extends BottomPopupView {
|
||||
setWishlistV2(type, gson.toJson(wishList2), new HttpCallback<String>() {
|
||||
@Override
|
||||
public void onSuccess(String data) {
|
||||
ToastUtil.show(data);
|
||||
ToastUtil.show("修改成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -77,10 +77,13 @@ public class LunarWishItemViewHolder extends RecyclerView.ViewHolder {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
int number = model.wishProgress();
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
if (number>1){
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
||||
@@ -26,7 +26,7 @@ public class MonthGiftNamingViewHolder extends RecyclerView.ViewHolder {
|
||||
|
||||
public void showData(GiftWallModel giftWallModel) {
|
||||
giftTitle.setText(giftWallModel.getGiftname());
|
||||
namingCoin.setText(giftWallModel.getNamingCoinMax());
|
||||
namingCoin.setText("*"+giftWallModel.getNamingCoinMax());
|
||||
userName.setText(giftWallModel.getUserNicename());
|
||||
ImgLoader.display(itemView.getContext(), giftWallModel.getGifticon(), giftImg);
|
||||
ImgLoader.display(itemView.getContext(), giftWallModel.getAvatar(), avatar);
|
||||
|
||||
@@ -77,10 +77,13 @@ public class SeasonalWishItemViewHolder extends RecyclerView.ViewHolder {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
int number = model.wishProgress();
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
if (number>1){
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
||||
@@ -77,10 +77,13 @@ public class WeekWishItemViewHolder extends RecyclerView.ViewHolder {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
int number = model.wishProgress();
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
if (number>1){
|
||||
model.setWishlistNum(String.valueOf(number - 1));
|
||||
if (listener != null) {
|
||||
listener.onUpdate(model, index);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
||||
@@ -250,7 +250,8 @@ public class NobleNoticeView extends FrameLayout {
|
||||
@Override
|
||||
public void onStep(int frame, double v) {
|
||||
System.out.println("frame = " + frame);
|
||||
if (frame == 20) {
|
||||
System.out.println("scrollLayout.getMeasuredWidth() = " + scrollLayout.getMeasuredWidth());
|
||||
if (frame == 21) {
|
||||
setButtonPosition(roleType);
|
||||
observable.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(bitmap -> {
|
||||
|
||||
BIN
common/src/main/res/drawable/background_skip_unselect_button.png
Normal file
BIN
common/src/main/res/drawable/background_skip_unselect_button.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="524dp"
|
||||
android:layout_gravity="bottom"
|
||||
@@ -7,17 +7,20 @@
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
|
||||
android:id="@+id/close_btn"
|
||||
android:layout_width="8dp"
|
||||
android:layout_height="14dp"
|
||||
android:layout_width="18dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_margin="13dp"
|
||||
android:padding="5dp"
|
||||
android:src="@mipmap/icon_regular_black" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/live_codex"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="40dp"
|
||||
android:paddingStart="12dp"
|
||||
android:paddingEnd="12dp"
|
||||
android:paddingBottom="15dp" />
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
@@ -15,7 +15,9 @@
|
||||
android:id="@+id/operate_image"
|
||||
android:layout_width="122dp"
|
||||
android:layout_height="50dp"
|
||||
android:layout_gravity="end|bottom" />
|
||||
android:layout_gravity="end|bottom"
|
||||
android:layout_marginEnd="5dp"
|
||||
android:scaleType="fitXY" />
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/blind_box"
|
||||
@@ -53,6 +55,7 @@
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/gift_itle"
|
||||
android:layout_width="54dp"
|
||||
android:layout_height="13dp"
|
||||
android:layout_marginStart="13dp"
|
||||
@@ -92,7 +95,7 @@
|
||||
<RelativeLayout
|
||||
android:id="@+id/gift_list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="351dp"
|
||||
android:layout_height="323dp"
|
||||
android:animateLayoutChanges="true"
|
||||
android:orientation="vertical">
|
||||
|
||||
@@ -157,14 +160,23 @@
|
||||
android:progress="0"
|
||||
android:progressDrawable="@drawable/progress_bg_user" />
|
||||
|
||||
<TextView
|
||||
<com.yunbao.common.views.weight.MarqueeTextView
|
||||
android:id="@+id/leave_hint"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_marginTop="2dp"
|
||||
android:ellipsize="marquee"
|
||||
android:focusable="true"
|
||||
android:focusableInTouchMode="true"
|
||||
android:gravity="center"
|
||||
android:marqueeRepeatLimit="marquee_forever"
|
||||
android:scrollHorizontally="true"
|
||||
android:singleLine="true"
|
||||
android:text="@string/leveling_points"
|
||||
android:textColor="#BBBBBB"
|
||||
android:textSize="9sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<ImageView
|
||||
@@ -183,7 +195,6 @@
|
||||
android:layout_marginStart="15dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/background_gift_description"
|
||||
android:ellipsize="marquee"
|
||||
android:focusable="true"
|
||||
android:focusableInTouchMode="true"
|
||||
@@ -191,7 +202,7 @@
|
||||
android:marqueeRepeatLimit="marquee_forever"
|
||||
android:scrollHorizontally="true"
|
||||
android:singleLine="true"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textColor="#80FFFFFF"
|
||||
android:textSize="12sp" />
|
||||
|
||||
<FrameLayout
|
||||
@@ -210,7 +221,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_marginBottom="17dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:paddingStart="16dp">
|
||||
|
||||
<LinearLayout
|
||||
@@ -346,7 +357,8 @@
|
||||
android:id="@+id/gift_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginStart="8dp" />
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="10dp" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="27dp"
|
||||
@@ -393,7 +405,7 @@
|
||||
<FrameLayout
|
||||
android:id="@+id/context_layout_gift"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_height="196dp"
|
||||
android:layout_marginTop="12dp" />
|
||||
|
||||
|
||||
|
||||
@@ -39,7 +39,10 @@
|
||||
android:layout_width="117dp"
|
||||
android:layout_height="31dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_margin="8dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:background="@drawable/background_wish_replacement"
|
||||
android:gravity="center"
|
||||
android:text="@string/replacement_wish_day"
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
android:layout_marginTop="14dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/lit_icon_2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/lit_icon"
|
||||
@@ -65,6 +66,7 @@
|
||||
android:background="@drawable/icon_gift_wall_no_data" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/unlit_icon_hint"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
|
||||
@@ -58,8 +58,8 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end"
|
||||
android:layout_marginTop="2dp"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:layout_marginEnd="5dp"
|
||||
android:padding="5dp"
|
||||
android:text="@string/last_month_winner_hint2"
|
||||
android:textColor="#B74D0F"
|
||||
android:textSize="11sp" />
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_marginTop="6dp"
|
||||
android:textSize="11sp"
|
||||
android:textSize="8sp"
|
||||
android:background="@drawable/background_codex_item_btn"
|
||||
android:gravity="center" />
|
||||
</LinearLayout>
|
||||
@@ -1,17 +1,17 @@
|
||||
<?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="132dp"
|
||||
android:layout_height="143dp"
|
||||
android:layout_margin="5dp"
|
||||
android:background="@mipmap/background_gift_already_wall"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/gift_img"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="65dp"
|
||||
android:layout_width="63dp"
|
||||
android:layout_height="63dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="20dp" />
|
||||
android:layout_marginTop="17dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_title"
|
||||
@@ -20,6 +20,16 @@
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="9dp"
|
||||
android:text="@string/instant_light"
|
||||
android:textColor="#54618F"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_number"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="2dp"
|
||||
android:text="@string/instant_light"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="14sp" />
|
||||
</LinearLayout>
|
||||
@@ -1,25 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="132dp"
|
||||
android:layout_margin="5dp"
|
||||
android:background="@mipmap/background_gift_without_wall"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/gift_img"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="65dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="20dp" />
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="9dp"
|
||||
android:text="@string/instant_light"
|
||||
android:textColor="#54618F"
|
||||
android:textSize="14sp" />
|
||||
</LinearLayout>
|
||||
<ImageView
|
||||
android:id="@+id/gift_img"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="65dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="20dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="9dp"
|
||||
android:text="@string/instant_light"
|
||||
android:textColor="#54618F"
|
||||
android:textSize="14sp" />
|
||||
</LinearLayout>
|
||||
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@mipmap/background_gift_wall_masking">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="22dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_gravity="center"
|
||||
android:src="@mipmap/background_gift_wall_lock" />
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
@@ -128,15 +128,21 @@
|
||||
android:text="@string/regular_bubble"
|
||||
android:textColor="#6F43FF"
|
||||
android:textSize="12sp" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/achievement_img_list"
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:background="@drawable/background_achievement_details_list"
|
||||
android:layout_marginTop="6dp"
|
||||
android:layout_marginEnd="8dp" />
|
||||
android:background="@drawable/background_achievement_details_list"
|
||||
android:layout_marginEnd="8dp">
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/achievement_img_list"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:layout_height="match_parent" />
|
||||
</FrameLayout>
|
||||
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_details_btn2"
|
||||
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
android:id="@+id/gift_details_btn"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="28dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="23dp"
|
||||
android:background="@drawable/background_skip_button"
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<LinearLayout
|
||||
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="212dp"
|
||||
android:layout_height="190dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_marginEnd="48dp"
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
android:gravity="center"
|
||||
android:text="领取"
|
||||
android:textColor="#15151D"
|
||||
android:textSize="12sp" />
|
||||
android:textSize="10sp" />
|
||||
</FrameLayout>
|
||||
|
||||
<TextView
|
||||
|
||||
BIN
common/src/main/res/mipmap-xxhdpi/background_gift_wall_lock.png
Normal file
BIN
common/src/main/res/mipmap-xxhdpi/background_gift_wall_lock.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.4 KiB |
@@ -62,7 +62,7 @@
|
||||
<string name="edit_profile_update_nickname">ModifyName</string>
|
||||
<string name="edit_profile_update_remarks">Modify remarks</string>
|
||||
<string name="edit_profile_remarks">Please enter comments~</string>
|
||||
<string name="edit_profile_update_sign">Signature modification</string>
|
||||
<string name="edit_profile_update_sign">Signature</string>
|
||||
<string name="edit_profile_sign">autograph</string>
|
||||
<string name="bind_phone">Binding phone</string>
|
||||
<string name="task1">TASK1</string>
|
||||
@@ -176,7 +176,7 @@
|
||||
<string name="guard_guard">Guard</string>
|
||||
<string name="guard_week_con">Contribution this week</string>
|
||||
<string name="guard_no_data">anchor are waiting at your guard!</string>
|
||||
<string name="guard_tip_0">Let\'s open up a guard for our favorite anchor</string>
|
||||
<string name="guard_tip_0">Turn on the guard for your favorite anchor!</string>
|
||||
<string name="guard_tip_1">You are the current anchor\'s monthly guard \ n the guard date expires</string>
|
||||
<string name="guard_tip_2">You are the current anchor\'s annual guardian \ n the guardian date expires</string>
|
||||
<string name="guard_gift_tip">Special gift for annual guard</string>
|
||||
@@ -754,8 +754,8 @@
|
||||
<string name="encourage_give_text">Encourage the author of this dynamic article</string>
|
||||
|
||||
<string name="confirm_give">Confirm encouragement</string>
|
||||
<string name="encourage_dynamic">Dynamic encouragement</string>
|
||||
<string name="encourage_dynamic_list">Encouraging records</string>
|
||||
<string name="encourage_dynamic">Rewards</string>
|
||||
<string name="encourage_dynamic_list">Records</string>
|
||||
|
||||
<string name="encourage_list_nodata">The author hasn\'t given encouragement yet T_T</string>
|
||||
|
||||
@@ -858,7 +858,7 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="site_wide_news_hint1">Display messages on the whole station and jump to the current live room</string>
|
||||
<string name="site_wide_news_hint2">Open noble king, emperor, super emperor to get free</string>
|
||||
<string name="back">back</string>
|
||||
<string name="go_nobility">to the nobles</string>
|
||||
<string name="go_nobility">Proceed</string>
|
||||
<string name="use_successfully">Use successfully</string>
|
||||
<string name="use_live">Go to the live room</string>
|
||||
<string name="search_history">search history</string>
|
||||
@@ -956,9 +956,9 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="chat_chat">Chat</string>
|
||||
<string name="lucky_angel">Congratulations %s have won %s in the Lucky Angel! The next lucky angel will be you!</string>
|
||||
<string name="lucky_100">Congratulations on %s winning %s in Luck 100 %%! Go pass on the good luck!</string>
|
||||
<string name="user_card_guard">Guardian group %s people</string>
|
||||
<string name="user_card_guard">Guardian %s</string>
|
||||
<string name="to_receive">receive</string>
|
||||
<string name="to_complete">To complete</string>
|
||||
<string name="to_complete">To finish</string>
|
||||
<string name="already_collected">Already collected</string>
|
||||
<string name="image_quality_selection">Image quality selection</string>
|
||||
<string name="more_settings">More Settings</string>
|
||||
@@ -1249,39 +1249,69 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="lucky_red_envelope">%s drew %s in the lucky red envelope</string>
|
||||
<string name="lucky_red_envelope_amount">number</string>
|
||||
<string name="red_envelope_released_successfully">Red successfully</string>
|
||||
<string name="me_edit_avatar_system">Select System Avatar</string>
|
||||
<string name="me_edit_avatar_system_tip">This function needs to be used to use it after lv.5, please work hard to upgrade ~</string>
|
||||
<string name="main_anchor_live_notify_info">No matter where you are, I am waiting for you in the live broadcast room ~</string>
|
||||
<string name="main_anchor_live_notify_live">Watch</string>
|
||||
<string name="live_notify_settings">LiveNotify</string>
|
||||
<string name="leveling_points">%s experience upgrade,%s receive rewards</string>
|
||||
<string name="reach_the_top">You have reached the highest level!</string>
|
||||
<string name="nothing_in_the_package_yet">There\'s nothing in the package yet</string>
|
||||
<string name="custom_quantity">Custom quantity</string>
|
||||
<string name="custom_quantity">Enter count</string>
|
||||
<string name="gift_wall">Gift wall</string>
|
||||
<string name="has_been_lit">%s has been lit</string>
|
||||
<string name="has_been_lit">Has been lit %s</string>
|
||||
<string name="codex">Illustrated book</string>
|
||||
<string name="unlit_icon">unlit</string>
|
||||
<string name="all_service_champion">All service</string>
|
||||
<string name="unlit_icon_hint">Love \\ \"ceremony \\\" at the beginning, \\ \"wall \\\" potential light temporarily no light</string>
|
||||
<string name="lit_icon_hint">No unlit gifts yet</string>
|
||||
<string name="instant_light">Instant light</string>
|
||||
<string name="honorary_achievement">Honorary achievement</string>
|
||||
<string name="lit_icon">Lit</string>
|
||||
<string name="unlit_icon">Not lit up</string>
|
||||
<string name="all_service_champion">Platform naming</string>
|
||||
<string name="unlit_icon_hint">Not yet lit</string>
|
||||
<string name="lit_icon_hint">No more gifts yet</string>
|
||||
<string name="instant_light">Light up</string>
|
||||
<string name="honorary_achievement">Honor achievement</string>
|
||||
<string name="lit_icon">Lit up</string>
|
||||
<string name="gift_wall_entrance">Gift Wall Entrance</string>
|
||||
<string name="gift_wall_entrance1">Personal profile card, personal homepage, live streaming room header button, and by clickingView personal and person\'s profile cards and homepage.</string>
|
||||
<string name="gift_wall_entrance2">Lighting up gifts</string>
|
||||
<string name="gift_wall_entrance3">On the gift panel and click on the gift wall of the recipient to light up the gift for gifting, Illuminate the corresponding gift icon in the recipient\'s gift wall. Only diamond gifts Can light up gifts. When the gifts in the event are compared to the gifts in the gift wall and guidebook When the same, give the same gift, first light up the event, gift wall, and picture guide A gift for.</string>
|
||||
<string name="gift_wall_entrance4">Named gift</string>
|
||||
<string name="gift_wall_entrance3">At the beginning of the \\\"ritual\\\" of love, the \\\"wall\\\" will be lit up, but it will not be lit up yet</string>
|
||||
<string name="gift_wall_entrance4">Naming gift</string>
|
||||
<string name="gift_wall_entrance5">Within each cycle, if a certain amount of diamonds are given as a single or cumulative gift Display the most gifts given to a recipient on the gift icon Gift person avatar, clicking on the avatar can also directly reach the giver\'s homepage of the named gift.</string>
|
||||
<string name="gift_wall_entrance6">When the gift in the guidebook is the same as the gift in the gift wall, give the same gift Objects, first point the gift on the gift wall, and then light up the gift in the guidebook. Honor achievement</string>
|
||||
<string name="gift_wall_entrance7">Medal of Achievement</string>
|
||||
<string name="gift_wall_entrance8_1">Medal of achievement</string>
|
||||
<string name="gift_wall_entrance8_1">Medal of Achievement</string>
|
||||
<string name="gift_wall_entrance8_2">Currently, there are three achievements, namely A cloud of good friends, A rich party, Very rich,</string>
|
||||
<string name="gift_wall_entrance8_3">A cloud of good friends: When the number of gifts received reaches 20, 30, 50, 100When it comes to 200 models, light up the corresponding achievements separately;Rich and capriciou</string>
|
||||
<string name="gift_wall_entrance8_4">A rich party: When the price of a single gift received exceeds 50000 diamonds, it is sufficient Illuminate the achievement;</string>
|
||||
<string name="gift_wall_entrance8_5">Very rich: When receiving 100 gifts priced over 3000 diamonds, i.e This achievement can be illuminated.</string>
|
||||
<string name="gift_wall_entrance8_6">The current user has a total of 4 achievements, namely being rich and capricious, sharing rain and dew, and giving gifts Gift machines, lighting masters.</string>
|
||||
<string name="gift_wall_entrance8_7">Rich and capricious: Accumulated gifts worth 50K, 2M,10M, 100M, 300M, light up the corresponding achievements separately;</string>
|
||||
<string name="gift_wall_entrance8_8">Rain and dew evenly: the cumulative Style quantity of gifts given to anchors reaches 10, 20, 50, 100,200, can achieve success;</string>
|
||||
<string name="gift_wall_entrance8_9">gift machine: The cumulative number of gifts given reaches 200, 1000, 10K,100K,1M,light up the corresponding achievements separately;</string>
|
||||
<string name="gift_wall_entrance8_10">lighting master: The number of unlocked Gift Walls has reached 10, 30, 50 At 100 and 200, light up the corresponding achievements separately.</string>
|
||||
<string name="gift_wall_entrance8_7">Rich and willful: the cumulative number of gift value diamonds sent reaches 10M to light up this achievement;</string>
|
||||
<string name="gift_wall_entrance8_8">Equal love: The cumulative number of people who have given gifts to the anchor reaches 50 to light up this achievement;</string>
|
||||
<string name="gift_wall_entrance8_9">Gift machine: when the accumulated number of gifts reaches 1000, this achievement will be activated;</string>
|
||||
<string name="gift_wall_entrance8_10">Lighting Master: Unlock [Gift Wall] reaches 100 to light up this achievement.</string>
|
||||
<string name="regular_bubble">rule</string>
|
||||
<string name="unlit_icon_hint2">The current event has not sent any gifts</string>
|
||||
<string name="rule_introduction">Rule introduction</string>
|
||||
<string name="gift_details_hint">Gift details</string>
|
||||
<string name="vacant_position_awaits">Waiting</string>
|
||||
<string name="distance_naming">It takes %sdiamonds to get the title</string>
|
||||
<string name="send_hem">Send out</string>
|
||||
<string name="winner_of_the_month">New winners</string>
|
||||
<string name="last_month_winner">Past winners</string>
|
||||
<string name="last_month_winner_hint">Past winners get a one-month exclusive champion skin</string>
|
||||
<string name="last_month_winner_hint2">Recently lit</string>
|
||||
<string name="received_wall">Hained</string>
|
||||
<string name="received_wall2">To light up</string>
|
||||
<string name="wall_honor">Honor Wall</string>
|
||||
<string name="achievement_details">Achievement Details</string>
|
||||
<string name="title_anchor">Title host</string>
|
||||
<string name="the_title_financier">Title sponsor</string>
|
||||
<string name="the_title_financier2">naming</string>
|
||||
<string name="the_title_financier3">Please enter a custom quantity</string>
|
||||
<string name="the__gifts_in_the_studio">Please make gifts in the studio</string>
|
||||
<string name="been_sent">Been sent out</string>
|
||||
<string name="been_sent_must">Send out</string>
|
||||
<string name="sett_rigger">"At least 2 types of gifts can be set to trigger the wish list special effect gift. "</string>
|
||||
<string name="cancel_ca">cancel</string>
|
||||
<string name="settings_ser">settings</string>
|
||||
<string name="too_many_gifts">Too many gifts</string>
|
||||
|
||||
|
||||
</resources>
|
||||
|
||||
@@ -1244,6 +1244,12 @@
|
||||
<string name="lucky_red_envelope">" %s 在 好運紅包 中抽到了 %s"</string>
|
||||
<string name="lucky_red_envelope_amount">数量</string>
|
||||
<string name="red_envelope_released_successfully">红包发布成功</string>
|
||||
<string name="me_edit_avatar_system">選擇系統頭像</string>
|
||||
<string name="me_edit_avatar_system_tip">該功能需升至Lv.5后使用,請努力升級吧~</string>
|
||||
<string name="main_anchor_live_notify_info">無論你在哪裏,我都在直播間等你~</string>
|
||||
<string name="main_anchor_live_notify_live">圍觀</string>
|
||||
<string name="live_notify_settings">開播通知</string>
|
||||
|
||||
<string name="leveling_points">升級還需%s經驗值,升至%s即可領取獎勵</string>
|
||||
<string name="reach_the_top">恭喜,你已達到最高等級</string>
|
||||
<string name="nothing_in_the_package_yet">包裹中暫無物品哦</string>
|
||||
@@ -1254,27 +1260,52 @@
|
||||
<string name="honorary_achievement">榮譽成就</string>
|
||||
<string name="lit_icon">已點亮</string>
|
||||
<string name="unlit_icon">未點亮</string>
|
||||
<string name="all_service_champion">全服冠軍</string>
|
||||
<string name="unlit_icon_hint">愛\\“禮\\”伊始,\\“墻\\”勢點亮 暫無點亮</string>
|
||||
<string name="all_service_champion">全服冠名</string>
|
||||
<string name="unlit_icon_hint">愛\“禮\”伊始,\“墻\”勢點亮 暫無點亮</string>
|
||||
<string name="lit_icon_hint">暂无未点亮礼物哦</string>
|
||||
<string name="instant_light">立即點亮</string>
|
||||
<string name="gift_wall_entrance">禮物墻入口</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊 自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance2">點亮禮物</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮, 即點亮收禮人禮物牆中對應的禮物圖標。只有鑽石送禮可點亮禮物。當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則的禮物。</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮,即點亮收禮人禮物牆中對應的禮物圖標。 只有鑽石送禮可點亮禮物。 當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則送同一個禮物,先點亮活動、禮物牆、圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance4">冠名禮物</string>
|
||||
<string name="gift_wall_entrance5">每個週期內單個或累計送同一禮物達一定數量鑽石,會在該禮物圖標上顯示對於某位收禮人而言送出最多的送禮人頭像,點擊頭像還可直達冠名禮物的送禮人主頁。</string>
|
||||
<string name="gift_wall_entrance6">當圖鑒的禮物與禮物牆中的禮物相同時,則送同一個禮物,先點禮物牆的禮物,之後再點亮圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance7">榮譽成就</string>
|
||||
<string name="gift_wall_entrance8_1">成就勳章</string>
|
||||
<string name="gift_wall_entrance8_1">成就勛章</string>
|
||||
<string name="gift_wall_entrance8_2">當前主播共有3個成就,分別是勝友如雲、富甲一方、腰纏萬貫。</string>
|
||||
<string name="gift_wall_entrance8_3">勝友如雲:當收到的禮物款數達到20、30、50、100、200款時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_4">富甲一方:收到的單款禮物價格超過50000鑽時,即可點亮該成就;</string>
|
||||
<string name="gift_wall_entrance8_5">腰纏萬貫:當收到100款價格超過3000鑽的禮物時,即可點亮該成就。</string>
|
||||
<string name="gift_wall_entrance8_6">當前用戶共有4個成就,分別是有錢任性、雨露均沾、送禮機器、點燈大師。</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到50K、2M、10M、100M、300M時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到10、20、50、100、200時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到200、1000、10K、00K、1M時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到10、30、50、100、200時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到10M點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到50點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到1000點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到100點亮该成就</string>
|
||||
<string name="regular_bubble">規則</string>
|
||||
<string name="unlit_icon_hint2">当前活动暂未送出任何礼物哦</string>
|
||||
<string name="rule_introduction">規則介紹</string>
|
||||
<string name="gift_details_hint">禮物詳情</string>
|
||||
<string name="vacant_position_awaits">虛位以待</string>
|
||||
<string name="distance_naming">距離冠名還需%s鑽</string>
|
||||
<string name="send_hem">送TA</string>
|
||||
<string name="winner_of_the_month">本月得主</string>
|
||||
<string name="last_month_winner">上月得主</string>
|
||||
<string name="last_month_winner_hint">上月奪得最終禮物冠名權用戶將獲得該禮物一個月專屬冠名皮膚</string>
|
||||
<string name="last_month_winner_hint2">近期點亮</string>
|
||||
<string name="received_wall">已獲得</string>
|
||||
<string name="received_wall2">去點亮</string>
|
||||
<string name="wall_honor">榮譽墻</string>
|
||||
<string name="achievement_details">成就詳情</string>
|
||||
<string name="title_anchor">冠名主播:</string>
|
||||
<string name="the_title_financier">冠名金主:</string>
|
||||
<string name="the_title_financier2">冠名</string>
|
||||
<string name="the_title_financier3">請輸入自定義數量</string>
|
||||
<string name="the__gifts_in_the_studio">請在直播間內進行送禮</string>
|
||||
<string name="been_sent">已送出</string>
|
||||
<string name="been_sent_must">立即送出</string>
|
||||
<string name="sett_rigger">最低設置2種類型禮物才能觸發心愿單特效禮物。</string>
|
||||
<string name="cancel_ca">不再設置</string>
|
||||
<string name="settings_ser">去設置</string>
|
||||
<string name="too_many_gifts">重複添加禮物</string>
|
||||
</resources>
|
||||
|
||||
@@ -1243,6 +1243,12 @@
|
||||
<string name="lucky_red_envelope">" %s 在 好運紅包 中抽到了 %s"</string>
|
||||
<string name="lucky_red_envelope_amount">数量</string>
|
||||
<string name="red_envelope_released_successfully">红包发布成功</string>
|
||||
<string name="me_edit_avatar_system">選擇系統頭像</string>
|
||||
<string name="me_edit_avatar_system_tip">該功能需升至Lv.5后使用,請努力升級吧~</string>
|
||||
<string name="main_anchor_live_notify_info">無論你在哪裏,我都在直播間等你~</string>
|
||||
<string name="main_anchor_live_notify_live">圍觀</string>
|
||||
<string name="live_notify_settings">開播通知</string>
|
||||
|
||||
<string name="leveling_points">升級還需%s經驗值,升至%s即可領取獎勵</string>
|
||||
<string name="reach_the_top">恭喜,你已達到最高等級</string>
|
||||
<string name="nothing_in_the_package_yet">包裹中暫無物品哦</string>
|
||||
@@ -1253,27 +1259,52 @@
|
||||
<string name="honorary_achievement">榮譽成就</string>
|
||||
<string name="lit_icon">已點亮</string>
|
||||
<string name="unlit_icon">未點亮</string>
|
||||
<string name="all_service_champion">全服冠軍</string>
|
||||
<string name="unlit_icon_hint">愛\\“禮\\”伊始,\\“墻\\”勢點亮 暫無點亮</string>
|
||||
<string name="all_service_champion">全服冠名</string>
|
||||
<string name="unlit_icon_hint">愛\“禮\”伊始,\“墻\”勢點亮 暫無點亮</string>
|
||||
<string name="lit_icon_hint">暂无未点亮礼物哦</string>
|
||||
<string name="instant_light">立即點亮</string>
|
||||
<string name="gift_wall_entrance">禮物墻入口</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊 自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance2">點亮禮物</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮, 即點亮收禮人禮物牆中對應的禮物圖標。只有鑽石送禮可點亮禮物。當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則的禮物。</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮,即點亮收禮人禮物牆中對應的禮物圖標。 只有鑽石送禮可點亮禮物。 當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則送同一個禮物,先點亮活動、禮物牆、圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance4">冠名禮物</string>
|
||||
<string name="gift_wall_entrance5">每個週期內單個或累計送同一禮物達一定數量鑽石,會在該禮物圖標上顯示對於某位收禮人而言送出最多的送禮人頭像,點擊頭像還可直達冠名禮物的送禮人主頁。</string>
|
||||
<string name="gift_wall_entrance6">當圖鑒的禮物與禮物牆中的禮物相同時,則送同一個禮物,先點禮物牆的禮物,之後再點亮圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance7">榮譽成就</string>
|
||||
<string name="gift_wall_entrance8_1">成就勳章</string>
|
||||
<string name="gift_wall_entrance8_1">成就勛章</string>
|
||||
<string name="gift_wall_entrance8_2">當前主播共有3個成就,分別是勝友如雲、富甲一方、腰纏萬貫。</string>
|
||||
<string name="gift_wall_entrance8_3">勝友如雲:當收到的禮物款數達到20、30、50、100、200款時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_4">富甲一方:收到的單款禮物價格超過50000鑽時,即可點亮該成就;</string>
|
||||
<string name="gift_wall_entrance8_5">腰纏萬貫:當收到100款價格超過3000鑽的禮物時,即可點亮該成就。</string>
|
||||
<string name="gift_wall_entrance8_6">當前用戶共有4個成就,分別是有錢任性、雨露均沾、送禮機器、點燈大師。</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到50K、2M、10M、100M、300M時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到10、20、50、100、200時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到200、1000、10K、00K、1M時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到10、30、50、100、200時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到10M點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到50點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到1000點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到100點亮该成就</string>
|
||||
<string name="regular_bubble">規則</string>
|
||||
<string name="unlit_icon_hint2">当前活动暂未送出任何礼物哦</string>
|
||||
<string name="rule_introduction">規則介紹</string>
|
||||
<string name="gift_details_hint">禮物詳情</string>
|
||||
<string name="vacant_position_awaits">虛位以待</string>
|
||||
<string name="distance_naming">距離冠名還需%s鑽</string>
|
||||
<string name="send_hem">送TA</string>
|
||||
<string name="winner_of_the_month">本月得主</string>
|
||||
<string name="last_month_winner">上月得主</string>
|
||||
<string name="last_month_winner_hint">上月奪得最終禮物冠名權用戶將獲得該禮物一個月專屬冠名皮膚</string>
|
||||
<string name="last_month_winner_hint2">近期點亮</string>
|
||||
<string name="received_wall">已獲得</string>
|
||||
<string name="received_wall2">去點亮</string>
|
||||
<string name="wall_honor">榮譽墻</string>
|
||||
<string name="achievement_details">成就詳情</string>
|
||||
<string name="title_anchor">冠名主播:</string>
|
||||
<string name="the_title_financier">冠名金主:</string>
|
||||
<string name="the_title_financier2">冠名</string>
|
||||
<string name="the_title_financier3">請輸入自定義數量</string>
|
||||
<string name="the__gifts_in_the_studio">請在直播間內進行送禮</string>
|
||||
<string name="been_sent">已送出</string>
|
||||
<string name="been_sent_must">立即送出</string>
|
||||
<string name="sett_rigger">最低設置2種類型禮物才能觸發心愿單特效禮物。</string>
|
||||
<string name="cancel_ca">不再設置</string>
|
||||
<string name="settings_ser">去設置</string>
|
||||
<string name="too_many_gifts">重複添加禮物</string>
|
||||
</resources>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<string name="bonus_sign">立即簽到</string>
|
||||
<string name="bonus_sign_1">已連續簽到</string>
|
||||
<string name="bonus_day">天</string>
|
||||
<string name="beauty_init_error">美顏初始化异常,無法使用</string>
|
||||
<string name="beauty_init_error">美顏初始化異常,無法使用</string>
|
||||
<string name="cash">提現帳戶</string>
|
||||
<string name="cash_account_empty">您當前還沒設定提現帳戶</string>
|
||||
<string name="cash_add_account">添加提現帳戶</string>
|
||||
@@ -34,7 +34,7 @@
|
||||
<string name="cash_type_ali">支付寶</string>
|
||||
<string name="cash_type_wx">微信</string>
|
||||
<string name="cash_type_bank">銀行卡</string>
|
||||
<string name="cash_delete">是否要删除該帳戶?</string>
|
||||
<string name="cash_delete">是否要刪除該帳戶?</string>
|
||||
<string name="cash_record">提現記錄</string>
|
||||
<string name="coin_give">贈送</string>
|
||||
<string name="coin_balance">帳戶餘額</string>
|
||||
@@ -58,17 +58,17 @@
|
||||
<string name="task1">任務1</string>
|
||||
<string name="task2">任務2</string>
|
||||
<string name="task3">任務3</string>
|
||||
<string name="give_a_free_gift">赠送一个\n免费礼物</string>
|
||||
<string name="give_a_free_gift">贈送一個\n免費禮物</string>
|
||||
<string name="incomplete">未完成</string>
|
||||
<string name="complete">完成</string>
|
||||
<string name="follow_anchor">任意關注\n一名主播</string>
|
||||
<string name="light_up_room">雙擊點亮\n 直播間</string>
|
||||
<string name="completing_mission">恭喜你完成任務</string>
|
||||
<string name="get">获得</string>
|
||||
<string name="get">獲得</string>
|
||||
<string name="only_one">這個禮物只能送一個哦~</string>
|
||||
<string name="edit_profile_birthday">生日</string>
|
||||
<string name="edit_profile_sex">性別</string>
|
||||
<string name="apply_for_lianmai">申请連麥</string>
|
||||
<string name="apply_for_lianmai">申請連麥</string>
|
||||
<string name="cancel_application">取消申請</string>
|
||||
<string name="close_mic">關閉連麥</string>
|
||||
<string name="quit_mic">退出連麥</string>
|
||||
@@ -125,7 +125,7 @@
|
||||
<string name="guard_my">我的</string>
|
||||
<string name="diamond">鑽石</string>
|
||||
|
||||
<string name="guard_guard">主播守护</string>
|
||||
<string name="guard_guard">主播守護</string>
|
||||
<string name="guard_week_con">本周貢獻</string>
|
||||
<string name="guard_no_data">主播正在等待您的守護!</string>
|
||||
<string name="guard_tip_0">快去為喜歡的主播開通守護吧</string>
|
||||
@@ -193,12 +193,12 @@
|
||||
<string name="login_tip_1">登入即代表同意</string>
|
||||
<string name="login_tip_2">服務和隱私條款</string>
|
||||
<string name="login_other_type">其他登入管道</string>
|
||||
<string name="login_tip_3">注册登入後體驗更精彩!</string>
|
||||
<string name="login_tip_3">註冊登入後體驗更精彩!</string>
|
||||
<string name="login_input_phone">請輸入手機號碼</string>
|
||||
<string name="login_input_pwd">請輸入密碼</string>
|
||||
<string name="login_immediately_login">立即登入</string>
|
||||
<string name="login_ing">登入中</string>
|
||||
<string name="login_immediately_register">立即注册</string>
|
||||
<string name="login_immediately_register">立即註冊</string>
|
||||
<string name="login_forget_pwd">忘記密碼</string>
|
||||
<string name="login_phone_error">請輸入正確的手機號碼</string>
|
||||
<string name="login_auth_ing">正在授權登入</string>
|
||||
@@ -219,7 +219,7 @@
|
||||
<string name="live_class">選擇頻道</string>
|
||||
<string name="live_class_choose">選擇直播頻道</string>
|
||||
<string name="live_class_tip_title">注意選擇適合自己的頻道。</string>
|
||||
<string name="live_class_tip">直播過程中,若運營人員發現選擇的頻道和直播內容不相符的情况,會調整您的直播頻道。</string>
|
||||
<string name="live_class_tip">直播過程中,若運營人員發現選擇的頻道和直播內容不相符的情況,會調整您的直播頻道。</string>
|
||||
<string name="live_set_pwd">請設定房間密碼</string>
|
||||
<string name="live_set_fee">請設定收費金額\n(收益以直播結束顯示為准)</string>
|
||||
<string name="live_set_pwd_empty">請設定房間密碼</string>
|
||||
@@ -424,17 +424,17 @@
|
||||
<string name="profit_tip_2">可提現%1$s數</string>
|
||||
<string name="profit_tip_3">輸入要選取的%1$s數</string>
|
||||
<string name="profit_cash">立即提現</string>
|
||||
<string name="reg_register">注册</string>
|
||||
<string name="reg_register">註冊</string>
|
||||
<string name="reg_input_phone">請輸入您的手機號</string>
|
||||
<string name="reg_input_code">請輸入驗證碼</string>
|
||||
<string name="reg_input_pwd_1">請填寫密碼</string>
|
||||
<string name="reg_input_pwd_2">請確認密碼</string>
|
||||
<string name="reg_input_pwd_3">填寫邀請碼(非必填)</string>
|
||||
<string name="reg_register_and_login">注册並登入</string>
|
||||
<string name="reg_register_and_login">註冊並登入</string>
|
||||
<string name="reg_get_code">獲取驗證碼</string>
|
||||
<string name="reg_get_code_again">重新獲取</string>
|
||||
<string name="reg_pwd_error">密碼不一致</string>
|
||||
<string name="reg_register_ing">注册中</string>
|
||||
<string name="reg_register_ing">註冊中</string>
|
||||
<string name="red_pack_1">直播間紅包</string>
|
||||
<string name="red_pack_2">給當前直播間觀眾發紅包</string>
|
||||
<string name="red_pack_3">拼手氣紅包</string>
|
||||
@@ -516,7 +516,7 @@
|
||||
<string name="video_process_failed">視頻預處理失敗</string>
|
||||
<string name="video_process_cancel">視頻預處理取消</string>
|
||||
<string name="video_processing">處理中</string>
|
||||
<string name="video_edit_status_error">狀態异常,停止編輯</string>
|
||||
<string name="video_edit_status_error">狀態異常,停止編輯</string>
|
||||
<string name="video_choose_music">選擇音樂</string>
|
||||
<string name="video_search_music">蒐索歌曲名稱</string>
|
||||
<string name="video_music_hot">熱門歌曲</string>
|
||||
@@ -533,7 +533,7 @@
|
||||
<string name="video_process_2">視頻生成中</string>
|
||||
<string name="video_generate_success">生成視頻成功</string>
|
||||
<string name="video_generate_failed">生成視頻失敗</string>
|
||||
<string name="video_give_up_pub">是否放弃發佈此條視頻</string>
|
||||
<string name="video_give_up_pub">是否放棄發佈此條視頻</string>
|
||||
<string name="video_no_local">未找到本地視頻</string>
|
||||
<string name="video_local">本地視頻</string>
|
||||
<string name="video_duration_error">視頻時長不符合要求</string>
|
||||
@@ -559,12 +559,12 @@
|
||||
<string name="video_report_tip_3">請選擇舉報理由</string>
|
||||
<string name="video_report_tip_4">舉報成功</string>
|
||||
<string name="video_scroll_top">已經到頂了哦</string>
|
||||
<string name="video_record_delete_last">確定删除上一段視頻?</string>
|
||||
<string name="video_record_delete_last">確定刪除上一段視頻?</string>
|
||||
<string name="video_edit_exit">是否退出視頻編輯</string>
|
||||
<string name="add">添加</string>
|
||||
<string name="accept">接受</string>
|
||||
<string name="all">全部</string>
|
||||
<string name="alumb">相册</string>
|
||||
<string name="alumb">相冊</string>
|
||||
<string name="cancel">取消</string>
|
||||
<string name="camera">相機</string>
|
||||
<string name="pic_choose_look">圖片選取/預覽</string>
|
||||
@@ -577,18 +577,18 @@
|
||||
<string name="cannot_follow_self">無法關注自己哦~</string>
|
||||
<string name="dialog_tip">提示</string>
|
||||
<string name="download">下載</string>
|
||||
<string name="delete">删除</string>
|
||||
<string name="delete">刪除</string>
|
||||
<string name="end">結束</string>
|
||||
<string name="hot">熱門</string>
|
||||
<string name="day_rank">日榜</string>
|
||||
<string name="week_rank">周榜</string>
|
||||
<string name="live_audience">觀衆</string>
|
||||
<string name="rosy">红润</string>
|
||||
<string name="rosy">紅潤</string>
|
||||
<string name="skin">美白</string>
|
||||
<string name="smooth">磨皮</string>
|
||||
<string name="big_eyes">大眼</string>
|
||||
<string name="slim_face">瘦脸</string>
|
||||
<string name="thin_face">削脸</string>
|
||||
<string name="slim_face">瘦臉</string>
|
||||
<string name="thin_face">削臉</string>
|
||||
<string name="chin">下巴</string>
|
||||
<string name="nose">鼻子</string>
|
||||
<string name="lips">嘴唇</string>
|
||||
@@ -596,24 +596,24 @@
|
||||
<string name="teeth">白牙</string>
|
||||
<string name="light">自然</string>
|
||||
<string name="white">白皙</string>
|
||||
<string name="white1">净白</string>
|
||||
<string name="white1">凈白</string>
|
||||
<string name="jp">日系</string>
|
||||
<string name="bw">黑白</string>
|
||||
<string name="soft">柔和</string>
|
||||
<string name="warmth">暖光</string>
|
||||
<string name="retro">复古</string>
|
||||
<string name="retro">復古</string>
|
||||
<string name="flower">花香</string>
|
||||
<string name="easy">轻氧</string>
|
||||
<string name="vitality">元气</string>
|
||||
<string name="warm">鲜明</string>
|
||||
<string name="easy">輕氧</string>
|
||||
<string name="vitality">元氣</string>
|
||||
<string name="warm">鮮明</string>
|
||||
<string name="bright">明亮</string>
|
||||
<string name="deep">深海</string>
|
||||
<string name="sunset">夕阳</string>
|
||||
<string name="cure">治愈</string>
|
||||
<string name="filter">滤镜</string>
|
||||
<string name="sunset">夕陽</string>
|
||||
<string name="cure">治癒</string>
|
||||
<string name="filter">濾鏡</string>
|
||||
<string name="preset">美型</string>
|
||||
<string name="beauty">美颜</string>
|
||||
<string name="cute">可爱</string>
|
||||
<string name="beauty">美顏</string>
|
||||
<string name="cute">可愛</string>
|
||||
<string name="goddess">女神</string>
|
||||
<string name="gxzb">個性裝扮</string>
|
||||
<string name="glamour_list">魅力榜</string>
|
||||
@@ -680,7 +680,7 @@
|
||||
<string name="live_level_chat_limit">發言,需要到達%1$s級</string>
|
||||
<string name="live_location_close">開定位</string>
|
||||
<string name="live_location_close_2">堅決關閉</string>
|
||||
<string name="live_location_close_3">關閉定位,直播不會被附近的人看到,直播間人數可能會减少,確認關閉嗎?</string>
|
||||
<string name="live_location_close_3">關閉定位,直播不會被附近的人看到,直播間人數可能會減少,確認關閉嗎?</string>
|
||||
<string name="mars">火星</string>
|
||||
<string name="shop">商城</string>
|
||||
<string name="detail">明細</string>
|
||||
@@ -698,7 +698,7 @@
|
||||
<string name="wallet_tip_5">未選中支付方式</string>
|
||||
<string name="wallet_coin_name">我的%1$s</string>
|
||||
<string name="charge">充值</string>
|
||||
<string name="receive">领取</string>
|
||||
<string name="receive">領取</string>
|
||||
<string name="mesg">消息中心</string>
|
||||
<string name="owning_guild">所屬公會</string>
|
||||
<string name="live_ktgz">開通貴族</string>
|
||||
@@ -715,7 +715,7 @@
|
||||
<string name="chat_charge_pay">立即支付</string>
|
||||
<string name="live_user_level">使用者等級</string>
|
||||
<string name="live_user_level_anchor">主播等級</string>
|
||||
<string name="live_user_card_level">用户等級</string>
|
||||
<string name="live_user_card_level">用戶等級</string>
|
||||
<string name="live_noble_level_anchor">貴族等級</string>
|
||||
<string name="live_noble_fens_anchor">粉絲團</string>
|
||||
<string name="live_honor_number_anchor">榮譽墻</string>
|
||||
@@ -728,7 +728,7 @@
|
||||
<string name="live_send_buy_zuoji_1">購買了座騎</string>
|
||||
<string name="live_send_buy_liang_name_1">購買了靚號</string>
|
||||
<string name="live_send_buy_vip_1">VIP</string>
|
||||
<string name="live_random">随机PK</string>
|
||||
<string name="live_random">隨機PK</string>
|
||||
<string name="live_wishlist">心願單</string>
|
||||
<string name="live_zg">娛樂整蠱</string>
|
||||
<string name="live_dr">多人PK</string>
|
||||
@@ -745,7 +745,7 @@
|
||||
<string name="guard_tip_day3">您是當前主播的年守護</string>
|
||||
<string name="guardiandate">守護日期截止到:%s</string>
|
||||
|
||||
<string name="favoriteanchor">快为您喜欢的主播开通守护吧</string>
|
||||
<string name="favoriteanchor">快為您喜歡的主播開通守護吧</string>
|
||||
<string name="theguardianof">成爲%s的守護</string>
|
||||
|
||||
|
||||
@@ -765,7 +765,7 @@
|
||||
<string name="register_tip_3">隱私政策</string>
|
||||
<string name="live_medal_des2">每日禮包</string>
|
||||
<string name="live_medal_des3">貴賓座席</string>
|
||||
<string name="live_medal_des5">真爱排行</string>
|
||||
<string name="live_medal_des5">真愛排行</string>
|
||||
<string name="live_medal_des4">送禮獲得粉絲微章</string>
|
||||
<string name="wishlist_title3">當日設置的心願,會在當天24:00失效</string>
|
||||
<string name="live_item_add_gift">添加禮物和數量</string>
|
||||
@@ -777,7 +777,7 @@
|
||||
<string name="lives_state">直播中</string>
|
||||
<string name="rest_state">休息中</string>
|
||||
|
||||
<string name="live_close_follow">拜托拜托,可以關注一下我嗎?</string>
|
||||
<string name="live_close_follow">拜託拜託,可以關注一下我嗎?</string>
|
||||
<string name="live_close_follow_exit">關注並退出</string>
|
||||
<string name="live_close_exit">直接退出</string>
|
||||
<string name="user">用戶</string>
|
||||
@@ -816,10 +816,10 @@
|
||||
|
||||
<string name="now_noble">當前貴族: </string>
|
||||
<string name="now_noble_time">到期時間: </string>
|
||||
<string name="black_succer">已加入黑名单</string>
|
||||
<string name="black_error">加入黑名单失败</string>
|
||||
<string name="black_succer_more">移除黑名单成功</string>
|
||||
<string name="black_error_more">移除黑名单失败</string>
|
||||
<string name="black_succer">已加入黑名單</string>
|
||||
<string name="black_error">加入黑名單失敗</string>
|
||||
<string name="black_succer_more">移除黑名單成功</string>
|
||||
<string name="black_error_more">移除黑名單失敗</string>
|
||||
|
||||
<string name="reply">回復</string>
|
||||
<string name="input_content">回復評論</string>
|
||||
@@ -844,9 +844,9 @@
|
||||
<string name="user_task_text3">解鎖直播間發言功能</string>
|
||||
<string name="user_task_but">前置任務</string>
|
||||
|
||||
<string name="user_login_facebook">使用Facebook登录</string>
|
||||
<string name="user_login_twitter">使用Twitter登录</string>
|
||||
<string name="user_login_google">使用Google登录</string>
|
||||
<string name="user_login_facebook">使用Facebook登錄</string>
|
||||
<string name="user_login_twitter">使用Twitter登錄</string>
|
||||
<string name="user_login_google">使用Google登錄</string>
|
||||
|
||||
<string name="user_login_outtime">請求超時,請稍後再試。</string>
|
||||
|
||||
@@ -893,12 +893,12 @@
|
||||
<string name="floating_screen">飄屏彈幕</string>
|
||||
<string name="whole_station_horn">全站喇叭</string>
|
||||
<string name="whole_station_horn_hint">可用次數:%s 注:每月1日凌晨4點更新次數</string>
|
||||
<string name="cannot_be_empty">内容不可为空</string>
|
||||
<string name="cannot_be_empty">內容不可為空</string>
|
||||
<string name="site_wide_news">貴族專屬全站消息</string>
|
||||
<string name="site_wide_news_hint1">全站顯示消息並可跳轉到當前直播間</string>
|
||||
<string name="site_wide_news_hint2">开通贵族国王、皇帝、超级皇帝免费获得</string>
|
||||
<string name="site_wide_news_hint2">開通貴族國王、皇帝、超級皇帝免費獲得</string>
|
||||
<string name="back">返回</string>
|
||||
<string name="go_nobility">前往贵族</string>
|
||||
<string name="go_nobility">前往貴族</string>
|
||||
<string name="use_successfully">使用成功</string>
|
||||
<string name="use_live">前往直播間</string>
|
||||
<string name="search_history">搜索歷史</string>
|
||||
@@ -907,7 +907,7 @@
|
||||
<string name="anchor_more">更多</string>
|
||||
<string name="wonderful_live">精彩直播</string>
|
||||
<string name="recommended_for_you">為您推薦</string>
|
||||
<string name="fun_games">趣味游戏</string>
|
||||
<string name="fun_games">趣味遊戲</string>
|
||||
<string name="value_added_benefits">增值權益</string>
|
||||
<string name="fan_club">粉絲團</string>
|
||||
<string name="activity_center">活動中心</string>
|
||||
@@ -931,7 +931,7 @@
|
||||
<string name="viscount">子爵</string>
|
||||
<string name="marquis">侯爵</string>
|
||||
<string name="duke">公爵</string>
|
||||
<string name="king">国王</string>
|
||||
<string name="king">國王</string>
|
||||
<string name="emperor">皇帝</string>
|
||||
<string name="better_emperor">超皇</string>
|
||||
<string name="can_not_go">無法前往神秘人的個人主頁。</string>
|
||||
@@ -942,21 +942,21 @@
|
||||
<string name="try_again_later">數據加載失敗,請稍後再試</string>
|
||||
<string name="open_noble2">開通了</string>
|
||||
<string name="enough_speakers">喇叭數量不足</string>
|
||||
<string name="order_query">订单查询中</string>
|
||||
<string name="order_query_success">订单无异常</string>
|
||||
<string name="order_query">訂單查詢中</string>
|
||||
<string name="order_query_success">訂單無異常</string>
|
||||
<string name="login_invalid">登錄失效,請重新登錄</string>
|
||||
<string name="login_wait">請稍後</string>
|
||||
<string name="slide_settings">滑動設置</string>
|
||||
<string name="up_slide_settings">上下滑動切換直播間</string>
|
||||
<string name="live_say_something_a">\@用户昵称\t\t你好啊~</string>
|
||||
<string name="oline_list">在线列表</string>
|
||||
<string name="live_say_something_a">\@用戶昵稱\t\t你好啊~</string>
|
||||
<string name="oline_list">在線列表</string>
|
||||
<string name="search_want">搜索想要@的人</string>
|
||||
<string name="online_audience">在線觀眾</string>
|
||||
<string name="audience">觀眾</string>
|
||||
<string name="cannot_yourself">無法@自己</string>
|
||||
<string name="total_star_value">總星值</string>
|
||||
<string name="number_of_people_assisted">助力人數</string>
|
||||
<string name="star_change">%s星挑战</string>
|
||||
<string name="star_change">%s星挑戰</string>
|
||||
<string name="star_success">恭喜 %s,完成了%s %s星 挑戰,快去一睹主播芳容吧!</string>
|
||||
<string name="star">星</string>
|
||||
<string name="small_window_settings">小窗播放設置</string>
|
||||
@@ -966,13 +966,13 @@
|
||||
<string name="system_window">APP全應用小窗播放</string>
|
||||
<string name="system_window_hint">在其他應用上及所有界面显示小窗\n需打開懸浮窗權限。</string>
|
||||
<string name="to_open_the">前往打開</string>
|
||||
<string name="do_you_like">不喜歡小窗播放吗?\n可以在「個人中心」-「設定」中關閉</string>
|
||||
<string name="do_you_like">不喜歡小窗播放嗎?\n可以在「個人中心」-「設定」中關閉</string>
|
||||
<string name="to_set_up">去設置</string>
|
||||
<string name="know_the">知道了</string>
|
||||
<string name="individual_set">個人設定</string>
|
||||
<string name="reward">獎勵</string>
|
||||
<string name="change_the_password">修改密碼</string>
|
||||
<string name="blacklist">黑名单</string>
|
||||
<string name="blacklist">黑名單</string>
|
||||
<string name="alerts">消息通知</string>
|
||||
<string name="studio_gift_effects">屏蔽直播間禮物特效</string>
|
||||
<string name="studio_ride_effects">屏蔽直播間座駕特效</string>
|
||||
@@ -988,7 +988,7 @@
|
||||
<string name="image_quality_selection">畫質選擇</string>
|
||||
<string name="more_settings">更多設置</string>
|
||||
<string name="moer">查看更多</string>
|
||||
<string name="gift_way">礼物正在获取中...</string>
|
||||
<string name="gift_way">禮物正在獲取中...</string>
|
||||
<string name="start_pk">開始PK</string>
|
||||
<string name="number_of_remaining_times">剩餘次數:%s</string>
|
||||
<string name="confirmed_to_proceed">是否確認進行多人PK(確認後扣除1點次數)當日剩餘次數: %s</string>
|
||||
@@ -997,9 +997,9 @@
|
||||
<string name="pk_time">時間 %s</string>
|
||||
|
||||
<string name="random_pk_dialog_apply">接受</string>
|
||||
<string name="random_pk_dialog_refuse">拒绝</string>
|
||||
<string name="random_pk_dialog_refuse_again">坚持拒绝</string>
|
||||
<string name="random_pk_dialog_title">随机PK提示</string>
|
||||
<string name="random_pk_dialog_refuse">拒絕</string>
|
||||
<string name="random_pk_dialog_refuse_again">堅持拒絕</string>
|
||||
<string name="random_pk_dialog_title">隨機PK提示</string>
|
||||
|
||||
<string name="speech_robot_setup">自動發言機器人設置</string>
|
||||
<string name="robot_switch">機器人開關</string>
|
||||
@@ -1036,7 +1036,7 @@
|
||||
<string name="stick_to_choice">堅持選擇</string>
|
||||
<string name="net_hint">網絡提示</string>
|
||||
<string name="net_hint2">系統監測到您的網絡不穩定,設備內存不足將會影響到您的直播流暢度,因此建議您選擇流暢清晰度。</string>
|
||||
<string name="check_the_new_version">检查新版本</string>
|
||||
<string name="check_the_new_version">檢查新版本</string>
|
||||
<string name="discover_a_new_version">發現新版本,點此更新</string>
|
||||
<string name="latest_version">已是最新版本</string>
|
||||
<string name="updating">更新中</string>
|
||||
@@ -1059,7 +1059,7 @@
|
||||
<string name="live_data_attention_rate">關注轉化率</string>
|
||||
<string name="live_data_fan_group">新增粉絲團</string>
|
||||
<string name="live_data_fan_group_rate">粉絲團轉化率</string>
|
||||
<string name="live_data_loading">加载中…</string>
|
||||
<string name="live_data_loading">加載中…</string>
|
||||
<string name="yoursystemisolder">由於您的系統較老,我們自動為您屏蔽了禮物及座駕特效,可在「設置中心」手動打開。</string>
|
||||
<string name="net_error">抱歉!出錯了!</string>
|
||||
|
||||
@@ -1068,19 +1068,19 @@
|
||||
<string name="more_day_to">再簽到1天即可獲得額外獎勵。</string>
|
||||
<string name="sign_in_to_the_center">「簽到中心」</string>
|
||||
<string name="go_to_the">快前往「簽到中心」獲得額外獎勵吧!</string>
|
||||
<string name="sign_in_center">签到中心</string>
|
||||
<string name="to_top">返回首页</string>
|
||||
<string name="go_to_the_sign">前往签到中心</string>
|
||||
<string name="sign_in_center">簽到中心</string>
|
||||
<string name="to_top">返回首頁</string>
|
||||
<string name="go_to_the_sign">前往簽到中心</string>
|
||||
<string name="confirm_pick_up">確認領取</string>
|
||||
<string name="customer_service2">無法登陸?點此聯繫客服</string>
|
||||
<string name="next_step_is_consent">進入下一步即代表同意</string>
|
||||
<string name="user_protocol2">用户協議</string>
|
||||
<string name="user_protocol2">用戶協議</string>
|
||||
<string name="and">和</string>
|
||||
<string name="privacy_terms">隱私條款</string>
|
||||
<string name="terms_and_policies">條款和政策</string>
|
||||
<string name="treat_and_protect">歡迎來到PD LIVE,對於您的個人信息及隱私,我們將採用最高標準對待和保護。</string>
|
||||
<string name="install_the_application">詳情請您閱讀以下安裝應用程序的消息:</string>
|
||||
<string name="anti_cheating_services">為了向您提供一鍵分享服務,我們的產品集成Mob+U-Share SDK,Mob+SDK需要收集您的設備Mac地址、唯一設備識別碼(1MEI/android ID/IDFA/OPENUDID/GUID、 SIM卡IMSI信息)以及您需要分享的社交賬號公開信息,以便完成一鍵分享服務。並通過地理位置校準報表數據準確性,提供基礎反作弊服務。為了您的信息安全,我們已與第三方SDK服務商進行數據安全保密約定,這些公司會嚴格遵守我們的數據隱私和安全要求。 除非得到您的同意,我們不會與其共享您的個人身份信息。為便於您更好地了解[Mob+]采集的數據類型及用途,以及何保護您的個人信息,您可以登陸https://www.mob.com/about/policy了解[Mob+]隱私權政)。</string>
|
||||
<string name="anti_cheating_services">為了向您提供一鍵分享服務,我們的產品集成Mob+U-Share SDK,Mob+SDK需要收集您的設備Mac地址、唯一設備識別碼(1MEI/android ID/IDFA/OPENUDID/GUID、 SIM卡IMSI信息)以及您需要分享的社交賬號公開信息,以便完成一鍵分享服務。並通過地理位置校準報表數據準確性,提供基礎反作弊服務。為了您的信息安全,我們已與第三方SDK服務商進行數據安全保密約定,這些公司會嚴格遵守我們的數據隱私和安全要求。 除非得到您的同意,我們不會與其共享您的個人身份信息。為便於您更好地了解[Mob+]採集的數據類型及用途,以及何保護您的個人信息,您可以登陸https://www.mob.com/about/policy了解[Mob+]隱私權政)。</string>
|
||||
<string name="agreement">同意</string>
|
||||
<string name="read_and_agre">點擊同意後即代表您已閱讀並同意以上所有內容。</string>
|
||||
<string name="support_login">本應用會收集位置數據以支持登錄和註冊的功能使用。</string>
|
||||
@@ -1091,7 +1091,7 @@
|
||||
<string name="layout_live_anchor_say_ready_title">女神說</string>
|
||||
|
||||
<string name="say_something3">說點什麽吧...</string>
|
||||
<string name="come_hint">%s 来了</string>
|
||||
<string name="come_hint">%s 來了</string>
|
||||
<string name="day_wish">日心願</string>
|
||||
<string name="zhou_xin">周心願</string>
|
||||
<string name="lunar_wish">月心願</string>
|
||||
@@ -1107,8 +1107,8 @@
|
||||
<string name="replacement_reset_confirmed_hint">重置後將會清空當前心願單列表\n無論心願單是否完成</string>
|
||||
<string name="replacement_reset_confirmed_sure">確定重置</string>
|
||||
<string name="replacement_reset_confirmed_cancel">返回列表</string>
|
||||
<string name="replacement_reset_confirmed_cancel2">是否保存当前心愿单</string>
|
||||
<string name="replacement_reset_confirmed_cancel3">当前心愿单未保存</string>
|
||||
<string name="replacement_reset_confirmed_cancel2">是否保存當前心愿單</string>
|
||||
<string name="replacement_reset_confirmed_cancel3">當前心愿單未保存</string>
|
||||
<string name="replacement_reset_confirmed_cancel4">不保存</string>
|
||||
|
||||
<string name="live_use_discount_content">您有一張%s,是否使用?使用後開通花費鉆石%s,返還金豆%s</string>
|
||||
@@ -1119,10 +1119,10 @@
|
||||
<string name="live_language_setting">語言設定</string>
|
||||
<string name="traditional_chinese">繁體中文</string>
|
||||
<string name="add_gift2">添加禮物、貴族、守護心願</string>
|
||||
<string name="heat_add">热度加成</string>
|
||||
<string name="must_hint">最多只能设置10条</string>
|
||||
<string name="heat_add">熱度加成</string>
|
||||
<string name="must_hint">最多只能設置10條</string>
|
||||
<string name="live_room_chat_fount_size_low">小</string>
|
||||
<string name="live_room_chat_fount_size_def">默认</string>
|
||||
<string name="live_room_chat_fount_size_def">默認</string>
|
||||
<string name="live_room_chat_fount_size_high">大</string>
|
||||
<string name="dialog_live_fount_title">選擇字號大小</string>
|
||||
<string name="dialog_fount_submit">確認</string>
|
||||
@@ -1139,9 +1139,9 @@
|
||||
<string name="chat_prompt9">新活動、系統消息</string>
|
||||
<string name="chat_prompt10">開播通知</string>
|
||||
<string name="chat_prompt11">開啟後獲得直播通知</string>
|
||||
<string name="PK_Ladder_Race">PK天梯赛</string>
|
||||
<string name="PK_Ladder_Race">PK天梯賽</string>
|
||||
<string name="party_studio">是否確認前往對方直播間?</string>
|
||||
<string name="not_received">充值未到账?</string>
|
||||
<string name="not_received">充值未到賬?</string>
|
||||
<string name="delete_account1">是否刪除賬號</string>
|
||||
<string name="delete_account2">點擊刪除後即刻生效,且不可恢復,您確認要繼續嗎?</string>
|
||||
<string name="delete_account3">確認刪除</string>
|
||||
@@ -1173,22 +1173,22 @@
|
||||
<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="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="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>
|
||||
<string name="extract_to2">%S送給了%s</string>
|
||||
<string name="rebot_config_auto_say_max">超過最大值</string>
|
||||
<string name="insufficient_balance">餘額不足,繼續充值</string>
|
||||
<string name="live_setting_gap_3">期限禁言</string>
|
||||
<string name="red_packet_list_title">紅包記錄</string>
|
||||
@@ -1208,7 +1208,7 @@
|
||||
<string name="red_packet_user_tips2">攢人氣紅包</string>
|
||||
<string name="main_tabs_red_packet">紅包專區</string>
|
||||
<string name="save_popular_red_packets">攢人氣紅包</string>
|
||||
<string name="red_packet_value">价值</string>
|
||||
<string name="red_packet_value">價值</string>
|
||||
<string name="top_up_now">去充值></string>
|
||||
<string name="total_consumption_of_drill">共計消耗%s鑚</string>
|
||||
<string name="red_envelope_rill">紅包%s鑚/個</string>
|
||||
@@ -1217,7 +1217,7 @@
|
||||
<string name="conditions">條件</string>
|
||||
<string name="drill">鑚</string>
|
||||
<string name="amount">金額</string>
|
||||
<string name="range_range_is">范围区间为[%s]</string>
|
||||
<string name="range_range_is">範圍區間為[%s]</string>
|
||||
<string name="red_packet_open">開</string>
|
||||
<string name="randomly_available">隨機可得</string>
|
||||
<string name="build_up_popularity">攢人氣</string>
|
||||
@@ -1242,8 +1242,13 @@
|
||||
<string name="red_too_bad2">與紅包擦肩而過</string>
|
||||
<string name="check_out_your_luck">查看大家手氣</string>
|
||||
<string name="lucky_red_envelope">" %s 在 好運紅包 中抽到了 %s"</string>
|
||||
<string name="lucky_red_envelope_amount">数量</string>
|
||||
<string name="red_envelope_released_successfully">红包发布成功</string>
|
||||
<string name="lucky_red_envelope_amount">數量</string>
|
||||
<string name="red_envelope_released_successfully">紅包發布成功</string>
|
||||
<string name="me_edit_avatar_system">選擇系統頭像</string>
|
||||
<string name="me_edit_avatar_system_tip">該功能需升至Lv.5后使用,請努力升級吧~</string>
|
||||
<string name="main_anchor_live_notify_info">無論你在哪裏,我都在直播間等你~</string>
|
||||
<string name="main_anchor_live_notify_live">圍觀</string>
|
||||
<string name="live_notify_settings">開播通知</string>
|
||||
<string name="leveling_points">升級還需%s經驗值,升至%s即可領取獎勵</string>
|
||||
<string name="reach_the_top">恭喜,你已達到最高等級</string>
|
||||
<string name="nothing_in_the_package_yet">包裹中暫無物品哦</string>
|
||||
@@ -1252,31 +1257,56 @@
|
||||
<string name="has_been_lit">已點亮%s個</string>
|
||||
<string name="codex">圖鑒</string>
|
||||
<string name="unlit_icon">未點亮</string>
|
||||
<string name="all_service_champion">全服冠軍</string>
|
||||
<string name="unlit_icon_hint">愛\\“禮\\”伊始,\\“墻\\”勢點亮 暫無點亮</string>
|
||||
<string name="lit_icon_hint">暂无未点亮礼物哦</string>
|
||||
<string name="all_service_champion">全服冠名</string>
|
||||
<string name="unlit_icon_hint">愛\“禮\”伊始,\“墻\”勢點亮 暫無點亮</string>
|
||||
<string name="lit_icon_hint">暫無未點亮禮物哦</string>
|
||||
<string name="instant_light">立即點亮</string>
|
||||
<string name="honorary_achievement">榮譽成就</string>
|
||||
<string name="lit_icon">已點亮</string>
|
||||
<string name="gift_wall_entrance">禮物墻入口</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊 自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance1">個人資料卡片、個人主頁、直播間頭部按鈕及通過點擊自己與TA人的資料卡和主頁查看。</string>
|
||||
<string name="gift_wall_entrance2">點亮禮物</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮, 即點亮收禮人禮物牆中對應的禮物圖標。只有鑽石送禮可點亮禮物。當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則的禮物。</string>
|
||||
<string name="gift_wall_entrance3">在禮物面板和點擊收禮人禮物牆待點亮的禮物進行送禮,即點亮收禮人禮物牆中對應的禮物圖標。 只有鑽石送禮可點亮禮物。 當活動中的禮物與禮物牆和圖鑒中的禮物相同時,則送同一個禮物,先點亮活動、禮物牆、圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance4">冠名禮物</string>
|
||||
<string name="gift_wall_entrance5">每個週期內單個或累計送同一禮物達一定數量鑽石,會在該禮物圖標上顯示對於某位收禮人而言送出最多的送禮人頭像,點擊頭像還可直達冠名禮物的送禮人主頁。</string>
|
||||
<string name="gift_wall_entrance6">當圖鑒的禮物與禮物牆中的禮物相同時,則送同一個禮物,先點禮物牆的禮物,之後再點亮圖鑒的禮物。</string>
|
||||
<string name="gift_wall_entrance7">榮譽成就</string>
|
||||
<string name="gift_wall_entrance8_1">成就勳章</string>
|
||||
<string name="gift_wall_entrance8_1">成就勛章</string>
|
||||
<string name="gift_wall_entrance8_2">當前主播共有3個成就,分別是勝友如雲、富甲一方、腰纏萬貫。</string>
|
||||
<string name="gift_wall_entrance8_3">勝友如雲:當收到的禮物款數達到20、30、50、100、200款時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_4">富甲一方:收到的單款禮物價格超過50000鑽時,即可點亮該成就;</string>
|
||||
<string name="gift_wall_entrance8_5">腰纏萬貫:當收到100款價格超過3000鑽的禮物時,即可點亮該成就。</string>
|
||||
<string name="gift_wall_entrance8_6">當前用戶共有4個成就,分別是有錢任性、雨露均沾、送禮機器、點燈大師。</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到50K、2M、10M、100M、300M時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到10、20、50、100、200時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到200、1000、10K、00K、1M時,分別點亮對應的成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到10、30、50、100、200時,分別點亮對應的成就</string>
|
||||
<string name="gift_wall_entrance8_7">有錢任性:纍計送出禮物價值鉆石數量達到10M點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_8">雨露均沾:纍計送禮給主播人數達到50點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_9">送禮機器:纍計贈送禮物個數達到1000點亮该成就;</string>
|
||||
<string name="gift_wall_entrance8_10">點燈大師:解鎖【禮物墻】的數量達到100點亮该成就</string>
|
||||
<string name="regular_bubble">規則</string>
|
||||
<string name="unlit_icon_hint2">當前活動暫未送出任何禮物哦</string>
|
||||
<string name="rule_introduction">規則介紹</string>
|
||||
<string name="gift_details_hint">禮物詳情</string>
|
||||
<string name="vacant_position_awaits">虛位以待</string>
|
||||
<string name="distance_naming">距離冠名還需%s鑽</string>
|
||||
<string name="send_hem">送TA</string>
|
||||
<string name="winner_of_the_month">本月得主</string>
|
||||
<string name="last_month_winner">上月得主</string>
|
||||
<string name="last_month_winner_hint">上月奪得最終禮物冠名權用戶將獲得該禮物一個月專屬冠名皮膚</string>
|
||||
<string name="last_month_winner_hint2">近期點亮</string>
|
||||
<string name="received_wall">已獲得</string>
|
||||
<string name="received_wall2">去點亮</string>
|
||||
<string name="wall_honor">榮譽墻</string>
|
||||
<string name="achievement_details">成就詳情</string>
|
||||
<string name="title_anchor">冠名主播:</string>
|
||||
<string name="the_title_financier">冠名金主:</string>
|
||||
<string name="the_title_financier2">冠名</string>
|
||||
<string name="the_title_financier3">請輸入自定義數量</string>
|
||||
<string name="the__gifts_in_the_studio">請在直播間內進行送禮</string>
|
||||
<string name="been_sent">已送出</string>
|
||||
<string name="been_sent_must">立即送出</string>
|
||||
<string name="sett_rigger">最低設置2種類型禮物才能觸發心愿單特效禮物。</string>
|
||||
<string name="cancel_ca">不再設置</string>
|
||||
<string name="settings_ser">去設置</string>
|
||||
<string name="too_many_gifts">重複添加禮物</string>
|
||||
|
||||
|
||||
</resources>
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
<string name="edit_profile_update_nickname">ModifyName</string>
|
||||
<string name="edit_profile_update_remarks">Modify remarks</string>
|
||||
<string name="edit_profile_remarks">Please enter comments~</string>
|
||||
<string name="edit_profile_update_sign">Signature modification</string>
|
||||
<string name="edit_profile_update_sign">Signature</string>
|
||||
<string name="edit_profile_sign">autograph</string>
|
||||
<string name="bind_phone">Binding phone</string>
|
||||
<string name="task1">TASK1</string>
|
||||
@@ -176,7 +176,7 @@
|
||||
<string name="guard_guard">Guard</string>
|
||||
<string name="guard_week_con">Contribution this week</string>
|
||||
<string name="guard_no_data">anchor are waiting at your guard!</string>
|
||||
<string name="guard_tip_0">Let\'s open up a guard for our favorite anchor</string>
|
||||
<string name="guard_tip_0">Turn on the guard for your favorite anchor!</string>
|
||||
<string name="guard_tip_1">You are the current anchor\'s monthly guard \ n the guard date expires</string>
|
||||
<string name="guard_tip_2">You are the current anchor\'s annual guardian \ n the guardian date expires</string>
|
||||
<string name="guard_gift_tip">Special gift for annual guard</string>
|
||||
@@ -754,8 +754,8 @@
|
||||
<string name="encourage_give_text">Encourage the author of this dynamic article</string>
|
||||
|
||||
<string name="confirm_give">Confirm encouragement</string>
|
||||
<string name="encourage_dynamic">Dynamic encouragement</string>
|
||||
<string name="encourage_dynamic_list">Encouraging records</string>
|
||||
<string name="encourage_dynamic">Rewards</string>
|
||||
<string name="encourage_dynamic_list">Records</string>
|
||||
|
||||
<string name="encourage_list_nodata">The author hasn\'t given encouragement yet T_T</string>
|
||||
|
||||
@@ -858,7 +858,7 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="site_wide_news_hint1">Display messages on the whole station and jump to the current live room</string>
|
||||
<string name="site_wide_news_hint2">Open noble king, emperor, super emperor to get free</string>
|
||||
<string name="back">back</string>
|
||||
<string name="go_nobility">to the nobles</string>
|
||||
<string name="go_nobility">Proceed</string>
|
||||
<string name="use_successfully">Use successfully</string>
|
||||
<string name="use_live">Go to the live room</string>
|
||||
<string name="search_history">search history</string>
|
||||
@@ -956,9 +956,9 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="chat_chat">Chat</string>
|
||||
<string name="lucky_angel">Congratulations %s have won %s in the Lucky Angel! The next lucky angel will be you!</string>
|
||||
<string name="lucky_100">Congratulations on %s winning %s in Luck 100 %%! Go pass on the good luck!</string>
|
||||
<string name="user_card_guard">Guardian group %s people</string>
|
||||
<string name="user_card_guard">Guardian %s </string>
|
||||
<string name="to_receive">receive</string>
|
||||
<string name="to_complete">To complete</string>
|
||||
<string name="to_complete">To finish</string>
|
||||
<string name="already_collected">Already collected</string>
|
||||
<string name="image_quality_selection">Image quality selection</string>
|
||||
<string name="more_settings">More Settings</string>
|
||||
@@ -1250,54 +1250,68 @@ Limited ride And limited avatar frame</string>
|
||||
<string name="lucky_red_envelope">%s drew %s in the lucky red envelope</string>
|
||||
<string name="lucky_red_envelope_amount">number</string>
|
||||
<string name="red_envelope_released_successfully">>Red successfully</string>
|
||||
<string name="me_edit_avatar_system">Select System Avatar</string>
|
||||
<string name="me_edit_avatar_system_tip">This function needs to be used to use it after lv.5, please work hard to upgrade ~</string>
|
||||
<string name="main_anchor_live_notify_info">No matter where you are, I am waiting for you in the live broadcast room ~</string>
|
||||
<string name="main_anchor_live_notify_live">Watch</string>
|
||||
<string name="live_notify_settings">LiveNotify</string>
|
||||
<string name="leveling_points">%s experience upgrade,%s receive rewards</string>
|
||||
<string name="nothing_in_the_package_yet">There\'s nothing in the package yet</string>
|
||||
<string name="reach_the_top">You have reached the highest level!</string>
|
||||
<string name="custom_quantity">Custom quantity</string>
|
||||
<string name="custom_quantity">Enter count</string>
|
||||
<string name="gift_wall">Gift wall</string>
|
||||
<string name="has_been_lit">%s has been lit</string>
|
||||
<string name="unlit_icon">unlit</string>
|
||||
<string name="all_service_champion">All service</string>
|
||||
<string name="unlit_icon_hint">Love \\ \"ceremony \\\" at the beginning, \\ \"wall \\\" potential light temporarily no light</string>
|
||||
<string name="lit_icon_hint">No unlit gifts yet</string>
|
||||
<string name="instant_light">Instant light</string>
|
||||
<string name="has_been_lit">Has been lit %s</string>
|
||||
<string name="unlit_icon">Not lit up</string>
|
||||
<string name="all_service_champion">Platform naming</string>
|
||||
<string name="unlit_icon_hint">Not yet lit</string>
|
||||
<string name="unlit_icon_hint2">The current event has not sent any gifts</string>
|
||||
<string name="lit_icon_hint">No more gifts yet</string>
|
||||
<string name="instant_light">Light up</string>
|
||||
<string name="gift_wall_entrance">Gift Wall Entrance</string>
|
||||
<string name="gift_wall_entrance1">Personal profile card, personal homepage, live streaming room header button, and by clicking</string>
|
||||
<string name="gift_wall_entrance2">Lighting up gifts</string>
|
||||
<string name="gift_wall_entrance3">On the gift panel and click on the gift wall of the recipient to light up the gift for gifting, Illuminate the corresponding gift icon in the recipient\'s gift wall. Only diamond gifts Can light up gifts. When the gifts in the event are compared to the gifts in the gift wall and guidebook When the same, give the same gift, first light up the event, gift wall, and picture guide A gift for.</string>
|
||||
<string name="gift_wall_entrance4">Named gift</string>
|
||||
<string name="gift_wall_entrance3">At the beginning of the \\\"ritual\\\" of love, the \\\"wall\\\" will be lit up, but it will not be lit up yet</string>
|
||||
<string name="gift_wall_entrance4">Naming gift</string>
|
||||
<string name="gift_wall_entrance5">Within each cycle, if a certain amount of diamonds are given as a single or cumulative gift Display the most gifts given to a recipient on the gift icon Gift person avatar, clicking on the avatar can also directly reach the giver\'s homepage of the named gift.</string>
|
||||
<string name="gift_wall_entrance6">When the gift in the guidebook is the same as the gift in the gift wall, give the same gift Objects, first point the gift on the gift wall, and then light up the gift in the guidebook. Honor achievement</string>
|
||||
<string name="gift_wall_entrance7">Medal of Achievement</string>
|
||||
<string name="gift_wall_entrance8_1">Medal of achievement</string>
|
||||
<string name="gift_wall_entrance8_1">Medal of Achievement</string>
|
||||
<string name="gift_wall_entrance8_2">Currently, there are three achievements, namely A cloud of good friends, A rich party, Very rich,</string>
|
||||
<string name="gift_wall_entrance8_3">A cloud of good friends: When the number of gifts received reaches 20, 30, 50, 100When it comes to 200 models, light up the corresponding achievements separately;Rich and capriciou</string>
|
||||
<string name="gift_wall_entrance8_4">A rich party: When the price of a single gift received exceeds 50000 diamonds, it is sufficient Illuminate the achievement;</string>
|
||||
<string name="gift_wall_entrance8_5">Very rich: When receiving 100 gifts priced over 3000 diamonds, i.e This achievement can be illuminated.</string>
|
||||
<string name="gift_wall_entrance8_6">The current user has a total of 4 achievements, namely being rich and capricious, sharing rain and dew, and giving gifts Gift machines, lighting masters.</string>
|
||||
<string name="gift_wall_entrance8_7">Rich and capricious: Accumulated gifts worth 50K, 2M,10M, 100M, 300M, light up the corresponding achievements separately;</string>
|
||||
<string name="gift_wall_entrance8_8">Rain and dew evenly: the cumulative Style quantity of gifts given to anchors reaches 10, 20, 50, 100,200, can achieve success;</string>
|
||||
<string name="gift_wall_entrance8_9">gift machine: The cumulative number of gifts given reaches 200, 1000, 10K,100K,1M,light up the corresponding achievements separately;</string>
|
||||
<string name="gift_wall_entrance8_10">lighting master: The number of unlocked Gift Walls has reached 10, 30, 50 At 100 and 200, light up the corresponding achievements separately.</string>
|
||||
<string name="gift_wall_entrance8_7">Rich and willful: the cumulative number of gift value diamonds sent reaches 10M to light up this achievement;</string>
|
||||
<string name="gift_wall_entrance8_8">Equal love: The cumulative number of people who have given gifts to the anchor reaches 50 to light up this achievement;</string>
|
||||
<string name="gift_wall_entrance8_9">Gift machine: when the accumulated number of gifts reaches 1000, this achievement will be activated;</string>
|
||||
<string name="gift_wall_entrance8_10">Lighting Master: Unlock [Gift Wall] reaches 100 to light up this achievement.</string>
|
||||
<string name="regular_bubble">rule</string>
|
||||
<string name="codex">Illustrated book</string>
|
||||
<string name="honorary_achievement">Honorary achievement</string>
|
||||
<string name="lit_icon">Lit</string>
|
||||
<string name="rule_introduction">規則介紹</string>
|
||||
<string name="gift_details_hint">禮物詳情</string>
|
||||
<string name="vacant_position_awaits">虛位以待</string>
|
||||
<string name="distance_naming">距離冠名還需%s鑽</string>
|
||||
<string name="send_hem">送TA</string>
|
||||
<string name="winner_of_the_month">本月得主</string>
|
||||
<string name="last_month_winner">上月得主</string>
|
||||
<string name="last_month_winner_hint">上月奪得最終禮物冠名權用戶將獲得該禮物一個月專屬冠名皮膚</string>
|
||||
<string name="last_month_winner_hint2">近期點亮</string>
|
||||
<string name="received_wall">已獲得</string>
|
||||
<string name="received_wall2">去點亮</string>
|
||||
<string name="wall_honor">我的荣誉墙</string>
|
||||
<string name="achievement_details">成就詳情</string>
|
||||
<string name="title_anchor">冠名主播:</string>
|
||||
<string name="the_title_financier">冠名金主:</string>
|
||||
<string name="the_title_financier2">冠名</string>
|
||||
<string name="honorary_achievement">Honor achievement</string>
|
||||
<string name="lit_icon">Lit up</string>
|
||||
<string name="rule_introduction">Rule introduction</string>
|
||||
<string name="gift_details_hint">Gift details</string>
|
||||
<string name="vacant_position_awaits">Waiting</string>
|
||||
<string name="distance_naming">It takes %sdiamonds to get the title</string>
|
||||
<string name="send_hem">Send out</string>
|
||||
<string name="winner_of_the_month">New winners</string>
|
||||
<string name="last_month_winner">Past winners</string>
|
||||
<string name="last_month_winner_hint">Past winners get a one-month exclusive champion skin</string>
|
||||
<string name="last_month_winner_hint2">Recently lit</string>
|
||||
<string name="received_wall">Hained</string>
|
||||
<string name="received_wall2">To light up</string>
|
||||
<string name="wall_honor">Honor Wall</string>
|
||||
<string name="achievement_details">Achievement Details</string>
|
||||
<string name="title_anchor">Title host</string>
|
||||
<string name="the_title_financier">Title sponsor</string>
|
||||
<string name="the_title_financier2">naming</string>
|
||||
<string name="the_title_financier3">Please enter a custom quantity</string>
|
||||
<string name="the__gifts_in_the_studio">Please make gifts in the studio</string>
|
||||
<string name="been_sent">Been sent out</string>
|
||||
<string name="been_sent_must">Send out</string>
|
||||
<string name="sett_rigger">At least 2 types of gifts can be set to trigger the wish list special effect gift. </string>
|
||||
<string name="cancel_ca">cancel</string>
|
||||
<string name="settings_ser">settings</string>
|
||||
<string name="too_many_gifts">Too many gifts</string>
|
||||
|
||||
</resources>
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
ext {
|
||||
android = [
|
||||
compileSdkVersion: 31,
|
||||
compileSdkVersion: 33,
|
||||
buildToolsVersion: "29.0.2",
|
||||
minSdkVersion : 21,
|
||||
targetSdkVersion : 31,
|
||||
versionCode : 436,
|
||||
versionName : "6.5.3"
|
||||
targetSdkVersion : 33,
|
||||
versionCode : 445,
|
||||
versionName : "6.5.4"
|
||||
]
|
||||
manifestPlaceholders = [
|
||||
//正式、
|
||||
// serverHost : "https://napi.yaoulive.com",
|
||||
serverHost : "https://napi.yaoulive.com",
|
||||
// 测试
|
||||
serverHost : "https://ceshi.yaoulive.com",
|
||||
// serverHost : " https://ceshi.yaoulive.com",
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -14,10 +14,9 @@ import com.yunbao.common.http.CommonHttpUtil;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.manager.InstructorRemarkManager;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.bean.SearchUserBean;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.yunbao.common.fragment.GiftWithoutWallFragment;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.dialog.CodexDialog;
|
||||
@@ -45,6 +46,7 @@ public class GiftWallActivity extends AbsActivity {
|
||||
private List<View> tabView = new ArrayList<>();
|
||||
private String mStream, mAnchorName, mLiveUid, mAvatarUrl;
|
||||
private int isAttention = 0;//是否关注 0=没关注,
|
||||
private boolean isLive;
|
||||
|
||||
@Override
|
||||
protected int getLayoutId() {
|
||||
@@ -87,7 +89,7 @@ public class GiftWallActivity extends AbsActivity {
|
||||
ViewClicksAntiShake.clicksAntiShake(layoutLitIcon, () -> {
|
||||
selectTab(textLitIcon, viewLitIcon);
|
||||
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, mLiveUid));
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, mLiveUid, isLive,false));
|
||||
transaction.commit();
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(layoutUnlitIcon, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@@ -116,7 +118,7 @@ public class GiftWallActivity extends AbsActivity {
|
||||
public void onViewClicks() {
|
||||
new XPopup.Builder(GiftWallActivity.this)
|
||||
.enableDrag(false)
|
||||
.asCustom(new CodexDialog(GiftWallActivity.this, mStream, mLiveUid, false))
|
||||
.asCustom(new CodexDialog(GiftWallActivity.this, mStream, mLiveUid, mLiveUid,false,false))
|
||||
.show();
|
||||
}
|
||||
});
|
||||
@@ -125,7 +127,7 @@ public class GiftWallActivity extends AbsActivity {
|
||||
public void onViewClicks() {
|
||||
new XPopup.Builder(GiftWallActivity.this)
|
||||
.enableDrag(false)
|
||||
.asCustom(new MedalAchievementPopup(GiftWallActivity.this, false, mLiveUid))
|
||||
.asCustom(new MedalAchievementPopup(GiftWallActivity.this, isLive, mLiveUid, mLiveUid))
|
||||
.show();
|
||||
}
|
||||
});
|
||||
@@ -141,6 +143,12 @@ public class GiftWallActivity extends AbsActivity {
|
||||
forwardHomePage();
|
||||
}
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.close_btn), new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
finish();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void initDate() {
|
||||
@@ -153,12 +161,17 @@ public class GiftWallActivity extends AbsActivity {
|
||||
mAnchorName = intent.getStringExtra("mAnchorName");
|
||||
mAvatarUrl = intent.getStringExtra("mAvatarUrl");
|
||||
isAttention = intent.getIntExtra("isAttention", 0);
|
||||
|
||||
isLive = intent.getBooleanExtra("isLive", false);
|
||||
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, mLiveUid));
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, mLiveUid, isLive, false));
|
||||
transaction.commit();
|
||||
ImgLoader.display(GiftWallActivity.this, mAvatarUrl, avatar);
|
||||
anchorName.setText(mAnchorName);
|
||||
if (isLive) {
|
||||
textLitIcon.setText(getString(R.string.lit_icon));
|
||||
} else {
|
||||
textLitIcon.setText(getString(R.string.been_sent));
|
||||
}
|
||||
}
|
||||
|
||||
private void selectTab(TextView textView, View tab) {
|
||||
@@ -173,22 +186,24 @@ public class GiftWallActivity extends AbsActivity {
|
||||
view.setVisibility(view == tab ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
private void forwardHomePage() {
|
||||
finish();
|
||||
finish();
|
||||
RouteUtil.forwardUserHome(mContext, mLiveUid, false, mLiveUid, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* 关于点击礼物分类的通知
|
||||
*/
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onGiftWallItemEvent(GiftWallItemEvent event) {
|
||||
new XPopup.Builder(this)
|
||||
.asCustom(new GiftWallItemPopup(this, event.getGiftWallModel(), event.isUnlit(), mLiveUid, mStream))
|
||||
.asCustom(new GiftWallItemPopup(this, event.getGiftWallModel(), event.isUnlit(), mLiveUid, mLiveUid, mStream, false))
|
||||
.show();
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onLiveGiftDialogEvent(LiveGiftDialogEvent event) {
|
||||
onBackPressed();
|
||||
ToastUtil.show(getString(R.string.the__gifts_in_the_studio));
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,5 @@
|
||||
package com.yunbao.live.activity;
|
||||
|
||||
import static com.yunbao.live.views.LiveRoomViewHolder.mLiveUid;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.ClipData;
|
||||
import android.content.ClipboardManager;
|
||||
@@ -73,8 +71,8 @@ import com.yunbao.live.dialog.LiveShareDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveUserAnchorMailBoxPopDialog;
|
||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveUserMoreDialogFragment;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.live.presenter.LiveLinkMicAnchorPresenter;
|
||||
import com.yunbao.live.presenter.LiveLinkMicPkPresenter;
|
||||
import com.yunbao.live.presenter.LiveLinkMicPresenter;
|
||||
@@ -926,7 +924,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
if (!mIsAnchor) {
|
||||
UserBean u = CommonAppConfig.getInstance().getUserBean();
|
||||
if (u != null && u.getLevel() < mDanMuLevel) {
|
||||
ToastUtil.show(String.format(mContext.getString(R.string.live_level_danmu_limit), mDanMuLevel));
|
||||
ToastUtil.show(String.format(mContext.getString(R.string.live_level_danmu_limit), mDanMuLevel+""));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -947,7 +945,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
onCoinChanged(coin);
|
||||
}
|
||||
String[] data = new String[]{obj.getString("barragetoken")};
|
||||
SocketRyChatUtil.sendDanmuMessage(mLiveUid, contents);
|
||||
SocketRyChatUtil.sendDanmuMessage(mLiveUid, contents,obj.getIntValue("level_fans"));
|
||||
} else {
|
||||
ToastUtil.show(msg);
|
||||
}
|
||||
@@ -963,7 +961,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
if (!mIsAnchor) {
|
||||
UserBean u = CommonAppConfig.getInstance().getUserBean();
|
||||
if (u != null && u.getLevel() < mChatLevel) {
|
||||
ToastUtil.show(String.format(mContext.getString(R.string.live_level_chat_limit), mChatLevel));
|
||||
ToastUtil.show(String.format(mContext.getString(R.string.live_level_chat_limit), mChatLevel+""));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1277,6 +1275,9 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
} else {
|
||||
bundle.putString(Constants.URL, CommonAppConfig.HOST + "/h5/live/fansClub.html" + "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken() + "&anchorUid=" + uid);
|
||||
}
|
||||
bundle.putString("liveUid",mLiveUid);
|
||||
bundle.putString("anchorName",mAncherName);
|
||||
bundle.putString("mStream",mStream);
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(getSupportFragmentManager(), "LiveGuardDialogFragment");
|
||||
}
|
||||
|
||||
@@ -51,8 +51,8 @@ import com.yunbao.live.dialog.LiveFunctionDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveLinkMicListDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveWishListDialogFragment;
|
||||
import com.yunbao.live.event.LinkMicTxMixStreamEvent;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.live.interfaces.LiveFunctionClickListener;
|
||||
import com.yunbao.live.interfaces.LivePushListener;
|
||||
import com.yunbao.live.momo.BeautyManager;
|
||||
|
||||
@@ -62,6 +62,7 @@ import com.yunbao.common.event.CustomDrawerPopupEvent;
|
||||
import com.yunbao.common.event.FollowEvent;
|
||||
import com.yunbao.common.event.GiftWallIlluminateEvent;
|
||||
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||
import com.yunbao.common.event.LiveErrorEvent;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.CommonHttpConsts;
|
||||
import com.yunbao.common.http.CommonHttpUtil;
|
||||
@@ -100,11 +101,11 @@ import com.yunbao.live.dialog.LiveWishListDialogFragment4Audience;
|
||||
import com.yunbao.live.dialog.SignDialogFragment;
|
||||
import com.yunbao.live.event.LinkMicTxAccEvent;
|
||||
import com.yunbao.live.event.LiveAudienceEvent;
|
||||
import com.yunbao.live.event.LiveRoomChangeEvent;
|
||||
import com.yunbao.common.event.LiveRoomChangeEvent;
|
||||
import com.yunbao.live.http.ImHttpUtil;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.live.views.LiveRoomPlayViewHolder;
|
||||
import com.yunbao.live.views.PortraitLiveManager;
|
||||
import com.yunbao.share.ui.SharePopDialog;
|
||||
@@ -248,6 +249,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
* 初始化数据
|
||||
*/
|
||||
private void initData() {
|
||||
|
||||
String json = GsonUtils.toJson(mLiveBean);
|
||||
AnchorRecommendItemModel model = GsonUtils.fromJson(json, AnchorRecommendItemModel.class);
|
||||
itemModelList.add(0, model);
|
||||
@@ -748,6 +750,12 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
if (manager != null) {
|
||||
manager.onResume();
|
||||
}
|
||||
if (manager != null && !StringUtil.isEmpty(is_fans)) {
|
||||
if (is_fans.equals("-2")) {
|
||||
manager.setAttention(0);
|
||||
is_fans = "2";
|
||||
}
|
||||
}
|
||||
GiftCacheUtil.getInstance().restart();
|
||||
}
|
||||
|
||||
@@ -1068,6 +1076,9 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
"?uid=" + userInfo.getId() +
|
||||
"&token=" + userInfo.getToken() + "&anchorUid=" + mLiveUid);
|
||||
}
|
||||
bundle.putString("liveUid", mLiveUid);
|
||||
bundle.putString("anchorName", mAncherName);
|
||||
bundle.putString("mStream", mStream);
|
||||
liveFansFragment.setArguments(bundle);
|
||||
liveFansFragment.show(getSupportFragmentManager(), "LiveGuardDialogFragment");
|
||||
break;
|
||||
@@ -1441,7 +1452,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
break;
|
||||
case GIFT_WALL:
|
||||
if (manager != null) {
|
||||
manager.showGiftWall(event.getUid());
|
||||
manager.showGiftWall(event.getUid(), event.isVoicePress(), event.getUname(), event.getAvatar());
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1456,6 +1467,12 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onLiveErrorEvent(LiveErrorEvent event){
|
||||
//主播未直播时自动下滑至下一个直播间
|
||||
mCurrentPage = mCurrentPage + 1;
|
||||
liveHandler.post(liveRunnable);
|
||||
}
|
||||
/**
|
||||
* 跳转到消息中心的系统信息web
|
||||
*
|
||||
@@ -1561,7 +1578,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
JSONObject item = (JSONObject) o;
|
||||
List<LiveGiftBean> giftlist = JSONArray.parseArray(item.getJSONArray("giftlist").toJSONString(), LiveGiftBean.class);
|
||||
for (LiveGiftBean bean : giftlist) {
|
||||
if (!bean.getSwf().isEmpty()) {
|
||||
if (bean != null && !bean.getSwf().isEmpty()) {
|
||||
giftBeanList.add(bean);
|
||||
}
|
||||
}
|
||||
@@ -1587,7 +1604,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
|
||||
@SuppressLint("SetTextI18n")
|
||||
public void showMsgRed(int num) {
|
||||
if (manager == null) {
|
||||
if (manager == null || manager.mLiveAudienceViewHolder == null || manager.mLiveAudienceViewHolder.mRedPoint == null) {
|
||||
return;
|
||||
}
|
||||
if (num == -1) {
|
||||
@@ -1599,6 +1616,16 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
manager.mLiveAudienceViewHolder.mRedPoint.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
public void setShowCrownRed(boolean isShow) {
|
||||
if (manager == null || manager.mLiveAudienceViewHolder == null || manager.mLiveAudienceViewHolder.mRedPointPrivilege == null) {
|
||||
return;
|
||||
}
|
||||
if (isShow) {
|
||||
manager.mLiveAudienceViewHolder.mRedPointPrivilege.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
manager.mLiveAudienceViewHolder.mRedPointPrivilege.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
public void closeRoom() {
|
||||
runOnUiThread(new Runnable() {
|
||||
|
||||
@@ -13,12 +13,11 @@ import com.yunbao.common.custom.CommonRefreshView;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.LiveBlackAdapter;
|
||||
import com.yunbao.live.bean.LiveShutUpBean;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@@ -13,11 +13,10 @@ import com.yunbao.common.activity.AbsActivity;
|
||||
import com.yunbao.common.adapter.RefreshAdapter;
|
||||
import com.yunbao.common.custom.CommonRefreshView;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.adapter.GuardAdapter;
|
||||
import com.yunbao.live.bean.GuardUserBean;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@@ -16,12 +16,11 @@ import com.yunbao.common.interfaces.KeyBoardHeightChangeListener;
|
||||
import com.yunbao.common.utils.KeyBoardHeightUtil;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.LiveReportAdapter;
|
||||
import com.yunbao.live.bean.LiveReportBean;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Arrays;
|
||||
|
||||
@@ -50,6 +50,7 @@ import com.yunbao.common.bean.LiveUserGiftBean;
|
||||
import com.yunbao.common.bean.MicUserBean;
|
||||
import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.dialog.NotCancelableDialog;
|
||||
import com.yunbao.common.event.GiftWallIlluminateEvent;
|
||||
import com.yunbao.common.event.LoginInvalidEvent;
|
||||
import com.yunbao.common.event.SendBlindGiftEvent;
|
||||
import com.yunbao.common.http.CommonHttpConsts;
|
||||
@@ -78,14 +79,15 @@ import com.yunbao.live.bean.LiveGuardInfo;
|
||||
import com.yunbao.live.bean.LiveKsyConfigBean;
|
||||
import com.yunbao.live.bean.LiveReceiveGiftBean;
|
||||
import com.yunbao.live.dialog.FreePkDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveInputDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveNewFunctionDialogFragment;
|
||||
import com.yunbao.live.dialog.LivePrankDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveWishListDialogFragment4Audience;
|
||||
import com.yunbao.live.dialog.RandomPkDialogFragment;
|
||||
import com.yunbao.live.event.LinkMicTxMixStreamEvent;
|
||||
import com.yunbao.live.event.LiveAudienceEvent;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.live.interfaces.LiveFunctionClickListener;
|
||||
import com.yunbao.live.interfaces.LivePushListener;
|
||||
import com.yunbao.live.music.LiveMusicDialogFragment;
|
||||
@@ -226,7 +228,7 @@ public class LiveRyAnchorActivity extends LiveActivity implements LiveFunctionCl
|
||||
long lossRate = statusBean.packetLostRate;
|
||||
//带宽
|
||||
String googAvailableSendBandwidth = statusReport.googAvailableSendBandwidth;
|
||||
Log.e("网速和内存", "获取视频:" + resolution + " 丢包率:" + lossRate + " 带宽:" + googAvailableSendBandwidth);
|
||||
// Log.e("网速和内存", "获取视频:" + resolution + " 丢包率:" + lossRate + " 带宽:" + googAvailableSendBandwidth);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -792,6 +794,7 @@ public class LiveRyAnchorActivity extends LiveActivity implements LiveFunctionCl
|
||||
mLiveRoomViewHolder.startAnchorLight();
|
||||
//初始化女神说
|
||||
mLiveRoomViewHolder.initAnchorSay();
|
||||
mLiveRoomViewHolder.setGiftWall(obj.getString("gift_wall_lighten_number"),obj.getString("gift_wall_lighten_total"));
|
||||
}
|
||||
if (mLiveAnchorViewHolder == null) {
|
||||
mLiveAnchorViewHolder = new LiveRyAnchorViewHolder(mContext, mContainer);
|
||||
@@ -1629,6 +1632,7 @@ public class LiveRyAnchorActivity extends LiveActivity implements LiveFunctionCl
|
||||
case DISCONNEXT_PK_TIME:
|
||||
if (mLivePushViewHolder != null) {
|
||||
mLivePushViewHolder.changeToBig();
|
||||
mLiveRyLinkMicPkPresenter.leaveDRRoom();
|
||||
}
|
||||
break;
|
||||
case AI_AUTOMATIC_SPEECH:
|
||||
@@ -1654,9 +1658,35 @@ public class LiveRyAnchorActivity extends LiveActivity implements LiveFunctionCl
|
||||
mLiveRoomViewHolder.blindBoxAllServerNotify(event.getAllServerNotifyEvent());
|
||||
}
|
||||
break;
|
||||
case GIFT_WALL:
|
||||
if (mLiveRoomViewHolder != null) {
|
||||
mLiveRoomViewHolder.showGiftWall(event.getUid(),event.isVoicePress(),event.getUname(),event.getAvatar());
|
||||
}
|
||||
break;
|
||||
case INPUT_DIALOG:
|
||||
LiveInputDialogFragment liveInputDialogFragment = new LiveInputDialogFragment();
|
||||
Bundle liveInputBundle = new Bundle();
|
||||
liveInputBundle.putString(Constants.LIVE_DANMU_PRICE, mDanmuPrice);
|
||||
liveInputBundle.putString(Constants.COIN_NAME, mCoinName);
|
||||
liveInputBundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
liveInputBundle.putString(Constants.LIVE_STREAM, mStream);
|
||||
liveInputBundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
if (event.getOlineUserlistModel() == null) {
|
||||
liveInputBundle.putString("TagUser", "");
|
||||
} else {
|
||||
liveInputBundle.putString("TagUser", GsonUtils.toJson(event.getOlineUserlistModel()));
|
||||
}
|
||||
liveInputDialogFragment.setArguments(liveInputBundle);
|
||||
liveInputDialogFragment.show(getSupportFragmentManager(), "LiveInputDialogFragment");
|
||||
break;
|
||||
}
|
||||
}
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void GiftWallIlluminateEvent(GiftWallIlluminateEvent event) {
|
||||
if (mLiveRoomViewHolder != null) {
|
||||
mLiveRoomViewHolder.setGiftWall(String.valueOf(event.getNewNumber()), String.valueOf(event.getMaxNumber()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查指定直播间连麦人数
|
||||
*
|
||||
|
||||
@@ -13,12 +13,11 @@ import com.yunbao.common.custom.CommonRefreshView;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.LiveShutUpAdapter;
|
||||
import com.yunbao.live.bean.LiveShutUpBean;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@@ -29,12 +29,11 @@ import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.StringUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.common.bean.LiveRoomTypeBean;
|
||||
import com.yunbao.live.dialog.LiveBeautyDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveRoomTypeDialogFragment;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.live.momo.GenerateTestUserSig;
|
||||
import com.yunbao.live.momo.TencentTRTCBeautyManager;
|
||||
import com.yunbao.live.utils.TRTCBaseActivity;
|
||||
|
||||
@@ -27,8 +27,8 @@ import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.SystemChatMessageAdapter;
|
||||
import com.yunbao.live.bean.ImUserBean;
|
||||
import com.yunbao.live.event.RecommendLiveRoomEvent;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
|
||||
@@ -39,10 +39,9 @@ import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.dialog.LiveUserDialogFragment;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
@@ -28,6 +28,7 @@ import android.widget.TextView;
|
||||
import androidx.annotation.RequiresApi;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.opensource.svgaplayer.SVGACallback;
|
||||
import com.opensource.svgaplayer.SVGADrawable;
|
||||
import com.opensource.svgaplayer.SVGAImageView;
|
||||
@@ -36,18 +37,24 @@ import com.opensource.svgaplayer.SVGAVideoEntity;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.activity.AbsActivity;
|
||||
import com.yunbao.common.bean.LiveBean;
|
||||
import com.yunbao.common.event.JavascriptInterfaceEvent;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.JavascriptInterfaceUtils;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.MicStatusManager;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.common.event.LiveRoomChangeEvent;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
import com.yunbao.common.utils.LiveRoomCheckLivePresenter;
|
||||
import com.yunbao.share.ui.InvitePopDialog;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
@@ -216,7 +223,7 @@ public class ZhuangBanActivity extends AbsActivity {
|
||||
intent.setData(MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
|
||||
}
|
||||
intent.setType("image/*");
|
||||
startActivityForResult(Intent.createChooser(intent,mContext.getString(R.string.choose_flie)), CHOOSE);
|
||||
startActivityForResult(Intent.createChooser(intent, mContext.getString(R.string.choose_flie)), CHOOSE);
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
@@ -296,7 +303,7 @@ public class ZhuangBanActivity extends AbsActivity {
|
||||
Intent intent = new Intent(context, ZhuangBanActivity.class);
|
||||
Log.i("tag", url);
|
||||
intent.putExtra(Constants.URL, url);
|
||||
if (url.contains("Noble/index.html")||url.contains("RongYuQiang")) {
|
||||
if (url.contains("Noble/index.html") || url.contains("RongYuQiang")) {
|
||||
intent.putExtra("title", "");
|
||||
}
|
||||
context.startActivity(intent);
|
||||
@@ -370,12 +377,50 @@ public class ZhuangBanActivity extends AbsActivity {
|
||||
} catch (MalformedURLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}else if (event.getMethod().equals("androidInviteShare")) {
|
||||
} else if (event.getMethod().equals("androidInviteShare")) {
|
||||
new InvitePopDialog(mContext)
|
||||
.setUrl(event.getData())
|
||||
.showDialog();
|
||||
} else if (TextUtils.equals(event.getMethod(), "androidMethodLookToLive")) {
|
||||
//看直播
|
||||
gotoLive(event.getLiveId());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void gotoLive(final String live_id) {
|
||||
|
||||
LiveHttpUtil.getLiveInfo(live_id, new HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 0 && info.length > 0) {
|
||||
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
|
||||
new LiveRoomCheckLivePresenter(mContext, liveBean.getUid(), liveBean.getStream(), new LiveRoomCheckLivePresenter.NewActionListener() {
|
||||
@Override
|
||||
public void onLiveRoomChanged(String liveUid, String stream, int liveType, String liveTypeVal, String liveSdk) {
|
||||
if (liveBean == null) {
|
||||
return;
|
||||
}
|
||||
if (MicStatusManager.getInstance().isMic(liveUid)) {
|
||||
MicStatusManager.getInstance().showDownMicDialog(mContext);
|
||||
return;
|
||||
}
|
||||
RouteUtil.forwardLiveAudienceActivity(liveBean, liveType, Integer.parseInt(liveSdk), Integer.parseInt(liveTypeVal));
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCheckError(String contextError) {
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
RouteUtil.forwardUserHome(mContext, live_id, 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,8 +16,8 @@ import java.util.List;
|
||||
|
||||
public class CodexAdapter extends RecyclerView.Adapter {
|
||||
private List<GiftGuideModel> giftGuideModels = new ArrayList<>();
|
||||
private boolean history;
|
||||
private String mStream, mLiveUid;
|
||||
private boolean history,sbWy;
|
||||
private String mStream, mLiveUid,toUid;
|
||||
@NonNull
|
||||
@Override
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
@@ -28,7 +28,7 @@ public class CodexAdapter extends RecyclerView.Adapter {
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
||||
CodexViewHolder codexViewHolder = (CodexViewHolder) holder;
|
||||
codexViewHolder.showData(giftGuideModels.get(position), history,mStream,mLiveUid);
|
||||
codexViewHolder.showData(giftGuideModels.get(position), history,mStream,mLiveUid,toUid,sbWy);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -36,10 +36,12 @@ public class CodexAdapter extends RecyclerView.Adapter {
|
||||
return giftGuideModels.size();
|
||||
}
|
||||
|
||||
public void addAllData(List<GiftGuideModel> mGiftWall, boolean history, String mStream, String mLiveUid) {
|
||||
public void addAllData(List<GiftGuideModel> mGiftWall, boolean history, String mStream, String mLiveUid, String toUid, boolean sbWy) {
|
||||
this.history = history;
|
||||
this.mStream = mStream;
|
||||
this.mLiveUid = mLiveUid;
|
||||
this.toUid = toUid;
|
||||
this.sbWy = sbWy;
|
||||
giftGuideModels.clear();
|
||||
giftGuideModels.addAll(mGiftWall);
|
||||
notifyDataSetChanged();
|
||||
|
||||
@@ -16,6 +16,8 @@ import java.util.List;
|
||||
|
||||
public class CodexItemAdapter extends RecyclerView.Adapter {
|
||||
private List<GiftWallModel> giftData = new ArrayList<>();
|
||||
private String toUid, mLiveUid;
|
||||
private boolean sbWy;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
@@ -27,7 +29,7 @@ public class CodexItemAdapter extends RecyclerView.Adapter {
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
||||
CodexItemViewHolder codexItemViewHolder = (CodexItemViewHolder) holder;
|
||||
codexItemViewHolder.showData(giftData.get(position));
|
||||
codexItemViewHolder.showData(giftData.get(position), toUid, mLiveUid, sbWy);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -35,7 +37,10 @@ public class CodexItemAdapter extends RecyclerView.Adapter {
|
||||
return giftData.size();
|
||||
}
|
||||
|
||||
public void addAllData(List<GiftWallModel> mGiftWall) {
|
||||
public void addAllData(List<GiftWallModel> mGiftWall, String toUid, String mLiveUid, boolean sbWy) {
|
||||
this.toUid = toUid;
|
||||
this.mLiveUid = mLiveUid;
|
||||
this.sbWy = sbWy;
|
||||
giftData.clear();
|
||||
giftData.addAll(mGiftWall);
|
||||
notifyDataSetChanged();
|
||||
|
||||
@@ -20,7 +20,7 @@ import com.yunbao.common.http.live.LiveNetManager;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveRyAnchorActivity;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.widget.LinearLayoutCompat;
|
||||
import androidx.recyclerview.widget.GridLayoutManager;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
@@ -49,6 +50,7 @@ import com.yunbao.common.manager.IMLoginManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.StringUtil;
|
||||
import com.yunbao.common.views.weight.ClipPathCircleImage;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||
@@ -205,7 +207,7 @@ public class LiveChatAdapter extends RecyclerView.Adapter {
|
||||
View v_chat_active_close;
|
||||
RecyclerView rv_chat_active;
|
||||
ImageView img_zg_img, btnAttention, textLeave;
|
||||
FrameLayout attentionLayout;
|
||||
LinearLayoutCompat attentionLayout;
|
||||
ClipPathCircleImage clipImage2;
|
||||
|
||||
public Vh(View itemView) {
|
||||
@@ -213,7 +215,7 @@ public class LiveChatAdapter extends RecyclerView.Adapter {
|
||||
mBg = (LinearLayout) itemView.findViewById(R.id.bg);
|
||||
mTextView = (TextView) itemView.findViewById(R.id.text_txt);
|
||||
textTxt2 = (TextView) itemView.findViewById(R.id.text_txt2);
|
||||
attentionLayout = (FrameLayout) itemView.findViewById(R.id.attention_layout);
|
||||
attentionLayout = (LinearLayoutCompat) itemView.findViewById(R.id.attention_layout);
|
||||
clipImage2 = (ClipPathCircleImage) itemView.findViewById(R.id.clip_image2);
|
||||
itemView.setOnClickListener(mOnClickListener);
|
||||
|
||||
@@ -499,6 +501,9 @@ public class LiveChatAdapter extends RecyclerView.Adapter {
|
||||
}
|
||||
} else if (bean.getType() == SYSTEM3_COLOR) {
|
||||
mTextView.setText(Html.fromHtml(bean.getContent()));
|
||||
if (!StringUtil.isEmpty(bean.getBubble())) {
|
||||
new LoadDian9TuUtil().loadDian9Tu(mContext, mBg, bean.getBubble(), 1);
|
||||
}
|
||||
} else {
|
||||
if (bean.getBubble() != null && !bean.getBubble().equals("")) {
|
||||
//加载.9图聊天气泡
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
package com.yunbao.live.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.yunbao.common.bean.FansGroupGiftPackInfo;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.live.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LiveFansGroupBuyAdapter extends RecyclerView.Adapter<LiveFansGroupBuyAdapter.ViewHolder> {
|
||||
Context mContext;
|
||||
List<FansGroupGiftPackInfo.Gift> list = new ArrayList<>();
|
||||
|
||||
public LiveFansGroupBuyAdapter(Context mContext) {
|
||||
this.mContext = mContext;
|
||||
}
|
||||
|
||||
public void setList(List<FansGroupGiftPackInfo.Gift> list) {
|
||||
this.list.clear();
|
||||
this.list = list;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
return new ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_fans_group_buy_list, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
|
||||
holder.setData(list.get(position));
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return list.size();
|
||||
}
|
||||
|
||||
public class ViewHolder extends RecyclerView.ViewHolder {
|
||||
private ImageView giftIcon;
|
||||
private TextView day;
|
||||
private TextView title;
|
||||
private TextView introduce;
|
||||
private ImageView diamondIcon;
|
||||
|
||||
public ViewHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
giftIcon = itemView.findViewById(R.id.giftIcon);
|
||||
day = itemView.findViewById(R.id.day);
|
||||
title = itemView.findViewById(R.id.title);
|
||||
introduce = itemView.findViewById(R.id.introduce);
|
||||
diamondIcon = itemView.findViewById(R.id.diamondIcon);
|
||||
}
|
||||
|
||||
public void setData(FansGroupGiftPackInfo.Gift gift) {
|
||||
title.setText(gift.getGiftName());
|
||||
introduce.setText(gift.getNeedCoin());
|
||||
if (gift.getRestrict() > 0) {
|
||||
day.setText(gift.getRestrict() + mContext.getString(R.string.bonus_day));
|
||||
day.setVisibility(View.VISIBLE);
|
||||
}else{
|
||||
day.setVisibility(View.GONE);
|
||||
}
|
||||
try {
|
||||
int i = Integer.parseInt(gift.getNeedCoin());
|
||||
diamondIcon.setVisibility(View.VISIBLE);
|
||||
} catch (Exception e) {
|
||||
diamondIcon.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
ImgLoader.display(mContext, gift.getGiftIcon(), giftIcon);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package com.yunbao.live.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.yunbao.common.bean.FansGroupGiftPack;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
import com.yunbao.live.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LiveFansGroupSendGiftAdapter extends RecyclerView.Adapter<LiveFansGroupSendGiftAdapter.ViewHolder> {
|
||||
Context mContext;
|
||||
List<FansGroupGiftPack> list = new ArrayList<>();
|
||||
private OnItemClickListener<FansGroupGiftPack> onItemClickListener;
|
||||
|
||||
|
||||
public LiveFansGroupSendGiftAdapter(Context mContext) {
|
||||
this.mContext = mContext;
|
||||
}
|
||||
|
||||
public void setList(List<FansGroupGiftPack> list) {
|
||||
this.list.clear();
|
||||
this.list = list;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public void setOnItemClickListener(OnItemClickListener<FansGroupGiftPack> onItemClickListener) {
|
||||
this.onItemClickListener = onItemClickListener;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public LiveFansGroupSendGiftAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
return new LiveFansGroupSendGiftAdapter.ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_fans_group_package_list, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull LiveFansGroupSendGiftAdapter.ViewHolder holder, int position) {
|
||||
holder.setData(list.get(position));
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return list.size();
|
||||
}
|
||||
|
||||
|
||||
public class ViewHolder extends RecyclerView.ViewHolder {
|
||||
private ImageView giftIcon;
|
||||
private TextView day;
|
||||
private TextView title;
|
||||
private TextView send;
|
||||
|
||||
public ViewHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
giftIcon = itemView.findViewById(R.id.giftIcon);
|
||||
day = itemView.findViewById(R.id.day);
|
||||
title = itemView.findViewById(R.id.title);
|
||||
send = itemView.findViewById(R.id.send);
|
||||
}
|
||||
|
||||
public void setData(FansGroupGiftPack pack) {
|
||||
if (pack.getQuantity() > 0) {
|
||||
title.setText(pack.getGiftName()+" *"+pack.getQuantity());
|
||||
} else {
|
||||
title.setText(pack.getGiftName());
|
||||
}
|
||||
ImgLoader.display(mContext, pack.getIcon(), giftIcon);
|
||||
ViewClicksAntiShake.clicksAntiShake(send, () -> {
|
||||
if (onItemClickListener != null) {
|
||||
onItemClickListener.onItemClick(pack, 0);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,6 +17,7 @@ import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.http.live.LiveNetManager;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.views.weight.MarqueeTextView;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.dialog.LiveUserAnchorMailBoxWebInfoPopDialog;
|
||||
|
||||
@@ -71,7 +72,7 @@ public class LiveUserAnchorMailBoxAdapter extends RecyclerView.Adapter<LiveUserA
|
||||
public class MailBoxViewHolder extends RecyclerView.ViewHolder {
|
||||
TextView topText;
|
||||
TextView userName;
|
||||
TextView tipText;
|
||||
MarqueeTextView tipText;
|
||||
View del;
|
||||
|
||||
public MailBoxViewHolder(@NonNull View itemView) {
|
||||
|
||||
@@ -35,11 +35,11 @@ public class CoinModel extends BaseModel {
|
||||
public String getCoin() {
|
||||
long coinMoney = Long.parseLong(coin);
|
||||
if (999999999 < coinMoney && coinMoney <= 999999999999L) {
|
||||
coin = coin.substring(0, coin.length() - 2);
|
||||
coin = coin.substring(0, coin.length() - 3);
|
||||
coin = coin + "k";
|
||||
}
|
||||
if (999999999999L < coinMoney && coinMoney <= 999999999999999L) {
|
||||
coin = coin.substring(0, coin.length() - 2);
|
||||
coin = coin.substring(0, coin.length() - 6);
|
||||
coin = coin + "M";
|
||||
}
|
||||
return coin;
|
||||
@@ -53,11 +53,11 @@ public class CoinModel extends BaseModel {
|
||||
public String getGold() {
|
||||
long goldMoney = Long.parseLong(gold);
|
||||
if (999999999 < goldMoney && goldMoney <= 999999999999L) {
|
||||
gold = gold.substring(0, gold.length() - 2);
|
||||
gold = gold.substring(0, gold.length() - 3);
|
||||
gold = gold + "k";
|
||||
}
|
||||
if (999999999999L < goldMoney && goldMoney <= 999999999999999L) {
|
||||
gold = gold.substring(0, gold.length() - 2);
|
||||
gold = gold.substring(0, gold.length() - 6);
|
||||
gold = gold + "M";
|
||||
}
|
||||
return gold;
|
||||
|
||||
@@ -15,6 +15,7 @@ public class LiveDanMuBean {
|
||||
private String userNiceName;
|
||||
private String avatar;
|
||||
private String content;
|
||||
private int fensLevel;
|
||||
|
||||
public String getUid() {
|
||||
return uid;
|
||||
@@ -64,4 +65,12 @@ public class LiveDanMuBean {
|
||||
public void setContent(String content) {
|
||||
this.content = content;
|
||||
}
|
||||
|
||||
public int getFensLevel() {
|
||||
return fensLevel;
|
||||
}
|
||||
|
||||
public void setFensLevel(int fensLevel) {
|
||||
this.fensLevel = fensLevel;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
import com.yunbao.live.activity.LiveAudienceActivity;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
|
||||
@@ -24,16 +24,18 @@ import org.greenrobot.eventbus.ThreadMode;
|
||||
import java.util.List;
|
||||
|
||||
public class CodexDialog extends BottomPopupView {
|
||||
private String mStream, mLiveUid;
|
||||
private String mStream, mLiveUid, toUid;
|
||||
private RecyclerView liveCodex;
|
||||
private CodexAdapter codexAdapter;
|
||||
private boolean history;
|
||||
private boolean history,sbWy;
|
||||
|
||||
public CodexDialog(@NonNull Context context, String mStream, String mLiveUid, boolean history) {
|
||||
public CodexDialog(@NonNull Context context, String mStream, String mLiveUid, String toUid, boolean history,boolean sbWy) {
|
||||
super(context);
|
||||
this.mLiveUid = mLiveUid;
|
||||
this.mStream = mStream;
|
||||
this.history = history;
|
||||
this.toUid = toUid;
|
||||
this.sbWy = sbWy;
|
||||
}
|
||||
|
||||
// 返回自定义弹窗的布局
|
||||
@@ -54,10 +56,10 @@ public class CodexDialog extends BottomPopupView {
|
||||
private void initDate() {
|
||||
if (history) {
|
||||
LiveNetManager.get(getContext()).
|
||||
getGiftGuideHistory(mLiveUid, new HttpCallback<List<GiftGuideModel>>() {
|
||||
getGiftGuideHistory(toUid,mLiveUid, new HttpCallback<List<GiftGuideModel>>() {
|
||||
@Override
|
||||
public void onSuccess(List<GiftGuideModel> data) {
|
||||
codexAdapter.addAllData(data,history,mStream,mLiveUid);
|
||||
codexAdapter.addAllData(data,history,mStream,mLiveUid,toUid,sbWy);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -67,10 +69,10 @@ public class CodexDialog extends BottomPopupView {
|
||||
});
|
||||
} else {
|
||||
LiveNetManager.get(getContext()).
|
||||
getGiftGuide(mLiveUid, new HttpCallback<List<GiftGuideModel>>() {
|
||||
getGiftGuide(mLiveUid, toUid,new HttpCallback<List<GiftGuideModel>>() {
|
||||
@Override
|
||||
public void onSuccess(List<GiftGuideModel> data) {
|
||||
codexAdapter.addAllData(data,history,mStream,mLiveUid);
|
||||
codexAdapter.addAllData(data,history,mStream,mLiveUid,toUid,sbWy);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,7 +31,7 @@ import com.yunbao.common.utils.WordsTypeUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.FreePkRecyclerAdapter;
|
||||
import com.yunbao.live.bean.LivePkBean;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
|
||||
@@ -2,14 +2,9 @@ package com.yunbao.live.dialog;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.ColorDrawable;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.ViewParent;
|
||||
import android.view.inputmethod.InputMethodManager;
|
||||
import android.widget.PopupWindow;
|
||||
import android.widget.RadioButton;
|
||||
import android.widget.RadioGroup;
|
||||
import android.widget.TextView;
|
||||
@@ -31,7 +26,7 @@ import com.yunbao.live.adapter.GiftTopAdapter;
|
||||
import com.yunbao.live.adapter.LiveGiftPagerAdapter;
|
||||
import com.yunbao.live.adapter.LiveGiftPagerAdapter.ActionListener;
|
||||
import com.yunbao.live.bean.GiftTopBean;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -12,10 +12,9 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.http.LiveHttpConsts;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
import com.yunbao.common.http.LiveHttpConsts;
|
||||
import com.yunbao.common.http.LiveHttpUtil;
|
||||
|
||||
/**
|
||||
* Created by cxf on 2019/4/30.
|
||||
|
||||
@@ -21,14 +21,10 @@ import com.yunbao.common.event.LiveGiftDialogEvent;
|
||||
import com.yunbao.common.fragment.AllServiceChampionFragment;
|
||||
import com.yunbao.common.fragment.GiftWithoutWallFragment;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.CommonHttpUtil;
|
||||
import com.yunbao.common.interfaces.CommonCallback;
|
||||
import com.yunbao.common.manager.IMLoginManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
import com.yunbao.live.event.LiveAudienceEvent;
|
||||
import com.yunbao.live.views.GiftAlreadyWallFragment;
|
||||
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
@@ -43,13 +39,13 @@ import java.util.List;
|
||||
public class GiftWallDialog extends AbsDialogFragment {
|
||||
private LinearLayout layoutLitIcon, layoutUnlitIcon, layoutAllServiceChampion;
|
||||
private TextView textLitIcon, textUnlitIcon, textAllServiceChampion, anchorName, regularBubble;
|
||||
private View viewAllServiceChampion, viewUnlitIcon, viewLitIcon, attention;
|
||||
private View viewAllServiceChampion, viewUnlitIcon, viewLitIcon;
|
||||
private RoundedImageView avatar;
|
||||
private List<TextView> tabText = new ArrayList<>();
|
||||
private List<View> tabView = new ArrayList<>();
|
||||
private String mStream, mAnchorName, mLiveUid, mAvatarUrl, toUid;
|
||||
private int isAttention = 0;//是否关注 0=没关注,
|
||||
private boolean isLive;//是否正在直播
|
||||
private boolean isLive, sbWy;//是否正在直播
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(Bundle savedInstanceState) {
|
||||
@@ -70,7 +66,6 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
viewUnlitIcon = mRootView.findViewById(R.id.view_unlit_icon);
|
||||
viewLitIcon = mRootView.findViewById(R.id.view_lit_icon);
|
||||
avatar = mRootView.findViewById(R.id.avatar);
|
||||
attention = mRootView.findViewById(R.id.attention);
|
||||
anchorName = mRootView.findViewById(R.id.anchor_name);
|
||||
regularBubble = mRootView.findViewById(R.id.regular_bubble);
|
||||
tabText.add(textLitIcon);
|
||||
@@ -83,7 +78,7 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
ViewClicksAntiShake.clicksAntiShake(layoutLitIcon, () -> {
|
||||
selectTab(textLitIcon, viewLitIcon);
|
||||
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, toUid));
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, toUid, isLive, sbWy));
|
||||
transaction.commit();
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(layoutUnlitIcon, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@@ -106,23 +101,7 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
transaction.commit();
|
||||
}
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(attention, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
CommonHttpUtil.setAttention(mLiveUid, new CommonCallback<Integer>() {
|
||||
@Override
|
||||
public void callback(Integer isAttention) {
|
||||
if (isAttention == 1) {
|
||||
LiveActivity.sendSystemMessage(IMLoginManager.get(getContext()).getUserInfo().getUserNicename()
|
||||
+ getActivity().getString(R.string.live_follow_anchor));
|
||||
attention.setVisibility(View.GONE);
|
||||
Bus.get().post(new LiveAudienceEvent()
|
||||
.setType(LiveAudienceEvent.LiveAudienceType.IS_ATTENTION).setLiveType(isAttention));
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
ViewClicksAntiShake.clicksAntiShake(regularBubble, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
@@ -136,7 +115,7 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
public void onViewClicks() {
|
||||
new XPopup.Builder(getContext())
|
||||
.enableDrag(false)
|
||||
.asCustom(new CodexDialog(getContext(), mStream, mLiveUid, false))
|
||||
.asCustom(new CodexDialog(getContext(), mStream, mLiveUid, toUid, false, sbWy))
|
||||
.show();
|
||||
}
|
||||
});
|
||||
@@ -145,10 +124,28 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
public void onViewClicks() {
|
||||
new XPopup.Builder(getContext())
|
||||
.enableDrag(false)
|
||||
.asCustom(new MedalAchievementPopup(getContext(), isLive, toUid))
|
||||
.asCustom(new MedalAchievementPopup(getContext(), isLive, toUid, mLiveUid))
|
||||
.show();
|
||||
}
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(avatar, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
forwardHomePage();
|
||||
}
|
||||
});
|
||||
ViewClicksAntiShake.clicksAntiShake(anchorName, new ViewClicksAntiShake.ViewClicksCallBack() {
|
||||
@Override
|
||||
public void onViewClicks() {
|
||||
forwardHomePage();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void forwardHomePage() {
|
||||
dismiss();
|
||||
RouteUtil.forwardUserHome(mContext, toUid, false, mLiveUid, 0);
|
||||
}
|
||||
|
||||
private void initDate() {
|
||||
@@ -163,12 +160,17 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
toUid = bundle.getString("toUid");
|
||||
isAttention = bundle.getInt("isAttention");
|
||||
isLive = bundle.getBoolean("isLive");
|
||||
sbWy = bundle.getBoolean("SBW");
|
||||
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, toUid));
|
||||
transaction.replace(R.id.context_layout_gift, GiftAlreadyWallFragment.newInstance(mStream, mLiveUid, toUid, isLive, sbWy));
|
||||
transaction.commit();
|
||||
ImgLoader.display(getContext(), mAvatarUrl, avatar);
|
||||
anchorName.setText(mAnchorName);
|
||||
attention.setVisibility(isAttention == 0 ? View.VISIBLE : View.GONE);
|
||||
if (isLive) {
|
||||
textLitIcon.setText(getContext().getString(R.string.lit_icon));
|
||||
} else {
|
||||
textLitIcon.setText(getContext().getString(R.string.been_sent));
|
||||
}
|
||||
}
|
||||
|
||||
private void selectTab(TextView textView, View tab) {
|
||||
@@ -224,7 +226,13 @@ public class GiftWallDialog extends AbsDialogFragment {
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onGiftWallItemEvent(GiftWallItemEvent event) {
|
||||
new XPopup.Builder(getActivity())
|
||||
.asCustom(new GiftWallItemPopup(getActivity(), event.getGiftWallModel(), event.isUnlit(), mLiveUid, mStream))
|
||||
.asCustom(new GiftWallItemPopup(getActivity(),
|
||||
event.getGiftWallModel(),
|
||||
event.isUnlit(),
|
||||
mLiveUid,
|
||||
toUid,
|
||||
mStream,
|
||||
sbWy))
|
||||
.show();
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@ package com.yunbao.live.dialog;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.text.TextUtils;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
@@ -9,9 +11,11 @@ import androidx.annotation.NonNull;
|
||||
import androidx.cardview.widget.CardView;
|
||||
|
||||
import com.lxj.xpopup.core.CenterPopupView;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.R;
|
||||
import com.yunbao.common.bean.GiftWallGiftDetail;
|
||||
import com.yunbao.common.bean.GiftWallModel;
|
||||
import com.yunbao.common.event.LiveGiftDialogEvent;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.http.live.LiveNetManager;
|
||||
@@ -19,7 +23,6 @@ import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
import com.yunbao.live.event.LiveAudienceEvent;
|
||||
import com.yunbao.common.event.LiveGiftDialogEvent;
|
||||
|
||||
public class GiftWallItemPopup extends CenterPopupView {
|
||||
private CardView layout;
|
||||
@@ -27,15 +30,21 @@ public class GiftWallItemPopup extends CenterPopupView {
|
||||
private TextView price, giftDetailsBtn, distanceNaming, vacantPositionAwaits, giftDetails, vacantPosition;
|
||||
private GiftWallModel giftWallModel;
|
||||
private boolean unlit;
|
||||
private String mLiveUid, mStream;
|
||||
private String mLiveUid, mStream, toUid;
|
||||
private boolean isAnchor = false, sbWy;
|
||||
|
||||
public GiftWallItemPopup(@NonNull Context context, GiftWallModel giftWallModel,
|
||||
boolean unlit, String mLiveUid, String mStream) {
|
||||
boolean unlit, String mLiveUid, String toUid, String mStream, boolean sbWy) {
|
||||
super(context);
|
||||
this.giftWallModel = giftWallModel;
|
||||
this.unlit = unlit;
|
||||
this.mLiveUid = mLiveUid;
|
||||
this.toUid = toUid;
|
||||
this.mStream = mStream;
|
||||
this.sbWy = sbWy;
|
||||
if (this.mLiveUid.equals(CommonAppConfig.getInstance().getUid())) {
|
||||
isAnchor = true;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -60,6 +69,16 @@ public class GiftWallItemPopup extends CenterPopupView {
|
||||
} else {
|
||||
giftDetailsBtn.setText(getContext().getText(R.string.instant_light));
|
||||
}
|
||||
|
||||
if (sbWy && TextUtils.equals(mLiveUid, toUid)) {
|
||||
giftDetailsBtn.setBackgroundResource(R.drawable.background_skip_button);
|
||||
giftDetailsBtn.setEnabled(true);
|
||||
giftDetailsBtn.setTextColor(Color.parseColor("#F16D00"));
|
||||
} else {
|
||||
giftDetailsBtn.setBackgroundResource(R.drawable.background_skip_unselect_button);
|
||||
giftDetailsBtn.setEnabled(false);
|
||||
giftDetailsBtn.setTextColor(Color.parseColor("#F2F2F2"));
|
||||
}
|
||||
ImgLoader.display(getContext(), giftWallModel.getGifticon(), giftImg);
|
||||
giftDetails.setText(giftWallModel.getGiftname());
|
||||
price.setText(giftWallModel.getNeedcoin());
|
||||
@@ -81,7 +100,7 @@ public class GiftWallItemPopup extends CenterPopupView {
|
||||
|
||||
public void loadData() {
|
||||
LiveNetManager.get(getContext()).
|
||||
giftDetail(mLiveUid, String.valueOf(giftDetails.getId()), new HttpCallback<GiftWallGiftDetail>() {
|
||||
giftDetail(mLiveUid, String.valueOf(giftWallModel.getId()), new HttpCallback<GiftWallGiftDetail>() {
|
||||
@Override
|
||||
public void onSuccess(GiftWallGiftDetail data) {
|
||||
if (data.getUid() == 0) {
|
||||
@@ -93,7 +112,7 @@ public class GiftWallItemPopup extends CenterPopupView {
|
||||
vacantPositionAwaits.setText(data.getUserNicename());
|
||||
vacantPosition.setText(giftWallModel.getGiftname());
|
||||
}
|
||||
if (data.getNamingCoin() == 0) {
|
||||
if (TextUtils.isEmpty(data.getNamingCoin()) || TextUtils.equals(data.getNamingCoin(), "0")) {
|
||||
distanceNaming.setVisibility(GONE);
|
||||
} else {
|
||||
distanceNaming.setVisibility(VISIBLE);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user