1.签约抱麦添加拒绝逻辑。
2.爵位不返回userInfo 逻辑容错。 3.礼物动画优化。
This commit is contained in:
@@ -161,7 +161,7 @@ public class CommonAppContext extends MultiDexApplication implements Applicatio
|
||||
//设置mqtt环境 false 测试环境 true 正式环境
|
||||
// ExternalResConstants.INSTANCE.setIS_MQTT_RELEASE(false);
|
||||
//设置http环境 false 测试环境 true 正式环境
|
||||
ExternalResConstants.INSTANCE.setIS_HTTP_RELEASE(true);
|
||||
ExternalResConstants.INSTANCE.setIS_HTTP_RELEASE(false);
|
||||
currentEnvironment = ExternalResConstants.INSTANCE.HTTP_PATH();
|
||||
|
||||
initialization();
|
||||
|
||||
@@ -148,7 +148,8 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
/// 延时到这个时间点
|
||||
public static final int QXRoomMessageTypeSignDelayText = 1093;
|
||||
|
||||
|
||||
/// 被签约者提示弹窗
|
||||
public static final int QXRoomMessageTypeSignTipText = 1094;
|
||||
private RoomMessageEvent emMessage;
|
||||
|
||||
private int custom = 0;
|
||||
|
||||
@@ -128,11 +128,6 @@ public class ConfirmDialog extends Dialog {
|
||||
}
|
||||
dismiss();
|
||||
});
|
||||
|
||||
// 倒计时逻辑
|
||||
if (isCountdownEnabled && countdownSeconds > 0) {
|
||||
startCountdown(btnNegative);
|
||||
}
|
||||
} else {
|
||||
// 隐藏取消按钮
|
||||
btnNegative.setVisibility(View.GONE);
|
||||
@@ -154,15 +149,6 @@ public class ConfirmDialog extends Dialog {
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(btnPositive, ColorManager.getInstance().getPrimaryColorInt(), 53);
|
||||
btnPositive.setTextColor(ColorManager.getInstance().getButtonColorInt());
|
||||
|
||||
// 找到根布局并应用动画
|
||||
|
||||
// if (rootView != null) {
|
||||
// Animation slideDown = AnimationUtils.loadAnimation(context, R.anim.slide_down);
|
||||
// Animation shake = AnimationUtils.loadAnimation(context, R.anim.shake);
|
||||
//
|
||||
// rootView.startAnimation(slideDown);
|
||||
// rootView.startAnimation(shake);
|
||||
// }
|
||||
}
|
||||
private boolean isCountdownCancelled = false; // 添加标志位
|
||||
private void startCountdown(Button btnNegative) {
|
||||
|
||||
@@ -905,4 +905,8 @@ public interface ApiServer {
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.POST_RE_SIGN)
|
||||
Call<BaseModel<String>> reSign(@Field("user_id") String user_id);
|
||||
|
||||
@FormUrlEncoded
|
||||
@POST(Constants.POST_SIGN_REFUSE)
|
||||
Call<BaseModel<String>> signRefuse(@Field("room_id") String room_id);
|
||||
}
|
||||
|
||||
@@ -4799,6 +4799,21 @@ public class RetrofitClient {
|
||||
});
|
||||
}
|
||||
|
||||
public void signRefuse(String roomId,BaseObserver<String> observer){
|
||||
sApiServer.signRefuse(roomId).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<BaseModel<String>> call, Response<BaseModel<String>> response) {
|
||||
onNextRetu(response, observer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<BaseModel<String>> call, Throwable t) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void freeReSign(int type, String userId,BaseObserver<String> observer) {
|
||||
if (type==1) {
|
||||
sApiServer.freeReSign(userId).enqueue(new Callback<BaseModel<String>>() {
|
||||
|
||||
@@ -433,6 +433,7 @@ public class Constants {
|
||||
public static final String GET_SKILL_LIST = "/api/Sign/skill_list";//才艺列表
|
||||
public static final String POST_FREE_RE_SIGN = "/api/Sign/free_re_sign";//免费续约
|
||||
public static final String POST_RE_SIGN = "/api/Sign/re_sign";//续签(花金币)
|
||||
public static final String POST_SIGN_REFUSE = "/api/RoomPit/refuse_sign_room_host_invite";//签约房间主持邀请上签约麦用户拒绝
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.opensource.svgaplayer.SVGAVideoEntity;
|
||||
import com.tencent.qgame.animplayer.AnimConfig;
|
||||
import com.tencent.qgame.animplayer.AnimView;
|
||||
import com.tencent.qgame.animplayer.inter.IAnimListener;
|
||||
import com.xscm.moduleutil.R;
|
||||
import com.xscm.moduleutil.bean.GiftBean;
|
||||
|
||||
import java.io.File;
|
||||
@@ -31,6 +32,7 @@ import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import lombok.Setter;
|
||||
import okhttp3.Call;
|
||||
import okhttp3.Callback;
|
||||
import okhttp3.OkHttpClient;
|
||||
@@ -46,7 +48,8 @@ public class GiftAnimView extends FrameLayout implements GiftSvgaView.OnAnimatio
|
||||
private boolean isShow = true;//是否开启特效
|
||||
private ReentrantLock lock = new ReentrantLock();
|
||||
private List<String> giftArray = new ArrayList<>();
|
||||
public ExecutorService queue = Executors.newSingleThreadExecutor();
|
||||
@Setter
|
||||
public ExecutorService queue;
|
||||
private Context mContext;
|
||||
private boolean isOnece;
|
||||
// 添加带Context参数的构造函数
|
||||
@@ -64,9 +67,6 @@ public class GiftAnimView extends FrameLayout implements GiftSvgaView.OnAnimatio
|
||||
this.mContext = context;
|
||||
init();
|
||||
}
|
||||
public void setQueue(ExecutorService queue) {
|
||||
this.queue = queue;
|
||||
}
|
||||
|
||||
public GiftAnimView(Context context) {
|
||||
super(context);
|
||||
@@ -76,13 +76,11 @@ public class GiftAnimView extends FrameLayout implements GiftSvgaView.OnAnimatio
|
||||
|
||||
private void init() {
|
||||
isLoadEffect = false;
|
||||
|
||||
setBackgroundColor(getResources().getColor(R.color.colorBlack45));
|
||||
// 初始化SVGA视图
|
||||
svgaView = new GiftSvgaView(getContext());
|
||||
addView(svgaView);
|
||||
|
||||
playerMp4View = new AnimView(getContext());
|
||||
|
||||
addView(playerMp4View);
|
||||
|
||||
// 设置布局参数 - 在Android中通常使用LayoutParams
|
||||
|
||||
@@ -85,7 +85,7 @@ public class QXGiftPlayerManager {
|
||||
roomCPView.setLayoutParams(new ViewGroup.LayoutParams(
|
||||
ViewGroup.LayoutParams.MATCH_PARENT,
|
||||
ViewGroup.LayoutParams.MATCH_PARENT
|
||||
));
|
||||
));
|
||||
// 创建专用线程池替代GCD队列
|
||||
ExecutorService queue = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS,
|
||||
new LinkedBlockingQueue<Runnable>(),
|
||||
@@ -153,10 +153,13 @@ public class QXGiftPlayerManager {
|
||||
}
|
||||
chatEffectView = null;
|
||||
}
|
||||
|
||||
|
||||
if (roomCPView != null) {
|
||||
// 先调用destroyEffectView方法,它会自动从父视图中移除
|
||||
roomCPView.destroyEffectView();
|
||||
if (bgEffectView != null) {
|
||||
((ViewGroup) bgEffectView).removeView(roomCPView);
|
||||
}
|
||||
roomCPView = null;
|
||||
}
|
||||
|
||||
|
||||
@@ -856,7 +856,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
AgoraManager.getInstance().cleanup()
|
||||
CommonAppContext.getInstance().isPlaying = false
|
||||
CommonAppContext.getInstance().isShow = false
|
||||
QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
|
||||
// QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
|
||||
cleanupResources()
|
||||
}
|
||||
|
||||
@@ -1523,6 +1523,8 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
roomFragment?.handleRoomMessage(messageEvent)
|
||||
} else if (msgType == EMMessageInfo.QXRoomMessageTypeSignDelayText) {
|
||||
roomFragment?.handleRoomMessage(messageEvent)
|
||||
}else if (msgType == EMMessageInfo.QXRoomMessageTypeSignTipText) {
|
||||
roomFragment?.handleRoomMessage(messageEvent)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2816,7 +2818,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
// 执行退出房间逻辑
|
||||
CommonAppContext.getInstance().isPlaying = false
|
||||
CommonAppContext.getInstance().isShow = false
|
||||
QXGiftPlayerManager.getInstance(this).destroyEffectSvga()
|
||||
// QXGiftPlayerManager.getInstance(this).destroyEffectSvga()
|
||||
AgoraManager.getInstance().cleanup()
|
||||
|
||||
MyRoomSingleton.getInstance().onExitRoom()
|
||||
@@ -2863,7 +2865,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
if (appStateListener != null) {
|
||||
appStateListener!!.isAppInBackground = true
|
||||
}
|
||||
QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
|
||||
// QXGiftPlayerManager.getInstance(applicationContext).destroyEffectSvga()
|
||||
if (ActivityUtils.getActivityList().size <= 1) {
|
||||
singleTaskToActivity(MainActivity::class.java)
|
||||
} else {
|
||||
|
||||
@@ -23,6 +23,8 @@ class MentorShipContacts {
|
||||
|
||||
fun signDelay(signId:String,roomId:String)
|
||||
|
||||
fun signRefuse(roomId: String)
|
||||
|
||||
fun signCoinList(signId:String)
|
||||
|
||||
fun signCoin(signId:String,sign_value:String)
|
||||
|
||||
@@ -113,14 +113,14 @@ public class RankingChildFragment extends BaseMvpFragment<DataListPresenter, Roo
|
||||
cAdapter.setOnItemChildClickListener((adapter, view, position) -> {
|
||||
if (view.getId() == R.id.room_item_head) {
|
||||
CharmRankingResp item = cAdapter.getItem(position);
|
||||
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), true, 3, 0, getChildFragmentManager());
|
||||
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), false, 3, 0, getChildFragmentManager());
|
||||
}
|
||||
});
|
||||
} else {
|
||||
wAdapter.setOnItemChildClickListener((adapter, view, position) -> {
|
||||
if (view.getId() == R.id.room_item_head) {
|
||||
CharmRankingResp item = wAdapter.getItem(position);
|
||||
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), true, 3, 0, getChildFragmentManager());
|
||||
RoomUserInfoFragment.show(roomId,item.getUser_id(), "", getHostUser(), false, 3, 0, getChildFragmentManager());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -906,6 +906,9 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
case EMMessageInfo.QXRoomMessageTypeSignDelayText:
|
||||
mentorShipFragment.event1093(messageEvent);
|
||||
break;
|
||||
case EMMessageInfo.QXRoomMessageTypeSignTipText:
|
||||
mentorShipFragment.event1094(messageEvent);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -546,7 +546,7 @@ public class RoomKtvFragment extends BaseMvpFragment<RoomPresenter, FragmentRoom
|
||||
AgoraManager.getInstance().stopMuisc();
|
||||
MvpPre.changeSong(roomInfoResp.getRoom_info().getRoom_id(), did);
|
||||
} else if (id == R.id.ll_ds) {
|
||||
if (mBinding.muYc.pitBean.getUser_id() != null && !mBinding.muYc.pitBean.getUser_id().equals("")) {
|
||||
if (mBinding.muYc.pitBean.getUser_id() != null && !mBinding.muYc.pitBean.getUser_id().equals("")&& !mBinding.muYc.pitBean.getUser_id().equals("0")) {
|
||||
UserInfo userInfo = new UserInfo();
|
||||
userInfo.setAvatar(roomInfoResp.getSong_user_info().getAvatar());
|
||||
userInfo.setNickname(roomInfoResp.getSong_user_info().getNickname());
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.xscm.modulemain.activity.room.fragment
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.view.Gravity
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
@@ -9,6 +10,7 @@ import android.widget.PopupWindow
|
||||
import android.widget.Switch
|
||||
import android.widget.TextView
|
||||
import com.blankj.utilcode.util.ActivityUtils
|
||||
import com.blankj.utilcode.util.LogUtils
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.activity.room.contacts.MentorShipContacts
|
||||
import com.xscm.modulemain.activity.room.presenter.MentorShipPresenter
|
||||
@@ -36,6 +38,7 @@ import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.SupervisorJob
|
||||
import kotlinx.coroutines.cancel
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.flow
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
/**
|
||||
@@ -284,8 +287,14 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
|
||||
mBinding.tvTime.text = "倒计时 00:00:00"
|
||||
setIvForMai(0)
|
||||
}
|
||||
|
||||
if (viewList[0].pitBean.user_id.equals(mRoomInfo?.user_info?.user_id.toString()) && !mSignPitBean?.user_id.equals("0")){
|
||||
LogUtils.e(
|
||||
"showBtn",
|
||||
"showBtn: $isSignUser isStart: $isStart viewList[0].pitBean.user_id: ${viewList[0].pitBean.user_id} mSignPitBean?.user_id: ${mSignPitBean?.user_id} mRoomInfo?.user_info?.user_id: ${mRoomInfo?.user_info?.user_id} mUserInfo?.user_id: ${mUserInfo?.user_id}"
|
||||
)
|
||||
if (viewList[0].pitBean.user_id.equals(mUserInfo?.user_id.toString()) && !mSignPitBean?.user_id.equals(
|
||||
"0"
|
||||
)
|
||||
) {
|
||||
mBinding.tvTimeLeft.visibility = View.VISIBLE
|
||||
} else {
|
||||
mBinding.tvTimeLeft.visibility = View.GONE
|
||||
@@ -357,7 +366,6 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
|
||||
setIvForMai(2)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -697,5 +705,23 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) :
|
||||
}
|
||||
}
|
||||
|
||||
fun event1094(messageEvent: RoomMessageEvent) {
|
||||
if (messageEvent.text.user_id.equals(mUserInfo?.user_id.toString())) {
|
||||
// 创建并显示确认对话框
|
||||
ConfirmDialog(
|
||||
ActivityUtils.getTopActivity(),
|
||||
"提示",
|
||||
messageEvent.text.text,
|
||||
"确认",
|
||||
"拒绝",
|
||||
{ v: View? ->
|
||||
MvpPre.applyPit(mRoomInfo?.room_info?.room_id!!, "1")
|
||||
},
|
||||
{ v: View? ->
|
||||
MvpPre.signRefuse(mRoomInfo?.room_info?.room_id!!)
|
||||
}, true, 5
|
||||
).show()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -44,6 +44,7 @@ import com.xscm.moduleutil.bean.TopRoom;
|
||||
import com.xscm.moduleutil.event.MqttBean;
|
||||
import com.xscm.moduleutil.event.RoomGiftRunable;
|
||||
import com.xscm.moduleutil.utils.ARouteConstants;
|
||||
import com.xscm.moduleutil.utils.ColorManager;
|
||||
import com.xscm.moduleutil.utils.ImageUtils;
|
||||
import com.xscm.moduleutil.utils.logger.DataLogger;
|
||||
|
||||
@@ -271,6 +272,7 @@ public class VoiceCategoryFragment extends BaseMvpFragment<VoiceCategoryPresente
|
||||
// 创建适配器
|
||||
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getActivity(), list);
|
||||
mBinding.viewPager.setAdapter(adapter);
|
||||
mBinding.slidingTabLayout.setSelectedTabIndicatorColor(ColorManager.getInstance().getPrimaryColorInt());
|
||||
if (!list.isEmpty())
|
||||
mBinding.viewPager.setOffscreenPageLimit(list.size() - 1);
|
||||
// 设置 TabLayout 与 ViewPager2 的关联
|
||||
|
||||
@@ -78,6 +78,17 @@ class MentorShipPresenter(context: Context, val view: MentorShipContacts.View) :
|
||||
})
|
||||
}
|
||||
|
||||
override fun signRefuse(roomId: String) {
|
||||
RetrofitClient.getInstance().signRefuse(roomId, object : BaseObserver<String?>(){
|
||||
override fun onSubscribe(d: Disposable) {
|
||||
|
||||
}
|
||||
|
||||
override fun onNext(t: String) {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
override fun signCoinList(signId: String) {
|
||||
RetrofitClient.getInstance().signCoinList(signId, object : BaseObserver<List<String>>() {
|
||||
override fun onSubscribe(d: Disposable) {
|
||||
|
||||
@@ -15,6 +15,7 @@ import android.widget.HorizontalScrollView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.hjq.toast.ToastUtils;
|
||||
import com.rmondjone.locktableview.LockTableView;
|
||||
import com.rmondjone.xrecyclerview.ProgressStyle;
|
||||
import com.xscm.modulemain.BaseMvpActivity;
|
||||
@@ -29,7 +30,9 @@ import com.xscm.moduleutil.bean.NobilitDeatils;
|
||||
import com.xscm.moduleutil.bean.NobilitList;
|
||||
import com.xscm.moduleutil.bean.NobilityPrice;
|
||||
import com.xscm.moduleutil.bean.TableCellData;
|
||||
import com.xscm.moduleutil.bean.UserInfo;
|
||||
import com.xscm.moduleutil.utils.ImageUtils;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -43,6 +46,7 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
|
||||
private LinearLayout mContentView;
|
||||
private List<NobilitDeatils.nobilityPowerItem> mNobilityPowerItemList = new ArrayList<>();
|
||||
private String lid;
|
||||
|
||||
@Override
|
||||
protected void initData() {
|
||||
MvpPre.getNobilityDetail();
|
||||
@@ -193,8 +197,27 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
|
||||
@SuppressLint("SetTextI18n")
|
||||
@Override
|
||||
public void getNobilityDetail(NobilitDeatils nobilitDeatils) {
|
||||
ImageUtils.loadHeadCC(nobilitDeatils.getUser_info().getAvatar(), mBinding.ciUserImage);
|
||||
mBinding.tvUserName.setText(nobilitDeatils.getUser_info().getNickname());
|
||||
String avatar = "";
|
||||
String nickName = "";
|
||||
if (nobilitDeatils.getNobility_info() == null){
|
||||
UserInfo userInfo = SpUtil.getUserInfo();
|
||||
avatar = userInfo.getAvatar();
|
||||
nickName = userInfo.getNickname();
|
||||
}else {
|
||||
avatar = nobilitDeatils.getUser_info().getAvatar();
|
||||
nickName = nobilitDeatils.getUser_info().getNickname();
|
||||
}
|
||||
|
||||
if (avatar == null || avatar.isEmpty()) {
|
||||
ToastUtils.show("爵位 账号数据存在问题,请联系管理员");
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
ImageUtils.loadHeadCC(avatar, mBinding.ciUserImage);
|
||||
mBinding.tvUserName.setText(nickName);
|
||||
|
||||
if (nobilitDeatils.getNobility_info().getStatus() == 0) {
|
||||
mBinding.tvUserLv.setText("暂未开通任何爵位");
|
||||
mBinding.imMeNobleStatus.setImageResource(com.xscm.moduleutil.R.mipmap.me_noble_no);
|
||||
@@ -218,11 +241,10 @@ public class NobleTitleActivity extends BaseMvpActivity<NobleTitlePresenter, Act
|
||||
mBinding.ciImage2.setVisibility(VISIBLE);
|
||||
mBinding.tvMeX.setVisibility(VISIBLE);
|
||||
mBinding.imKt.setVisibility(VISIBLE);
|
||||
ImageUtils.loadHeadCC(nobilitDeatils.getUser_info().getAvatar(), mBinding.ciImage2);
|
||||
String nickname = nobilitDeatils.getUser_info().getNickname();
|
||||
ImageUtils.loadHeadCC(avatar, mBinding.ciImage2);
|
||||
String nickname = nickName;
|
||||
String displayNickname = nickname.length() > 3 ? nickname.substring(0, 3) + ".." : nickname;
|
||||
mBinding.tvMeX.setText(displayNickname + "的当前爵位状态是" + nobilitDeatils.getNobility_info().getName());
|
||||
// mBinding.tvMeX.setText(nobilitDeatils.getUser_info().getNickname()+"的当前爵位状态是"+nobilitDeatils.getNobility_info().getName());
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_320">
|
||||
android:layout_height="@dimen/dp_330">
|
||||
|
||||
|
||||
<com.xscm.moduleutil.widget.RoomFriendshipWheatView
|
||||
@@ -64,7 +64,6 @@
|
||||
android:id="@+id/tv_heart"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_20"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginEnd="@dimen/dp_10"
|
||||
android:gravity="center"
|
||||
android:paddingStart="@dimen/dp_3"
|
||||
|
||||
@@ -267,14 +267,12 @@
|
||||
android:layout_marginLeft="@dimen/dp_16"
|
||||
android:layout_marginTop="@dimen/dp_12"
|
||||
android:layout_marginRight="@dimen/dp_16"
|
||||
app:tabIndicator="@drawable/tab_indicator_bg"
|
||||
app:tabIndicatorFullWidth="true"
|
||||
app:tabIndicatorHeight="@dimen/dp_15"
|
||||
app:tabIndicatorGravity="center"
|
||||
app:tabIndicatorFullWidth="false"
|
||||
app:tabIndicatorHeight="@dimen/dp_2"
|
||||
app:tabIndicatorGravity="bottom"
|
||||
app:tabMode="scrollable"
|
||||
app:tabMinWidth="@dimen/dp_40"
|
||||
app:tabSelectedTextColor="@color/white"
|
||||
app:tabIndicatorColor="@android:color/transparent"
|
||||
app:tabIndicatorColor="@color/colorPrimary"
|
||||
app:tabTextAppearance="@style/CustomTabTextAppearance"
|
||||
app:tabTextColor="#F1ECFF" />
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
Reference in New Issue
Block a user