相亲模式坑位UI调整

This commit is contained in:
huangjian
2021-02-25 14:30:19 +08:00
parent cd49d1fa89
commit 6875eaa0f8
14 changed files with 204 additions and 225 deletions

View File

@@ -243,7 +243,7 @@ public abstract class BaseMicroViewAdapter extends RecyclerView.Adapter<Recycler
//优先使用MicMemberInfo里面的头饰 //优先使用MicMemberInfo里面的头饰
private void updateNobleView(MicMemberInfo chatRoomMember) { private void updateNobleView(MicMemberInfo chatRoomMember) {
String headWear = chatRoomMember.getHeadWearUrl(); String headWear = chatRoomMember.getHeadWearUrl();
if (TextUtils.isEmpty(headWear)){ if (TextUtils.isEmpty(headWear)) {
headWear = NobleUtil.getHeadResource(HeadWearInfo.EFFECT, chatRoomMember) != null ? headWear = NobleUtil.getHeadResource(HeadWearInfo.EFFECT, chatRoomMember) != null ?
NobleUtil.getHeadResource(HeadWearInfo.EFFECT, chatRoomMember) : NobleUtil.getHeadResource(HeadWearInfo.EFFECT, chatRoomMember) :
NobleUtil.getHeadResource(HeadWearInfo.PIC, chatRoomMember); NobleUtil.getHeadResource(HeadWearInfo.PIC, chatRoomMember);
@@ -273,9 +273,6 @@ public abstract class BaseMicroViewAdapter extends RecyclerView.Adapter<Recycler
} else if (v.getId() == R.id.tv_room_desc || v.getId() == R.id.tv_room_type } else if (v.getId() == R.id.tv_room_desc || v.getId() == R.id.tv_room_type
|| v.getId() == R.id.iv_room_can_edit) { || v.getId() == R.id.iv_room_can_edit) {
onMicroItemClickListener.onRoomSettingsClick(); onMicroItemClickListener.onRoomSettingsClick();
} else if (v.getId() == R.id.iv_red_package) {
if (CommonUtils.isFastDoubleClick(800)) return;
onMicroItemClickListener.onRedPackageClick(position, info.mChatRoomMember);
} }
} }
} }
@@ -477,7 +474,6 @@ public abstract class BaseMicroViewAdapter extends RecyclerView.Adapter<Recycler
TextView tvLabelLeaveMode; TextView tvLabelLeaveMode;
CircleImageView ivLeaveMode; CircleImageView ivLeaveMode;
ImageView ivRedPackage;
BossMicroViewHolder(View itemView) { BossMicroViewHolder(View itemView) {
super(itemView); super(itemView);
@@ -491,8 +487,6 @@ public abstract class BaseMicroViewAdapter extends RecyclerView.Adapter<Recycler
tvRoomType.setOnClickListener(this); tvRoomType.setOnClickListener(this);
ivRoomCanEdit.setOnClickListener(this); ivRoomCanEdit.setOnClickListener(this);
ivRedPackage = itemView.findViewById(R.id.iv_red_package);
ivRedPackage.setOnClickListener(this);
} }
@Override @Override
@@ -503,8 +497,6 @@ public abstract class BaseMicroViewAdapter extends RecyclerView.Adapter<Recycler
RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo; RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo;
if (roomInfo == null) if (roomInfo == null)
return; return;
//红包
ivRedPackage.setVisibility(AvRoomDataManager.get().isRedEnvelopeOpen() ? View.VISIBLE : View.GONE);
// 新版房主位优先判断麦序是否有人,麦序没人再判断是否是离开模式(防止新版展示离开模式,实际麦位有人) // 新版房主位优先判断麦序是否有人,麦序没人再判断是否是离开模式(防止新版展示离开模式,实际麦位有人)
MicMemberInfo chatRoomMember = info.mChatRoomMember; MicMemberInfo chatRoomMember = info.mChatRoomMember;

View File

@@ -6,18 +6,14 @@ import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.ImageView import android.widget.ImageView
import android.widget.RadioGroup
import android.widget.TextView import android.widget.TextView
import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.yizhuan.erban.R import com.yizhuan.erban.R
import com.yizhuan.erban.ui.utils.load import com.yizhuan.erban.ui.utils.load
import com.yizhuan.erban.ui.webview.DatingRuleWebViewActivity
import com.yizhuan.erban.ui.webview.DialogWebViewActivity
import com.yizhuan.erban.utils.UserUtils import com.yizhuan.erban.utils.UserUtils
import com.yizhuan.xchat_android_core.Constants import com.yizhuan.xchat_android_core.Constants
import com.yizhuan.xchat_android_core.UriProvider
import com.yizhuan.xchat_android_core.bean.RoomQueueInfo import com.yizhuan.xchat_android_core.bean.RoomQueueInfo
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager import com.yizhuan.xchat_android_core.manager.AvRoomDataManager
import com.yizhuan.xchat_android_core.room.bean.RoomInfo import com.yizhuan.xchat_android_core.room.bean.RoomInfo
@@ -29,7 +25,6 @@ import com.yizhuan.xchat_android_core.room.bean.RoomInfo
*/ */
class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context) { class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context) {
/** /**
* Set LayoutManager and bind this to RecyclerView * Set LayoutManager and bind this to RecyclerView
*/ */
@@ -37,11 +32,7 @@ class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context)
val layoutManager = GridLayoutManager(context, 4) val layoutManager = GridLayoutManager(context, 4)
layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() { layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
override fun getSpanSize(position: Int): Int { override fun getSpanSize(position: Int): Int {
return if (position == 0) { return if (position == 0) 4 else 1
4
} else {
1
}
} }
} }
layoutManager.orientation = LinearLayoutManager.VERTICAL layoutManager.orientation = LinearLayoutManager.VERTICAL
@@ -70,7 +61,6 @@ class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context)
private val viewGenderBg: View = itemView.findViewById(R.id.view_gender_bg) private val viewGenderBg: View = itemView.findViewById(R.id.view_gender_bg)
private val tvSelectedStatus: TextView = itemView.findViewById(R.id.tv_selected_status) private val tvSelectedStatus: TextView = itemView.findViewById(R.id.tv_selected_status)
private val ivCap: ImageView = itemView.findViewById(R.id.iv_cap) private val ivCap: ImageView = itemView.findViewById(R.id.iv_cap)
//private val ivValue: ImageView = itemView.findViewById(R.id.iv_value_icon)
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
public override fun bind(info: RoomQueueInfo, position: Int) { public override fun bind(info: RoomQueueInfo, position: Int) {
@@ -82,7 +72,6 @@ class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context)
if (roomMicInfo != null) { if (roomMicInfo != null) {
viewGenderBg.setBackgroundResource(if (manMicro) R.drawable.shape_circle_micro_man_bg else R.drawable.shape_circle_micro_woman_bg) viewGenderBg.setBackgroundResource(if (manMicro) R.drawable.shape_circle_micro_man_bg else R.drawable.shape_circle_micro_woman_bg)
tvSelectedStatus.setBackgroundResource(if (manMicro) R.drawable.selector_dating_select_man_bg else R.drawable.selector_dating_select_woman_bg) tvSelectedStatus.setBackgroundResource(if (manMicro) R.drawable.selector_dating_select_man_bg else R.drawable.selector_dating_select_woman_bg)
//ivValue.setImageResource(if (manMicro) R.drawable.icon_gift_value_man else R.drawable.icon_gift_value)
} }
info.mChatRoomMember?.let { info.mChatRoomMember?.let {
@@ -117,26 +106,25 @@ class DatingMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context)
tvNick.text = "${if (manMicro) "男神" else "女神"}" tvNick.text = "${if (manMicro) "男神" else "女神"}"
} }
} }
if (tvNumber != null) {
var micPosition = 0
when (position) {
0, 2 -> micPosition = 1
1, 3 -> micPosition = 2
4, 6 -> micPosition = 3
5, 7 -> micPosition = 4
}
tvNumber.text = micPosition.toString()
}
} }
} }
inner class DatingBossMicroViewHolder internal constructor(itemView: View) : BossMicroViewHolder(itemView) { inner class DatingBossMicroViewHolder internal constructor(itemView: View) : BossMicroViewHolder(itemView) {
private val radioGroup: RadioGroup = itemView.findViewById(R.id.radio_group)
public override fun bind(info: RoomQueueInfo, position: Int) { public override fun bind(info: RoomQueueInfo, position: Int) {
super.bind(info, position) super.bind(info, position)
val roomInfo = AvRoomDataManager.get().mCurrentRoomInfo ?: return
when (roomInfo.blindDateState) {
RoomInfo.DATING_STATE_FLOW -> radioGroup.check(R.id.rb_step_free)
RoomInfo.DATING_STATE_SELECT -> radioGroup.check(R.id.rb_step_select)
RoomInfo.DATING_STATE_PUBLISH -> radioGroup.check(R.id.rb_step_public)
}
radioGroup.setOnClickListener {
DatingRuleWebViewActivity.start(context, UriProvider.getDatingRule())
}
if (info.mChatRoomMember == null) { if (info.mChatRoomMember == null) {
tvNick.alpha = 1f tvNick.alpha = 1f
tvNick.text = "主持人" tvNick.text = "主持人"

View File

@@ -15,5 +15,4 @@ public interface OnMicroItemClickListener {
void onRoomSettingsClick(); void onRoomSettingsClick();
void onRedPackageClick(int position, MicMemberInfo chatRoomMember);
} }

View File

@@ -29,6 +29,7 @@ import androidx.viewpager.widget.ViewPager;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder; import com.chad.library.adapter.base.BaseViewHolder;
import com.coorchice.library.SuperTextView; import com.coorchice.library.SuperTextView;
import com.yizhuan.erban.ui.webview.DatingRuleWebViewActivity;
import com.yizhuan.erban.ui.webview.DialogWebViewActivity; import com.yizhuan.erban.ui.webview.DialogWebViewActivity;
import com.yizhuan.erban.ui.widget.rollviewpager.RollPagerView; import com.yizhuan.erban.ui.widget.rollviewpager.RollPagerView;
import com.yizhuan.erban.ui.widget.rollviewpager.Util; import com.yizhuan.erban.ui.widget.rollviewpager.Util;
@@ -116,6 +117,7 @@ import com.yizhuan.tutu.room_chat.activity.RoomMsgActivity;
import com.yizhuan.xchat_android_constants.XChatConstants; import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.Constants; import com.yizhuan.xchat_android_core.Constants;
import com.yizhuan.xchat_android_core.DemoCache; import com.yizhuan.xchat_android_core.DemoCache;
import com.yizhuan.xchat_android_core.UriProvider;
import com.yizhuan.xchat_android_core.auth.AuthModel; import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.bean.RoomMicInfo; import com.yizhuan.xchat_android_core.bean.RoomMicInfo;
import com.yizhuan.xchat_android_core.bean.RoomQueueInfo; import com.yizhuan.xchat_android_core.bean.RoomQueueInfo;
@@ -281,8 +283,6 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
private boolean isRoomMin; private boolean isRoomMin;
private int mJoinMiniWorldOperationPosition = -1; private int mJoinMiniWorldOperationPosition = -1;
@Nullable
private RedPackageSendDialog redPackageSendDialog;
@Nullable @Nullable
private UserInfoDialog userInfoDialog; private UserInfoDialog userInfoDialog;
@@ -951,20 +951,6 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
updateMentoringCountDownTimer(); updateMentoringCountDownTimer();
} }
//改变声网品质
private void changeAudioQuality() {
if (audioQulity == AvRoomDataManager.get().mCurrentRoomInfo.getAudioQuality()) return;
RtcEngineManager.get().resetChannel();
PlayerModel.get().stop();
long uid = AuthModel.get().getCurrentUid();
audioQulity = AvRoomDataManager.get().mCurrentRoomInfo.getAudioQuality();
if (AvRoomDataManager.get().mCurrentRoomInfo.getAudioQuality() == 1) {
RtcEngineManager.get().reJoinChannel(AvRoomDataManager.get().mCurrentRoomInfo.getRoomId(), uid);
} else if (AvRoomDataManager.get().mCurrentRoomInfo.getAudioQuality() == 2) {
RtcEngineManager.get().reJoinHighQualityChannel(AvRoomDataManager.get().mCurrentRoomInfo.getRoomId(), uid, true);
}
}
private void cleanDragonBar() { private void cleanDragonBar() {
LogUtil.e("cleanDragonBar"); LogUtil.e("cleanDragonBar");
if (AvRoomDataManager.get().haveStartDragon) { if (AvRoomDataManager.get().haveStartDragon) {
@@ -1032,7 +1018,7 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
@Override @Override
public void onWebClick(String url) { public void onWebClick(String url) {
StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_ROOM_PROMOTE_CLICK, "语音房_推广入口"); StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_ROOM_PROMOTE_CLICK, "语音房_推广入口");
DialogWebViewActivity.start(mContext,url); DialogWebViewActivity.start(mContext, url);
} }
}); });
@@ -1317,14 +1303,17 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
switch (currentRoomInfo.getBlindDateState()) { switch (currentRoomInfo.getBlindDateState()) {
case RoomInfo.DATING_STATE_FLOW: case RoomInfo.DATING_STATE_FLOW:
gameBinding.tvDatingNext.setText("开始选择>"); gameBinding.tvDatingNext.setText("开始选择>");
gameBinding.tvDatingStep.setText("自由交流");
hintText = "进入心动选人环节?"; hintText = "进入心动选人环节?";
break; break;
case RoomInfo.DATING_STATE_SELECT: case RoomInfo.DATING_STATE_SELECT:
gameBinding.tvDatingNext.setText("公布心动>"); gameBinding.tvDatingNext.setText("公布心动>");
gameBinding.tvDatingStep.setText("心动选人");
hintText = "进入公布心动环节?"; hintText = "进入公布心动环节?";
break; break;
case RoomInfo.DATING_STATE_PUBLISH: case RoomInfo.DATING_STATE_PUBLISH:
gameBinding.tvDatingNext.setText("结束本轮>"); gameBinding.tvDatingNext.setText("结束本轮>");
gameBinding.tvDatingStep.setText("公布心动");
hintText = "结束本轮,同时清空魅力值?"; hintText = "结束本轮,同时清空魅力值?";
break; break;
} }
@@ -1857,21 +1846,10 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
showRoomIntroduction(AvRoomDataManager.get().isRoomOwner() || AvRoomDataManager.get().isRoomAdmin()); showRoomIntroduction(AvRoomDataManager.get().isRoomOwner() || AvRoomDataManager.get().isRoomAdmin());
} }
@Override
public void onRedPackageClick(int position, MicMemberInfo chatRoomMember) {
redPackageSendDialog = new RedPackageSendDialog();
redPackageSendDialog.show(getActivity());
StatisticManager.Instance().onEvent(StatisticsProtocol.Event.EVENT_ROOM_SENDHONGBAO_CLICK,
"进入发红包页面");
}
public void clearDialog() { public void clearDialog() {
if (giftDialog != null) giftDialog.dismiss(); if (giftDialog != null) giftDialog.dismiss();
if (dynamicFaceDialog != null) dynamicFaceDialog.dismiss(); if (dynamicFaceDialog != null) dynamicFaceDialog.dismiss();
if (userInfoDialog != null) userInfoDialog.dismiss(); if (userInfoDialog != null) userInfoDialog.dismiss();
if (redPackageSendDialog != null) {
redPackageSendDialog.dismissAllowingStateLoss();
}
} }
private void showRoomIntroduction(boolean isModify) { private void showRoomIntroduction(boolean isModify) {
@@ -2712,6 +2690,8 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
} else { } else {
gameBinding.tvDatingNext.setVisibility(View.GONE); gameBinding.tvDatingNext.setVisibility(View.GONE);
} }
gameBinding.llDatingStep.setVisibility(View.VISIBLE);
gameBinding.llDatingStep.setOnClickListener(v -> DatingRuleWebViewActivity.start(mContext, UriProvider.getDatingRule()));
} }
private void closeDatingMode() { private void closeDatingMode() {
@@ -2719,6 +2699,7 @@ public class HomePartyRoomFragment extends BaseMvpFragment<IHomePartyView, HomeP
isDatingMode = false; isDatingMode = false;
gameBinding.microView.closeDatingMode(); gameBinding.microView.closeDatingMode();
gameBinding.tvDatingNext.setVisibility(View.GONE); gameBinding.tvDatingNext.setVisibility(View.GONE);
gameBinding.llDatingStep.setVisibility(View.GONE);
} }
/** /**

View File

@@ -2,24 +2,20 @@ package com.yizhuan.erban.avroom.widget;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.content.Context; import android.content.Context;
import androidx.databinding.DataBindingUtil;
import android.graphics.Point; import android.graphics.Point;
import android.graphics.drawable.AnimationDrawable; import android.graphics.drawable.AnimationDrawable;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.Log;
import android.util.SparseArray; import android.util.SparseArray;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import androidx.databinding.DataBindingUtil;
import androidx.recyclerview.widget.RecyclerView;
import com.yizhuan.erban.R; import com.yizhuan.erban.R;
import com.yizhuan.erban.avroom.adapter.BaseMicroViewAdapter; import com.yizhuan.erban.avroom.adapter.BaseMicroViewAdapter;
import com.yizhuan.erban.avroom.adapter.CpMicroViewAdapter; import com.yizhuan.erban.avroom.adapter.CpMicroViewAdapter;
@@ -28,10 +24,10 @@ import com.yizhuan.erban.avroom.adapter.KtvMicroViewAdapter;
import com.yizhuan.erban.avroom.adapter.MicroViewAdapter; import com.yizhuan.erban.avroom.adapter.MicroViewAdapter;
import com.yizhuan.erban.avroom.adapter.OnMicroItemClickListener; import com.yizhuan.erban.avroom.adapter.OnMicroItemClickListener;
import com.yizhuan.erban.avroom.ktv.KtvView; import com.yizhuan.erban.avroom.ktv.KtvView;
import com.yizhuan.erban.base.TitleBar;
import com.yizhuan.erban.databinding.LayoutMicroViewBinding; import com.yizhuan.erban.databinding.LayoutMicroViewBinding;
import com.yizhuan.erban.ui.anim.AnimFactory; import com.yizhuan.erban.ui.anim.AnimFactory;
import com.yizhuan.erban.ui.widget.magicindicator.buildins.UIUtil; import com.yizhuan.erban.ui.widget.magicindicator.buildins.UIUtil;
import com.yizhuan.erban.ui.widget.recyclerview.decoration.DatingItemDecoration;
import com.yizhuan.erban.utils.RegexUtil; import com.yizhuan.erban.utils.RegexUtil;
import com.yizhuan.xchat_android_core.bean.RoomQueueInfo; import com.yizhuan.xchat_android_core.bean.RoomQueueInfo;
import com.yizhuan.xchat_android_core.im.custom.bean.FaceAttachment; import com.yizhuan.xchat_android_core.im.custom.bean.FaceAttachment;
@@ -44,10 +40,8 @@ import com.yizhuan.xchat_android_core.noble.NobleUtil;
import com.yizhuan.xchat_android_core.room.bean.RoomInfo; import com.yizhuan.xchat_android_core.room.bean.RoomInfo;
import com.yizhuan.xchat_android_core.room.event.ReceiveFaceEvent; import com.yizhuan.xchat_android_core.room.event.ReceiveFaceEvent;
import com.yizhuan.xchat_android_core.room.face.FaceReceiveInfo; import com.yizhuan.xchat_android_core.room.face.FaceReceiveInfo;
import com.yizhuan.xchat_android_core.utils.LogUtils;
import com.yizhuan.xchat_android_library.utils.config.BasicConfig; import com.yizhuan.xchat_android_library.utils.config.BasicConfig;
import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode; import org.greenrobot.eventbus.ThreadMode;
@@ -81,6 +75,8 @@ public class MicroView extends RelativeLayout implements View.OnLayoutChangeList
private boolean isNeedResetMicCenterPoint = true; private boolean isNeedResetMicCenterPoint = true;
private DatingItemDecoration datingItemDecoration;
public MicroView(Context context) { public MicroView(Context context) {
this(context, null); this(context, null);
} }
@@ -400,6 +396,12 @@ public class MicroView extends RelativeLayout implements View.OnLayoutChangeList
} }
public void bindAdapter(BaseMicroViewAdapter adapter) { public void bindAdapter(BaseMicroViewAdapter adapter) {
if (adapter instanceof DatingMicroViewAdapter) {
if (datingItemDecoration == null) datingItemDecoration = new DatingItemDecoration();
recyclerView.addItemDecoration(datingItemDecoration);
} else if (datingItemDecoration != null) {
recyclerView.removeItemDecoration(datingItemDecoration);
}
adapter.bindToRecyclerView(recyclerView); adapter.bindToRecyclerView(recyclerView);
adapter.setOnMicroItemClickListener(onMicroItemClickListener); adapter.setOnMicroItemClickListener(onMicroItemClickListener);
resetPoint(); resetPoint();

View File

@@ -0,0 +1,39 @@
package com.yizhuan.erban.ui.widget.recyclerview.decoration;
import android.graphics.Rect;
import android.view.View;
import androidx.recyclerview.widget.RecyclerView;
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
import org.jetbrains.annotations.NotNull;
public class DatingItemDecoration extends RecyclerView.ItemDecoration {
private final int spacingWidth = ScreenUtil.dip2px(48f);
private final int vSpacing = ScreenUtil.dip2px(15f);
@Override
public void getItemOffsets(@NotNull Rect outRect, @NotNull View view, @NotNull RecyclerView parent, @NotNull RecyclerView.State state) {
super.getItemOffsets(outRect, view, parent, state);
int position = parent.getChildLayoutPosition(view);
if (position == 1 || position == 5) {
outRect.set(0, 0, spacingWidth / 2, 0);
}
if (position == 2 || position == 6) {
outRect.set(-spacingWidth / 2, 0, spacingWidth, 0);
}
if (position == 3 || position == 7) {
outRect.set(spacingWidth, 0, -spacingWidth / 2, 0);
}
if (position == 4 || position == 8) {
outRect.set(spacingWidth / 2, 0, 0, 0);
}
if (position == 5 || position == 6 || position == 7 || position == 8) {
outRect.top = vSpacing;
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

View File

@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/bg_dating_step" android:state_checked="true" />
<item>
<shape android:shape="rectangle">
<solid android:color="@color/color_412d78" />
<corners android:radius="100dp" />
</shape>
</item>
</selector>

View File

@@ -38,7 +38,7 @@
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="15dp" android:layout_height="14dp"
android:background="@drawable/shape_bg_of_mic_charm" android:background="@drawable/shape_bg_of_mic_charm"
android:orientation="horizontal"> android:orientation="horizontal">
@@ -61,7 +61,7 @@
android:gravity="center" android:gravity="center"
tools:text="9999万+" tools:text="9999万+"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="9dp" /> android:textSize="10dp" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>

View File

@@ -4,12 +4,15 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
tools:background="@color/color_activity_blue_bg"> tools:background="@color/color_activity_blue_bg"
tools:layout_width="70dp">
<FrameLayout <FrameLayout
android:id="@+id/micro_layout" android:id="@+id/micro_layout"
android:layout_width="72dp" android:layout_width="wrap_content"
android:layout_height="72dp" android:layout_height="0dp"
android:minWidth="65dp"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
@@ -22,16 +25,16 @@
<ImageView <ImageView
android:id="@+id/up_image" android:id="@+id/up_image"
android:layout_width="55dp" android:layout_width="45dp"
android:layout_height="55dp" android:layout_height="45dp"
android:layout_gravity="center" android:layout_gravity="center"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/icon_room_up_micro" /> android:src="@drawable/icon_room_up_micro" />
<ImageView <ImageView
android:id="@+id/lock_image" android:id="@+id/lock_image"
android:layout_width="55dp" android:layout_width="45dp"
android:layout_height="55dp" android:layout_height="45dp"
android:layout_gravity="center" android:layout_gravity="center"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/icon_room_lock_micro" android:src="@drawable/icon_room_lock_micro"
@@ -40,15 +43,15 @@
<View <View
android:id="@+id/view_gender_bg" android:id="@+id/view_gender_bg"
android:layout_width="55dp" android:layout_width="45dp"
android:layout_height="55dp" android:layout_height="45dp"
android:layout_gravity="center" android:layout_gravity="center"
android:background="@drawable/shape_circle_micro_man_bg" /> android:background="@drawable/shape_circle_micro_man_bg" />
<com.yizhuan.erban.common.widget.CircleImageView <com.yizhuan.erban.common.widget.CircleImageView
android:id="@+id/avatar" android:id="@+id/avatar"
android:layout_width="55dp" android:layout_width="45dp"
android:layout_height="55dp" android:layout_height="45dp"
android:layout_gravity="center" android:layout_gravity="center"
android:src="@drawable/default_avatar" android:src="@drawable/default_avatar"
android:visibility="gone" android:visibility="gone"
@@ -90,14 +93,13 @@
android:layout_width="15dp" android:layout_width="15dp"
android:layout_height="15dp" android:layout_height="15dp"
android:layout_gravity="bottom|end" android:layout_gravity="bottom|end"
android:layout_marginEnd="10dp" android:layout_marginEnd="8dp"
android:layout_marginBottom="@dimen/dp_10" android:layout_marginBottom="@dimen/dp_8"
android:scaleType="fitCenter" android:scaleType="fitCenter"
android:src="@drawable/icon_room_mute_micro" android:src="@drawable/icon_room_mute_micro"
android:visibility="visible" android:visibility="visible"
tools:visibility="visible" /> tools:visibility="visible" />
</FrameLayout> </FrameLayout>
<LinearLayout <LinearLayout
@@ -113,15 +115,15 @@
<TextView <TextView
android:id="@+id/tv_number" android:id="@+id/tv_number"
android:layout_width="13dp" android:layout_width="10dp"
android:layout_height="13dp" android:layout_height="10dp"
android:layout_marginRight="2dp" android:layout_marginRight="2dp"
android:background="@drawable/shape_circle_white33" android:background="@drawable/shape_circle_white33"
android:gravity="center" android:gravity="center"
android:includeFontPadding="false" android:includeFontPadding="false"
android:text="1" android:text="1"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="10sp" /> android:textSize="9sp" />
<TextView <TextView
android:id="@+id/nick" android:id="@+id/nick"
@@ -129,10 +131,11 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:drawablePadding="3dp" android:drawablePadding="3dp"
android:ellipsize="end" android:ellipsize="end"
android:includeFontPadding="false"
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="11sp" android:textSize="10sp"
tools:text="狐仙嘎嘎" /> tools:text="狐仙嘎嘎" />
</LinearLayout> </LinearLayout>
@@ -153,10 +156,72 @@
app:layout_constraintTop_toBottomOf="@id/ll_nick" app:layout_constraintTop_toBottomOf="@id/ll_nick"
app:solid="#33ffffff" /> app:solid="#33ffffff" />
<include <androidx.constraintlayout.widget.ConstraintLayout
layout="@layout/include_mic_charm_layout" android:id="@+id/cl_parent_gift_value"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="@dimen/dp_50"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintTop_toTopOf="parent">
<View
android:id="@+id/view_center"
android:layout_width="1dp"
android:layout_height="1dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view_center_of_charm"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_marginStart="18dp"
android:layout_marginTop="15dp"
app:layout_constraintStart_toEndOf="@id/view_center"
app:layout_constraintTop_toBottomOf="@id/view_center"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:id="@+id/ll_charm_click"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="3dp"
android:orientation="horizontal"
android:paddingTop="@dimen/dp_5"
android:paddingBottom="@dimen/dp_5"
app:layout_constraintBottom_toBottomOf="@id/view_center_of_charm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/view_center_of_charm">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="14dp"
android:background="@drawable/shape_bg_of_mic_charm"
android:orientation="horizontal">
<ImageView
android:id="@+id/iv_value_icon"
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="3dp"
android:scaleType="fitCenter"
android:src="@drawable/icon_gift_value" />
<TextView
android:id="@+id/tv_charm_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="3dp"
android:layout_marginEnd="3dp"
android:gravity="center"
android:textColor="@color/white"
android:textSize="10dp"
tools:text="123456" />
</LinearLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -9,8 +9,8 @@
<FrameLayout <FrameLayout
android:id="@+id/micro_layout" android:id="@+id/micro_layout"
android:layout_width="76dp" android:layout_width="74dp"
android:layout_height="76dp" android:layout_height="74dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
@@ -23,8 +23,8 @@
<com.yizhuan.erban.common.widget.CircleImageView <com.yizhuan.erban.common.widget.CircleImageView
android:id="@+id/avatar" android:id="@+id/avatar"
android:layout_width="60dp" android:layout_width="58dp"
android:layout_height="60dp" android:layout_height="58dp"
android:layout_gravity="center" android:layout_gravity="center"
android:visibility="gone" android:visibility="gone"
tools:src="@drawable/default_avatar" tools:src="@drawable/default_avatar"
@@ -32,8 +32,8 @@
<ImageView <ImageView
android:id="@+id/up_image" android:id="@+id/up_image"
android:layout_width="60dp" android:layout_width="58dp"
android:layout_height="60dp" android:layout_height="58dp"
android:layout_gravity="center" android:layout_gravity="center"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/icon_room_up_micro" android:src="@drawable/icon_room_up_micro"
@@ -41,8 +41,8 @@
<ImageView <ImageView
android:id="@+id/lock_image" android:id="@+id/lock_image"
android:layout_width="60dp" android:layout_width="58dp"
android:layout_height="60dp" android:layout_height="58dp"
android:layout_gravity="center" android:layout_gravity="center"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/icon_room_lock_micro" android:src="@drawable/icon_room_lock_micro"
@@ -58,8 +58,8 @@
<com.yizhuan.erban.common.widget.CircleImageView <com.yizhuan.erban.common.widget.CircleImageView
android:id="@+id/iv_bg_leave_mode" android:id="@+id/iv_bg_leave_mode"
android:layout_width="60dp" android:layout_width="58dp"
android:layout_height="60dp" android:layout_height="58dp"
android:layout_gravity="center" android:layout_gravity="center"
android:src="@drawable/bg_leave_mode" android:src="@drawable/bg_leave_mode"
android:visibility="gone" /> android:visibility="gone" />
@@ -198,76 +198,10 @@
android:id="@+id/iv_room_can_edit" android:id="@+id/iv_room_can_edit"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="bottom" android:layout_marginStart="3dp"
android:layout_marginBottom="4.5dp"
android:src="@drawable/icon_room_desc_edit" /> android:src="@drawable/icon_room_desc_edit" />
</LinearLayout> </LinearLayout>
<RadioGroup
android:id="@+id/radio_group"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:gravity="center_vertical"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/desc_layout">
<RadioButton
android:id="@+id/rb_step_free"
android:layout_width="55dp"
android:layout_height="17dp"
android:background="@drawable/selector_dating_step"
android:button="@null"
android:checked="true"
android:clickable="false"
android:gravity="center"
android:includeFontPadding="false"
android:text="自由交流"
android:textColor="@color/white"
android:textSize="10sp" />
<View
android:layout_width="37dp"
android:layout_height="3dp"
android:background="@color/color_412d78" />
<RadioButton
android:id="@+id/rb_step_select"
android:layout_width="55dp"
android:layout_height="17dp"
android:background="@drawable/selector_dating_step"
android:button="@null"
android:clickable="false"
android:gravity="center"
android:includeFontPadding="false"
android:text="心动选人"
android:textColor="@color/white"
android:textSize="10sp" />
<View
android:layout_width="37dp"
android:layout_height="3dp"
android:background="@color/color_412d78" />
<RadioButton
android:id="@+id/rb_step_public"
android:layout_width="55dp"
android:layout_height="17dp"
android:background="@drawable/selector_dating_step"
android:button="@null"
android:clickable="false"
android:gravity="center"
android:includeFontPadding="false"
android:text="公布心动"
android:textColor="@color/white"
android:textSize="10sp" />
</RadioGroup>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_parent_gift_value" android:id="@+id/cl_parent_gift_value"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -287,7 +221,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="1dp" android:layout_height="1dp"
android:layout_marginStart="18dp" android:layout_marginStart="18dp"
android:layout_marginTop="18.25dp" android:layout_marginTop="15dp"
app:layout_constraintStart_toEndOf="@id/view_center" app:layout_constraintStart_toEndOf="@id/view_center"
app:layout_constraintTop_toBottomOf="@id/view_center" app:layout_constraintTop_toBottomOf="@id/view_center"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
@@ -306,7 +240,7 @@
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="15dp" android:layout_height="14dp"
android:background="@drawable/shape_bg_of_mic_charm" android:background="@drawable/shape_bg_of_mic_charm"
android:orientation="horizontal"> android:orientation="horizontal">
@@ -328,7 +262,7 @@
android:layout_marginEnd="5dp" android:layout_marginEnd="5dp"
android:gravity="center" android:gravity="center"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="9dp" android:textSize="10dp"
tools:text="9999万+" /> tools:text="9999万+" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
@@ -336,17 +270,4 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<ImageView
android:id="@+id/iv_red_package"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:scaleType="centerInside"
android:src="@drawable/room_red_package_in"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -98,6 +98,34 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/game_view" /> android:layout_below="@id/game_view" />
<LinearLayout
android:id="@+id/ll_dating_step"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/micro_view"
android:layout_centerHorizontal="true"
android:layout_marginBottom="30dp"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_dating_spot" />
<TextView
android:id="@+id/tv_dating_step"
android:layout_width="65dp"
android:layout_height="21dp"
android:layout_marginTop="8dp"
android:background="@drawable/bg_dating_step"
android:gravity="center"
android:text="自由交流"
android:textColor="#ffffe1e8"
android:textSize="13sp" />
</LinearLayout>
<ViewStub <ViewStub
android:id="@+id/vs_avroom_noble_welcome" android:id="@+id/vs_avroom_noble_welcome"
android:layout_width="259dp" android:layout_width="259dp"

View File

@@ -1,25 +0,0 @@
package com.yizhuan.xchat_android_library;
import android.app.Application;
import com.orhanobut.logger.AndroidLogAdapter;
import com.orhanobut.logger.Logger;
/**
* <p> </p>
*
* @author jiahui
* @date 2017/12/11
*/
public class CommonApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
Logger.addLogAdapter(new AndroidLogAdapter() {
@Override
public boolean isLoggable(int priority, String tag) {
return BuildConfig.DEBUG;
}
});
}
}