fix bugs.
This commit is contained in:
@@ -158,10 +158,10 @@ public class GiftTwoAdapter extends BaseAdapter {
|
||||
viewHolder.ivDownOn.setVisibility(View.GONE);
|
||||
viewHolder.cl_iv_down_on.setBackgroundResource(0);
|
||||
}
|
||||
if (giftModel.getNum()==0){
|
||||
if (giftModel.getNum().isEmpty()){
|
||||
viewHolder.tv_gift_num.setVisibility(View.GONE);
|
||||
}
|
||||
viewHolder.tv_gift_num.setText(String.format("x%s", (giftModel.getNum()!=0?giftModel.getNum():"")));
|
||||
viewHolder.tv_gift_num.setText(String.format("x%s", giftModel.getNum()));
|
||||
|
||||
|
||||
//设置
|
||||
|
||||
@@ -293,7 +293,7 @@ public class GiftTwoDetailsFragment extends BaseMvpFragment<RewardGiftPresenter,
|
||||
roonGiftModel.setGift_name(giftModel.getGift_name());
|
||||
roonGiftModel.setGift_price(giftModel.getGift_price());
|
||||
roonGiftModel.setBase_image(giftModel.getBase_image());
|
||||
roonGiftModel.setNum(Integer.parseInt(giftModel.getNum()));
|
||||
roonGiftModel.setNum(giftModel.getNum());
|
||||
if (giftModel.getGift_id().equals(id)) {
|
||||
if (!giftModel.isChecked()) {
|
||||
EventBus.getDefault().post(new GiftUserRefreshEvent(true, event.type, roonGiftModel));
|
||||
@@ -316,7 +316,7 @@ public class GiftTwoDetailsFragment extends BaseMvpFragment<RewardGiftPresenter,
|
||||
roonGiftModel.setGift_name(giftModel.getGift_name());
|
||||
roonGiftModel.setGift_price(giftModel.getGift_price());
|
||||
roonGiftModel.setBase_image(giftModel.getBase_image());
|
||||
roonGiftModel.setNum(Integer.parseInt(giftModel.getNum()));
|
||||
roonGiftModel.setNum(giftModel.getNum());
|
||||
if (giftModel.getGift_id().equals(id)) {
|
||||
selGift = giftModel;
|
||||
if (!giftModel.isChecked()) {
|
||||
|
||||
@@ -32,12 +32,15 @@ import com.blankj.utilcode.util.LogUtils;
|
||||
import com.blankj.utilcode.util.ProcessUtils;
|
||||
import com.lahm.library.EasyProtectorLib;
|
||||
import com.lahm.library.EmulatorCheckCallback;
|
||||
import com.tencent.bugly.crashreport.CrashReport;
|
||||
import com.tencent.imsdk.v2.V2TIMAdvancedMsgListener;
|
||||
import com.tencent.imsdk.v2.V2TIMManager;
|
||||
import com.tencent.imsdk.v2.V2TIMMessage;
|
||||
import com.tencent.imsdk.v2.V2TIMMessageManager;
|
||||
import com.tencent.imsdk.v2.V2TIMMessageReceipt;
|
||||
import com.tencent.imsdk.v2.V2TIMValueCallback;
|
||||
import com.tencent.qcloud.tuicore.TUILogin;
|
||||
import com.tencent.qcloud.tuicore.interfaces.TUICallback;
|
||||
import com.xscm.moduleutil.bean.UserBean;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
import com.xscm.moduleutil.event.AppLifecycleEvent;
|
||||
@@ -52,20 +55,8 @@ import com.xscm.moduleutil.utils.CrashHandler;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
import com.xscm.moduleutil.utils.UtilConfig;
|
||||
import com.xscm.moduleutil.utils.config.EnvironmentEnum;
|
||||
import com.xscm.moduleutil.utils.config.EnvironmentPrefs;
|
||||
import com.xscm.moduleutil.utils.cos.CosUploadManager;
|
||||
import com.xscm.moduleutil.widget.CommonAppConfig;
|
||||
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
|
||||
import com.scwang.smartrefresh.layout.api.DefaultRefreshFooterCreator;
|
||||
import com.scwang.smartrefresh.layout.api.DefaultRefreshHeaderCreator;
|
||||
import com.scwang.smartrefresh.layout.api.RefreshFooter;
|
||||
import com.scwang.smartrefresh.layout.api.RefreshHeader;
|
||||
import com.scwang.smartrefresh.layout.api.RefreshLayout;
|
||||
import com.scwang.smartrefresh.layout.footer.ClassicsFooter;
|
||||
import com.scwang.smartrefresh.layout.header.ClassicsHeader;
|
||||
import com.tencent.bugly.crashreport.CrashReport;
|
||||
import com.tencent.qcloud.tuicore.TUILogin;
|
||||
import com.tencent.qcloud.tuicore.interfaces.TUICallback;
|
||||
|
||||
import org.eclipse.paho.client.mqttv3.MqttClient;
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
@@ -92,7 +83,7 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
private boolean mFront;//是否前台
|
||||
public String emulator = "0";
|
||||
@Getter
|
||||
private EnvironmentEnum currentEnvironment;
|
||||
public EnvironmentEnum currentEnvironment;
|
||||
public UserBean mUserBean;
|
||||
|
||||
public boolean isShow;
|
||||
@@ -147,21 +138,34 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
super.onCreate();
|
||||
sInstance = this;
|
||||
sMainThreadHandler = new Handler();
|
||||
EnvironmentPrefs prefs = new EnvironmentPrefs(this);
|
||||
// 添加内存优化配置
|
||||
optimizeMemorySettings();
|
||||
currentEnvironment = prefs.getSelectedEnvironment();
|
||||
initialization();
|
||||
|
||||
// EnvironmentPrefs prefs = new EnvironmentPrefs(this);
|
||||
// currentEnvironment = prefs.getSelectedEnvironment();
|
||||
|
||||
|
||||
registerActivityLifecycleCallbacks(this);
|
||||
|
||||
appStateListener = AppStateManager.getInstance();
|
||||
startListeningUnreadMessageCount();
|
||||
// 全局设置字体不缩放
|
||||
adjustFontScale(getResources().getConfiguration());
|
||||
|
||||
CrashHandler.init(this);
|
||||
|
||||
if (SpUtil.getShelf()!=0) {
|
||||
SpUtil.setShelf(1);
|
||||
}
|
||||
|
||||
//设置mqtt环境 false 测试环境 true 正式环境
|
||||
// ExternalResConstants.INSTANCE.setIS_MQTT_RELEASE(false);
|
||||
//设置http环境 false 测试环境 true 正式环境
|
||||
ExternalResConstants.INSTANCE.setIS_HTTP_RELEASE(true);
|
||||
currentEnvironment = ExternalResConstants.INSTANCE.HTTP_PATH();
|
||||
|
||||
|
||||
initialization();
|
||||
}
|
||||
|
||||
public void adjustFontScale(Configuration configuration) {
|
||||
@@ -446,7 +450,7 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
// startService(mqttServiceIntent);
|
||||
// }
|
||||
|
||||
mqttConnect=MqttConnect.getInstance(this,"tcp://1.13.181.248","android-"+ MqttClient.generateClientId());
|
||||
mqttConnect=MqttConnect.getInstance(this, currentEnvironment.getMqttUrl(),"android-"+ MqttClient.generateClientId());
|
||||
// mqttConnect=MqttConnect.getInstance(this,"tcp://1.13.101.98","android-"+ MqttClient.generateClientId());
|
||||
mqttConnect.mqttClient();
|
||||
|
||||
@@ -455,11 +459,8 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
startInitSdk();
|
||||
// 初始化(通常在Application或Activity的onCreate中)
|
||||
CosUploadManager.getInstance(CommonAppContext.getInstance());
|
||||
// 启动IM连接服务
|
||||
// IMServiceManager.getInstance().startIMService(this);
|
||||
}
|
||||
}
|
||||
// piaoPingManager = PiaoPingManager.getInstance(this);
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
if (!Settings.canDrawOverlays(this)) {
|
||||
@@ -525,8 +526,8 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
}
|
||||
|
||||
public void upMqtt(){
|
||||
if (mqttConnect==null){
|
||||
mqttConnect=MqttConnect.getInstance(this,"tcp://1.13.181.248","android-"+ MqttClient.generateClientId());
|
||||
if (mqttConnect == null){
|
||||
mqttConnect=MqttConnect.getInstance(this, currentEnvironment.getMqttUrl(),"android-"+ MqttClient.generateClientId());
|
||||
// mqttConnect=MqttConnect.getInstance(this,"tcp://1.13.101.98","android-"+ MqttClient.generateClientId());
|
||||
mqttConnect.mqttClient();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.xscm.moduleutil.base
|
||||
|
||||
import com.xscm.moduleutil.utils.config.EnvironmentEnum
|
||||
|
||||
|
||||
object ExternalResConstants {
|
||||
//================================================================================MQTT======================================================================================
|
||||
// var IS_MQTT_RELEASE = true
|
||||
// val MQTT_PATH_DEBUG = "tcp://1.13.181.248"
|
||||
// val MQTT_PATH_RELEASE = "tcp://1.13.101.98"
|
||||
//
|
||||
// fun MQTT_PATH(): String {
|
||||
// return if (IS_MQTT_RELEASE) {
|
||||
// MQTT_PATH_RELEASE
|
||||
// } else {
|
||||
// MQTT_PATH_DEBUG
|
||||
// }
|
||||
// }
|
||||
//================================================================================HTTP======================================================================================
|
||||
var IS_HTTP_RELEASE = true
|
||||
val HTTP_PATH_DEBUG:EnvironmentEnum = EnvironmentEnum.TEST
|
||||
val HTTP_PATH_RELEASE:EnvironmentEnum = EnvironmentEnum.PRODUCTION
|
||||
fun HTTP_PATH(): EnvironmentEnum {
|
||||
return if (IS_HTTP_RELEASE) {
|
||||
HTTP_PATH_RELEASE
|
||||
} else {
|
||||
HTTP_PATH_DEBUG
|
||||
}
|
||||
}
|
||||
//================================================================================END======================================================================================
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.xscm.moduleutil.base
|
||||
|
||||
/**
|
||||
* Created by xscm on 2020/7/23.
|
||||
* 描述:web url 常量
|
||||
*/
|
||||
object WebUrlConstants {
|
||||
val BASE_URL = CommonAppContext.getInstance().currentEnvironment.h5Url
|
||||
|
||||
/**青少年模式*/
|
||||
val WEB_ADOLESCENT_URL = BASE_URL + "/web/index.html#/pages/feedback/teenage?id=%s"
|
||||
|
||||
val WEB_SET_GROUP_URL = BASE_URL + "/web/index.html#/pages/union/setGroup?id=%s&guildId=%s"
|
||||
|
||||
/**举报*/
|
||||
val WEB_REPORT_URL =
|
||||
BASE_URL + "/web/index.html#/pages/feedback/report?id=%s&fromType=%d&fromId=%s"
|
||||
|
||||
/**规则*/
|
||||
val WEB_RULES_URL = BASE_URL + "/web/index.html#/pages/other/taskDesc"
|
||||
|
||||
/**道具商城*/
|
||||
val WEB_PROP_MALL_URL = BASE_URL + "/web/index.html#/pages/prop/propMall?id=%s"
|
||||
|
||||
/**公会*/
|
||||
val WEB_GUILD_URL = BASE_URL + "/web/index.html#/pages/union/index?id=%s"
|
||||
|
||||
/**等级*/
|
||||
val WEB_GRADE_URL = BASE_URL + "/web/index.html#/pages/other/grade?id=%s"
|
||||
|
||||
/**反馈*/
|
||||
val WEB_HELP_URL = BASE_URL + "/web/index.html#/pages/feedback/help?id=%s"
|
||||
|
||||
/**邀请*/
|
||||
val WEB_INVITATION_URL = BASE_URL + "/web/index.html#/pages/other/income?id=%s"
|
||||
|
||||
}
|
||||
@@ -30,7 +30,7 @@ public class RoonGiftModel {
|
||||
private boolean isChecked;
|
||||
private boolean isSelected;
|
||||
private boolean can_send_self;//是否能送自己
|
||||
private int num;//礼物数量
|
||||
private String num = "";//礼物数量
|
||||
private int activities_id;//4:盲盒 ;5:天空之境;
|
||||
private int gift_bag;//10:天空之境 11:岁月之城 12:时空之巅
|
||||
private int is_lock;//爵位礼物 0:不锁 1:锁
|
||||
|
||||
@@ -191,7 +191,8 @@ public class FirstChargeDialog extends BaseDialog<DialogFirstChargeBinding> {
|
||||
// mBinding.tvTitle2.setText(firstChargeGiftBean.getGift_bag().get(0).getTitle2());
|
||||
// mBinding.btn0.setText(firstChargeGiftBean.getGift_bag().get(0).getName());
|
||||
list.addAll(firstChargeGiftBean.getGift_bag().get(0).getGift_list());
|
||||
mBinding.tvTitle22.setText("充值"+firstChargeGiftBean.getGift_bag().get(0).getName()+"即可获得"+firstChargeGiftBean.getGift_bag().get(0).getTitle2()+"的道具或装扮");
|
||||
// mBinding.tvTitle22.setText("充值"+firstChargeGiftBean.getGift_bag().get(0).getName()+"即可获得"+firstChargeGiftBean.getGift_bag().get(0).getTitle2()+"的道具或装扮");
|
||||
mBinding.tvTitle22.setText(firstChargeGiftBean.getGift_bag().get(0).getTitle2());
|
||||
mBinding.bannerViewPager.create(baseListData(list, 4));
|
||||
|
||||
// mBinding.btn1.setText(firstChargeGiftBean.getGift_bag().get(1).getName());
|
||||
|
||||
@@ -10,4 +10,6 @@ public interface SoundLevelUpdateListener {
|
||||
void userJoined(int userId,int elapsd);
|
||||
|
||||
void userOffline(int userId,int reason);
|
||||
|
||||
void pkOffSide(int userId);
|
||||
}
|
||||
|
||||
@@ -382,6 +382,14 @@ public class AgoraManager {
|
||||
public void onRemoteAudioStateChanged(int uid, int state, int reason, int elapsed) {
|
||||
super.onRemoteAudioStateChanged(uid, state, reason, elapsed);
|
||||
LogUtils.e("onRemoteAudioStateChanged", "uid------>" + uid, "state------>" + state, "reason------>" + reason, "elapsed------>" + elapsed);
|
||||
if (state == 0){
|
||||
for (SoundLevelUpdateListener listener : soundLevelUpdateListeners) {
|
||||
if (listener != null) {
|
||||
// Pk 关闭远端推流
|
||||
listener.pkOffSide(uid);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1189,7 +1197,6 @@ public class AgoraManager {
|
||||
public void setMusicVolume(int volume) {
|
||||
if (rtcEngine != null) {
|
||||
rtcEngine.adjustRecordingSignalVolume(volume);//调整采集信号音量
|
||||
|
||||
// musicPlayer.adjustPublishSignalVolume(volume);//调节远端用户听到的音量。 参数是0-400
|
||||
}
|
||||
}
|
||||
|
||||
@@ -239,8 +239,24 @@ public class AgoraManagerEx {
|
||||
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 打开声音关闭声音
|
||||
*
|
||||
* @param b
|
||||
*/
|
||||
public void muteSpeaker(boolean b) {
|
||||
if (rtcEngineEx == null) {
|
||||
init(CommonAppContext.getInstance().getCurrentEnvironment().getSwSdkAppId());
|
||||
}
|
||||
if (rtcEngineEx != null) {
|
||||
rtcEngineEx.muteAllRemoteAudioStreamsEx(b, connection);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 检查rtcEngineEx对象是否已初始化
|
||||
public void muteAllRemoteAudioStreamsEx(boolean enabled) {
|
||||
// 调用rtcEngineEx的方法来控制所有远程音频流的开关状态
|
||||
if (rtcEngineEx == null) {
|
||||
init(CommonAppContext.getInstance().getCurrentEnvironment().getSwSdkAppId());
|
||||
}
|
||||
|
||||
@@ -235,7 +235,7 @@ public class ImageUtils {
|
||||
return;
|
||||
}
|
||||
}
|
||||
Glide.with(mImageView).load(path).error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).diskCacheStrategy(DiskCacheStrategy.ALL).into(mImageView);
|
||||
Glide.with(mImageView).load(path).diskCacheStrategy(DiskCacheStrategy.ALL).into(mImageView);
|
||||
}
|
||||
|
||||
public static void loadHeadCC(String path, ImageView mImageView, LinearLayout.LayoutParams params) {
|
||||
|
||||
@@ -58,18 +58,6 @@ public class MeHeadView extends ConstraintLayout {
|
||||
mIvFrame.setVisibility(VISIBLE);
|
||||
mIvFrame.setSource(framePicture, 1);
|
||||
}
|
||||
// if (!TextUtils.isEmpty(sex)) {
|
||||
// mIvSex.setVisibility(GONE);
|
||||
// if (sex.equals("1")){
|
||||
// mIvSex.setBackgroundResource(R.mipmap.nan);
|
||||
// }else {
|
||||
// mIvSex.setBackgroundResource(R.mipmap.nv);
|
||||
// }
|
||||
//
|
||||
// } else {
|
||||
// mIvSex.setVisibility(GONE);
|
||||
// }
|
||||
// ImageUtils.loadImageView(framePicture, mIvFrame);
|
||||
|
||||
if (nobilityImage!=null && !TextUtils.isEmpty(nobilityImage)){
|
||||
iv_frame_bg.setVisibility(VISIBLE);
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.xscm.moduleutil.utils.config;
|
||||
public enum EnvironmentEnum {
|
||||
// "https://vespa.qxyushen.top/",
|
||||
PRODUCTION(//生产环境
|
||||
"https://1.13.101.98/",
|
||||
"https://vespa.qxyushen.top/",
|
||||
"KvNmqZc+VMzO4CfGMd5zmG6w6OFwpFO/19TwXUWfHDOBgmnl9DgIuE+kbrjNNnxqhtP3pH7bBrnSaSeFtunr72q6sgpLsfuswcUroMvz2slaTBcNzCaLi+GSnM3gB/GdO47mwLdk+iYBTvPUOCIuT608Z29z09w+vPeUDoMCHJBGXu6uh7Nj6PtV1dfGoUvByk1ZF0WYVjIqKDcb3tXY4jonFh3XAWhzMy8xKwN6F2nuK2IcdIwaSPsvuMZmhatP6f9kOE+vnfweyCHS3RxiG474WIoZGJM8omrl3/pOVqE=",
|
||||
"https://oss-cn-beijing.aliyuncs.com/",
|
||||
"LTAI5tKgrfcFQxH46ZwWYgFW",
|
||||
@@ -13,11 +13,11 @@ public enum EnvironmentEnum {
|
||||
"wxc7681513be9f926b",
|
||||
1600096860,
|
||||
"3e8f3add448d4692bc1d04c75ffe801b",
|
||||
"tcp://81.70.45.221",
|
||||
"http://1.13.101.98/h5",
|
||||
"tcp://1.13.101.98",
|
||||
"https://vespa.qxyushen.top/h5",
|
||||
0),
|
||||
TEST(//测试环境
|
||||
"http://test.vespa.xscmmidi.site/",
|
||||
"https://test.vespa.qxyushen.top/",
|
||||
"6rdWuz058oq5OahdbFiGEybUcdahd12J83L34Uc7MrPIrxtFG+rXiwDvRcqNvjwbClbbmvMrmxKVkIysFByBsl0Qe9kqd2w8T/nhK5G6eXXlk2V9AjYCieIU+jRnjZBB+Cfechr6rCGJ2aeBARIsXcRPW7wm9WFK9euh5T+v6Pyte68yNaNdcYCll3+U4/uCEog7HygCnMIbAU+kqoPdmn2H+51YOHW+VsnsHd4w1+I3f8Tt0xLIXGM4GWnQueZ5GR46GTWiSYMy8dCIh9SPIMRyC91GosVcfGPMJSdcXqc=",
|
||||
"https://oss-cn-beijing.aliyuncs.com/",
|
||||
"LTAI5tKgrfcFQxH46ZwWYgFW",
|
||||
@@ -28,7 +28,7 @@ public enum EnvironmentEnum {
|
||||
1600096890,
|
||||
"02f7339ec98947deaeab173599891932",
|
||||
"tcp://1.13.181.248",
|
||||
"https://test.vespa.xscmmidi.site/h5",
|
||||
"https://test.vespa.qxyushen.top/h5",
|
||||
1);
|
||||
|
||||
private final String serverUrl;//服务器地址
|
||||
|
||||
@@ -351,6 +351,12 @@ public abstract class BaseWheatView extends ConstraintLayout implements IBaseWhe
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
if (String.valueOf(uid).equals(pitBean.getUser_id())) {
|
||||
mIvRipple.setVisibility(GONE);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@@ -263,6 +263,11 @@ public class RoomDefaultWheatView extends BaseWheatView {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unRegister(Object obj) {
|
||||
|
||||
|
||||
@@ -298,6 +298,11 @@ public class RoomFriendshipWheatView extends BaseWheatView {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
|
||||
// public void setOnlineStatus(UserOnlineStatusBean isOnline) {
|
||||
// if (pitBean.getUser_id() != null && !pitBean.getUser_id().equals("0") && !pitBean.getUser_id().isEmpty()) {
|
||||
// if (pitBean.getUser_id().equals(isOnline.getUser_id())) {
|
||||
|
||||
@@ -270,6 +270,11 @@ public class RoomKtvWheatView extends BaseWheatView {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unRegister(Object obj) {
|
||||
|
||||
|
||||
@@ -259,6 +259,11 @@ public class RoomMakeWheatView extends BaseWheatView {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
|
||||
public void setOnlineStatus(UserOnlineStatusBean isOnline) {
|
||||
if (pitBean.getUser_id() != null && !pitBean.getUser_id().equals("0") && !pitBean.getUser_id().isEmpty()) {
|
||||
if (pitBean.getUser_id().equals(isOnline.getUser_id())) {
|
||||
|
||||
@@ -290,6 +290,11 @@ public class RoomSingSongWheat2View extends BaseWheatView {
|
||||
// 暂无实现
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unRegister(Object obj) {
|
||||
|
||||
|
||||
@@ -281,4 +281,9 @@ public class RoomSingSongWheatView extends BaseWheatView {
|
||||
public void userOffline(int userId, int reason) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pkOffSide(int uid) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -98,13 +98,23 @@ class ShineTextView : AppCompatTextView {
|
||||
}
|
||||
}
|
||||
paint.shader = mLinearGradient
|
||||
}else {
|
||||
mLinearGradient = LinearGradient(
|
||||
0f,
|
||||
0f,
|
||||
0f,
|
||||
0f,
|
||||
intArrayOf(Color.TRANSPARENT,Color.TRANSPARENT),
|
||||
null,
|
||||
Shader.TileMode.CLAMP
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
override fun onDraw(canvas: Canvas) {
|
||||
super.onDraw(canvas)
|
||||
if (!isShine || !::mLinearGradient.isLateinit) return
|
||||
if (!isShine) return
|
||||
mTranslate += mViewWidth / (shineDuration / 50)
|
||||
if (mTranslate > 1.2 * mViewWidth) {
|
||||
mTranslate = -mViewWidth / 5
|
||||
|
||||
@@ -20,11 +20,9 @@
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_gift_pic"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="35dp"
|
||||
android:layout_marginLeft="5dp"
|
||||
android:layout_width="45dp"
|
||||
android:layout_height="45dp"
|
||||
android:layout_marginTop="5dp"
|
||||
android:layout_marginRight="5dp"
|
||||
android:src="@mipmap/default_image"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
@@ -51,7 +49,6 @@
|
||||
android:id="@+id/tv_gift_name"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="1dp"
|
||||
android:singleLine="true"
|
||||
android:text="甜蜜奶酪"
|
||||
android:textColor="@color/color_FF333333"
|
||||
@@ -63,8 +60,7 @@
|
||||
<TextView
|
||||
android:id="@+id/tv_gift_price"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="12dp"
|
||||
android:layout_marginTop="1dp"
|
||||
android:layout_height="10dp"
|
||||
android:text="1"
|
||||
android:drawableLeft="@mipmap/jinb"
|
||||
android:drawablePadding="@dimen/dp_3"
|
||||
@@ -80,14 +76,14 @@
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_number"
|
||||
android:layout_width="@dimen/dp_22"
|
||||
android:layout_height="@dimen/dp_9"
|
||||
android:layout_width="@dimen/dp_26"
|
||||
android:layout_height="@dimen/dp_12"
|
||||
android:background="@mipmap/text_bj"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="3dp"
|
||||
android:paddingRight="3dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="5sp"
|
||||
android:textSize="@dimen/sp_7"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="x100"/>
|
||||
|
||||
Reference in New Issue
Block a user