首页UI修改

This commit is contained in:
huangjian
2022-09-19 18:34:31 +08:00
parent db82c406e9
commit df15c0ee5d
37 changed files with 471 additions and 489 deletions

View File

@@ -1269,6 +1269,9 @@
android:name=".shipantics.RadishRankingActivity"
android:theme="@style/room_message_activity" />
<activity android:name=".home.activity.MoreRoomActivity"
android:screenOrientation="portrait"/>
</application>
</manifest>

View File

@@ -25,7 +25,6 @@ import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
import androidx.lifecycle.ViewModelProvider;
import com.mango.moshen.home.fragment.TempRoomHotFragment;
import com.netease.nim.uikit.StatusBarUtil;
import com.netease.nim.uikit.common.util.log.LogUtil;
import com.netease.nim.uikit.common.util.string.StringUtil;
@@ -174,7 +173,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
private Runnable touchRunnable;
{
fragmentArray.put(MainTabType.TAB_TYPE_HOME, new TempRoomHotFragment());
fragmentArray.put(MainTabType.TAB_TYPE_HOME, new HomeFragment());
fragmentArray.put(MainTabType.TAB_TYPE_MSG, new ContactsListFragment());
fragmentArray.put(MainTabType.TAB_TYPE_SQUARE, new SquareFragment());
fragmentArray.put(MainTabType.TAB_TYPE_ME, new MeFragment());

View File

@@ -210,7 +210,13 @@ class HomeViewModel : BaseViewModel() {
},
block = {
val result = HomeModel.getHomeSingleAnchorList()
_singleAnchorHomeLiveData.value = ListResult.success(result, 1)
_singleAnchorHomeLiveData.value = ListResult.success(
if ((result?.size ?: 0) > 4) {
result?.subList(0, 4)
} else {
result
}, 1
)
}
)
}

View File

@@ -0,0 +1,42 @@
package com.mango.moshen.home.activity
import android.annotation.SuppressLint
import android.content.Context
import android.content.Intent
import com.mango.moshen.R
import com.mango.moshen.base.BaseViewBindingActivity
import com.mango.moshen.databinding.ActivityMoreRoomBinding
import com.mango.moshen.home.fragment.PartyFragment
import com.mango.xchat_android_library.annatation.ActLayoutRes
import com.netease.nim.uikit.StatusBarUtil
@ActLayoutRes(R.layout.activity_more_room)
class MoreRoomActivity : BaseViewBindingActivity<ActivityMoreRoomBinding>() {
companion object {
@JvmStatic
fun start(context: Context) {
val starter = Intent(context, MoreRoomActivity::class.java)
context.startActivity(starter)
}
}
@SuppressLint("CheckResult")
override fun init() {
initTitleBar("更多房间")
supportFragmentManager
.beginTransaction()
.replace(R.id.fcv, PartyFragment.newInstance())
.commitAllowingStateLoss()
}
override fun needSteepStateBar() = true
override fun setStatusBar() {
super.setStatusBar()
StatusBarUtil.transparencyBar(this)
StatusBarUtil.StatusBarLightMode(this)
}
}

View File

@@ -23,13 +23,11 @@ class HomeSingleAnchorAdapter :
BaseQuickAdapter<HomeRoomInfo, BaseViewHolder>(R.layout.item_home_single_anchor) {
override fun convert(helper: BaseViewHolder, item: HomeRoomInfo) {
helper.setText(R.id.tv_nickname, if (!TextUtils.isEmptyText(item.nick)) item.nick else "")
helper.setText(
R.id.tv_room_name,
if (!TextUtils.isEmptyText(item.title)) item.title else ""
)
ImageLoadUtilsV2.loadImage(helper.getView(R.id.iv_avatar), item.avatar)
ImageLoadUtilsV2.loadImage(helper.getView(R.id.iv_avatar_big), item.avatar, false, 8)
val ivPking = helper.getView<SVGAImageView>(R.id.iv_pking)
val ivTag = helper.getView<ImageView>(R.id.iv_tag)
ivPking.isVisible = item.isCrossPking
@@ -43,10 +41,7 @@ class HomeSingleAnchorAdapter :
R.id.iv_gender,
if (item.gender == 1) R.drawable.ic_gender_male else R.drawable.ic_gender_female
)
helper.setText(
R.id.tv_topic,
if (!TextUtils.isEmptyText(item.roomDesc)) item.roomDesc else ""
)
helper.itemView.setOnClickListener {
StatisticManager.Instance()
.onEvent(StatisticsProtocol.EVENT_RQZB_ROOM_SUCCESS, "人气主播进入房间成功")

View File

@@ -0,0 +1,161 @@
package com.mango.moshen.home.adapter;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.RectF;
import android.view.View;
import android.view.animation.Interpolator;
import android.view.animation.LinearInterpolator;
import com.mango.moshen.R;
import com.mango.moshen.ui.widget.magicindicator.FragmentContainerHelper;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.model.PositionData;
import java.util.List;
/**
* 直线viewpager指示器带颜色渐变
* 博客: http://hackware.lucode.net
* Created by hackware on 2016/6/26.
*/
public class ImagePagerIndicator extends View implements IPagerIndicator {
// 控制动画
private Interpolator mStartInterpolator = new LinearInterpolator();
private Interpolator mEndInterpolator = new LinearInterpolator();
private float mYOffset; // 相对于底部的偏移量如果你想让直线位于title上方设置它即可
private float mLineHeight;
private float mXOffset;
private float mLineWidth;
private float mRoundRadius;
private List<PositionData> mPositionDataList;
private RectF mLineRect = new RectF();
private Bitmap bitmap;
public ImagePagerIndicator(Context context) {
this(context, R.drawable.ic_home_indicator_top);
}
public ImagePagerIndicator(Context context, int resId) {
super(context);
init(context, resId);
}
private void init(Context context, int resId) {
bitmap = BitmapFactory.decodeResource(context.getResources(), resId);
mLineHeight = bitmap.getHeight();
mLineWidth = bitmap.getWidth();
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(bitmap, null, mLineRect, null);
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
if (mPositionDataList == null || mPositionDataList.isEmpty()) {
return;
}
// 计算锚点位置
PositionData current = FragmentContainerHelper.getImitativePositionData(mPositionDataList, position);
PositionData next = FragmentContainerHelper.getImitativePositionData(mPositionDataList, position + 1);
float leftX;
float nextLeftX;
float rightX;
float nextRightX;
leftX = current.mLeft + (current.width() - mLineWidth) / 2;
nextLeftX = next.mLeft + (next.width() - mLineWidth) / 2;
rightX = current.mLeft + (current.width() + mLineWidth) / 2;
nextRightX = next.mLeft + (next.width() + mLineWidth) / 2;
mLineRect.left = leftX + (nextLeftX - leftX) * mStartInterpolator.getInterpolation(positionOffset);
mLineRect.right = rightX + (nextRightX - rightX) * mEndInterpolator.getInterpolation(positionOffset);
mLineRect.top = getHeight() - mLineHeight - mYOffset;
mLineRect.bottom = getHeight() - mYOffset;
invalidate();
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
@Override
public void onPositionDataProvide(List<PositionData> dataList) {
mPositionDataList = dataList;
}
public float getYOffset() {
return mYOffset;
}
public void setYOffset(float yOffset) {
mYOffset = yOffset;
}
public float getXOffset() {
return mXOffset;
}
public void setXOffset(float xOffset) {
mXOffset = xOffset;
}
public float getLineHeight() {
return mLineHeight;
}
public void setLineHeight(float lineHeight) {
mLineHeight = lineHeight;
}
public float getLineWidth() {
return mLineWidth;
}
public void setLineWidth(float lineWidth) {
mLineWidth = lineWidth;
}
public float getRoundRadius() {
return mRoundRadius;
}
public void setRoundRadius(float roundRadius) {
mRoundRadius = roundRadius;
}
public Interpolator getStartInterpolator() {
return mStartInterpolator;
}
public void setStartInterpolator(Interpolator startInterpolator) {
mStartInterpolator = startInterpolator;
if (mStartInterpolator == null) {
mStartInterpolator = new LinearInterpolator();
}
}
public Interpolator getEndInterpolator() {
return mEndInterpolator;
}
public void setEndInterpolator(Interpolator endInterpolator) {
mEndInterpolator = endInterpolator;
if (mEndInterpolator == null) {
mEndInterpolator = new LinearInterpolator();
}
}
}

View File

@@ -20,12 +20,14 @@ import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.indica
import java.util.List;
public class MainMagicIndicatorAdapter extends CommonNavigatorAdapter {
private final Context mContext;
private final List<? extends CharSequence> mTitleList;
private int textSize = 24;
private float minScale = 0.83f;
private boolean showIndicator =true;
private float minScale = 1f;
private boolean showIndicator = true;
private int resId = R.drawable.ic_home_indicator_top;
public MainMagicIndicatorAdapter(Context context, List<? extends CharSequence> charSequences ) {
this.mContext = context;
@@ -41,8 +43,8 @@ public class MainMagicIndicatorAdapter extends CommonNavigatorAdapter {
@Override
public IPagerTitleView getTitleView(Context context, final int i) {
ScaleTransitionPagerTitleView scaleTransitionPagerTitleView = new ScaleTransitionPagerTitleView(context, true);
scaleTransitionPagerTitleView.setNormalColor(ContextCompat.getColor(context,R.color.color_444444));
scaleTransitionPagerTitleView.setSelectedColor(ContextCompat.getColor(context,R.color.color_333333));
scaleTransitionPagerTitleView.setNormalColor(0xFF8A8CAB);
scaleTransitionPagerTitleView.setSelectedColor(0xFF3D3D3D);
scaleTransitionPagerTitleView.setMinScale(minScale);
scaleTransitionPagerTitleView.setTextSize(textSize);
int padding = UIUtil.dip2px(context, 5);
@@ -61,17 +63,11 @@ public class MainMagicIndicatorAdapter extends CommonNavigatorAdapter {
@Override
public IPagerIndicator getIndicator(Context context) {
if (!showIndicator) return null;
LinePagerIndicator indicator = new LinePagerIndicator(context);
indicator.setMode(LinePagerIndicator.MODE_EXACTLY);
indicator.setLineHeight(UIUtil.dip2px(mContext, 10));
indicator.setRoundRadius(UIUtil.dip2px(mContext, 10));
indicator.setLineWidth(UIUtil.dip2px(mContext, 48));
indicator.setColors(Color.parseColor("#FFFFD15A"));
FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp.gravity = Gravity.END;
lp.bottomMargin = UIUtil.dip2px(mContext, 0);
indicator.setLayoutParams(lp);
return indicator;
return new ImagePagerIndicator(context, resId);
}
public void setResId(int resId) {
this.resId = resId;
}
public int getTextSize() {

View File

@@ -1,10 +1,6 @@
package com.mango.moshen.home.adapter;
import android.content.Context;
import android.graphics.Color;
import android.view.Gravity;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.TextView;
import androidx.core.content.ContextCompat;
@@ -15,7 +11,6 @@ import com.mango.moshen.ui.widget.magicindicator.buildins.UIUtil;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.abs.IPagerTitleView;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.indicators.LinePagerIndicator;
import com.mango.moshen.ui.widget.magicindicator.buildins.commonnavigator.indicators.WrapPagerIndicator;
import java.util.List;

View File

@@ -17,8 +17,8 @@ import com.mango.core.utils.TextUtils
class RoomHotAdapter : BaseMultiItemQuickAdapter<HomeRoomInfo, BaseViewHolder>(null) {
init {
addItemType(HomeRoomInfo.TYPE_ROOM, R.layout.item_room_hot_temp)
addItemType(HomeRoomInfo.TYPE_BROADCAST, R.layout.item_room_hot_temp)
addItemType(HomeRoomInfo.TYPE_ROOM, R.layout.item_room_hot)
addItemType(HomeRoomInfo.TYPE_BROADCAST, R.layout.item_room_hot)
addItemType(HomeRoomInfo.TYPE_BANNER, R.layout.item_room_banner)
}
@@ -41,7 +41,7 @@ class RoomHotAdapter : BaseMultiItemQuickAdapter<HomeRoomInfo, BaseViewHolder>(n
helper.setVisible(R.id.iv_room_tag, !TextUtils.isEmptyText(item.tagPict))
helper.getView<ImageView>(R.id.iv_room_tag).load(item.tagPict)
/* val avatars: Array<ImageView> = arrayOf(
val avatars: Array<ImageView> = arrayOf(
helper.getView(R.id.iv_avatar_0),
helper.getView(R.id.iv_avatar_1),
helper.getView(R.id.iv_avatar_2),
@@ -52,7 +52,7 @@ class RoomHotAdapter : BaseMultiItemQuickAdapter<HomeRoomInfo, BaseViewHolder>(n
val avatarUrl = item.micUsers?.getOrNull(i)?.avatar
avatars[i].isGone = avatarUrl.isNullOrBlank()
avatars[i].load(avatarUrl)
}*/
}
} else {
BannerHelper.setBanner(helper.getView(R.id.roll_view), item.bannerVoList)
}

View File

@@ -30,7 +30,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener,
private lateinit var mBinding: FragmentHomeBinding
override fun onClick(v: View) {
when (v.id) {
R.id.iv_search -> {
R.id.tv_search -> {
StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_SEARCH, "进入搜索页")
SearchActivity.start(activity)
//为啥触发条件这么恶心
@@ -75,20 +75,20 @@ class HomeFragment : BaseFragment(), View.OnClickListener,
val fragmentPos: MutableList<Fragment> = ArrayList()
val tagList: MutableList<String> = ArrayList()
tagList.add("推荐")
tagList.add("派对")
tagList.add("直播")
fragmentPos.add(RecommendFragment.newInstance())
fragmentPos.add(PartyFragment.newInstance())
fragmentPos.add(LiveFragment.newInstance())
val commonNavigator = CommonNavigator(context)
commonNavigator.setTitleWrapContent(true)
val magicIndicatorAdapter = MainMagicIndicatorAdapter(context, tagList)
magicIndicatorAdapter.textSize = 24
magicIndicatorAdapter.setResId(R.drawable.ic_home_indicator_top)
magicIndicatorAdapter.textSize = 20
magicIndicatorAdapter.minScale = 0.9f
magicIndicatorAdapter.setOnItemSelectListener(this)
commonNavigator.adapter = magicIndicatorAdapter
mBinding.magicIndicator.navigator = commonNavigator
commonNavigator.titleContainer.showDividers = LinearLayout.SHOW_DIVIDER_MIDDLE
mBinding.viewPager.offscreenPageLimit = 5
mBinding.viewPager.offscreenPageLimit = 2
mBinding.viewPager.adapter =
RoomVPAdapter(childFragmentManager, fragmentPos)
ViewPagerHelper.bind(mBinding.magicIndicator, mBinding.viewPager)

View File

@@ -105,13 +105,11 @@ public class HomeTabHomeFragment extends BaseFragment {
}
private void initRecyclerView() {
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.setLayoutManager(new LinearLayoutManager(getContext(),LinearLayoutManager.HORIZONTAL,false));
recyclerView.setItemAnimator(null);
mHomeRoomAdapter = new HomeRoomFragmentAdapter(getContext());
mHomeRoomAdapter.setEnableLoadMore(false);
GridLayoutManager gridLayoutManager = new GridLayoutManager(getContext(), ROWS);
mHomeRoomAdapter.setEnableLoadMore(false);
recyclerView.setLayoutManager(gridLayoutManager);
recyclerView.setAdapter(mHomeRoomAdapter);
View emptyView = getLayoutInflater().inflate(R.layout.layout_home_room_empty, null);

View File

@@ -17,7 +17,6 @@ import com.mango.moshen.base.BaseViewBindingFragment
import com.mango.moshen.databinding.FragmentLiveBinding
import com.mango.moshen.home.HomeViewModel
import com.mango.moshen.home.adapter.HomeLiveTopAdapter
import com.mango.moshen.home.adapter.MainMagicIndicatorAdapter
import com.mango.moshen.home.adapter.PartyMagicIndicatorAdapter
import com.mango.moshen.ui.utils.RVDelegate
import com.mango.moshen.ui.widget.magicindicator.ViewPagerHelper
@@ -36,7 +35,6 @@ import org.greenrobot.eventbus.ThreadMode
* 魔力首页
*/
class LiveFragment : BaseViewBindingFragment<FragmentLiveBinding>(),
MainMagicIndicatorAdapter.OnItemSelectListener,
PartyMagicIndicatorAdapter.OnItemSelectListener {
private val mFragments: ArrayList<Fragment> = ArrayList()

View File

@@ -9,6 +9,7 @@ import androidx.core.view.isGone
import androidx.databinding.DataBindingUtil
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.scwang.smartrefresh.layout.internal.ProgressDrawable
import com.mango.moshen.R
@@ -30,6 +31,7 @@ import com.mango.core.home.event.RefreshHomeDataEvent
import com.mango.core.initial.InitialModel
import com.mango.core.statistic.StatisticManager
import com.mango.core.statistic.protocol.StatisticsProtocol
import com.mango.moshen.home.activity.MoreRoomActivity
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
@@ -102,7 +104,6 @@ class RecommendFragment : BaseFragment(),
)
for (i in resourceViews.indices) {
resourceViews[i].load(it[i].icon)
resourceViews[i].setOnClickListener { _ ->
currMatchClick = abcArray[i]
StatisticManager.Instance().onEvent(
@@ -137,7 +138,7 @@ class RecommendFragment : BaseFragment(),
}
mBinding.tvMore.setOnClickListener {
(parentFragment as HomeFragment).onItemSelect(1, null)
MoreRoomActivity.start(mContext)
StatisticManager.Instance()
.onEvent(StatisticsProtocol.EVENT_ZXTJ_ROOM_MORE_CLICK, "最新推荐更多点击")
}
@@ -161,7 +162,7 @@ class RecommendFragment : BaseFragment(),
private fun initTitleTab() {
val tagList = InitialModel.get().cacheInitInfo?.homeTabList.let {
if (it?.size == 2) it else arrayListOf( "热门房间","组队开黑")
if (it?.size == 2) it else arrayListOf("热门房间", "组队开黑")
}
mFragmentsBottom.add(HomePlayFragment.newInstance())
mFragmentsBottom.add(RoomHotFragment.newInstance())
@@ -171,7 +172,9 @@ class RecommendFragment : BaseFragment(),
val commonNavigator = CommonNavigator(context)
commonNavigator.setTitleWrapContent(true)
val magicIndicatorAdapter = MainMagicIndicatorAdapter(context, tagList)
magicIndicatorAdapter.textSize = 16
magicIndicatorAdapter.setResId(R.drawable.ic_home_indicator_center)
magicIndicatorAdapter.textSize = 15
magicIndicatorAdapter.minScale = 1f
magicIndicatorAdapter.setOnItemSelectListener(this)
commonNavigator.adapter = magicIndicatorAdapter
mBinding.magicIndicator.navigator = commonNavigator
@@ -186,7 +189,7 @@ class RecommendFragment : BaseFragment(),
singleAnchorAdapter = HomeSingleAnchorAdapter()
mBinding.rvSingleAnchor.adapter = singleAnchorAdapter
val layoutManager =
LinearLayoutManager(requireContext(), LinearLayoutManager.HORIZONTAL, false)
GridLayoutManager(requireContext(),4, LinearLayoutManager.VERTICAL, false)
mBinding.rvSingleAnchor.layoutManager = layoutManager
homeViewModel.singleAnchorHomeLiveData.observe(this) {
if (it.data.isNullOrEmpty()) {

View File

@@ -1,93 +0,0 @@
package com.mango.moshen.home.fragment
import android.os.Bundle
import androidx.fragment.app.activityViewModels
import androidx.recyclerview.widget.LinearLayoutManager
import com.mango.core.DemoCache
import com.mango.moshen.base.BaseViewBindingFragment
import com.mango.moshen.common.EmptyViewHelper
import com.mango.moshen.databinding.FragmentRoomHotBinding
import com.mango.moshen.home.HomeViewModel
import com.mango.moshen.home.adapter.RoomHotAdapter
import com.mango.moshen.ui.utils.RVDelegate
import com.mango.core.home.bean.HomeRoomInfo
import com.mango.core.home.event.RefreshHomeDataEvent
import com.mango.core.statistic.StatisticManager
import com.mango.core.statistic.protocol.StatisticsProtocol
import com.mango.moshen.ui.search.SearchActivity
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
class TempRoomHotFragment : BaseViewBindingFragment<FragmentRoomHotBinding>() {
companion object {
fun newInstance(): TempRoomHotFragment {
val args = Bundle()
val fragment = TempRoomHotFragment()
fragment.arguments = args
return fragment
}
}
private lateinit var roomHotAdapter : RoomHotAdapter
private lateinit var rvDelegate: RVDelegate<HomeRoomInfo>
private var page = 1
private val pageSize = Int.MAX_VALUE
private val homeViewModel: HomeViewModel by activityViewModels()
override fun init() {
roomHotAdapter = RoomHotAdapter()
rvDelegate = RVDelegate.Builder<HomeRoomInfo>()
.setAdapter(roomHotAdapter)
.setRecyclerView(binding.recyclerView)
.setEmptyView(EmptyViewHelper.createEmptyView(context, "暂无房间"))
.setLayoutManager(LinearLayoutManager(mContext))
.setRefreshLayout(binding.swipeRefresh)
.setPageSize(pageSize)
.build()
binding.swipeRefresh.isRefreshing = true
binding.swipeRefresh.setOnRefreshListener {
loadData(true)
}
homeViewModel.hotRoomLiveData.observe(this) {
rvDelegate.loadData(it)
}
binding.tvSearch.setOnClickListener {
StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_SEARCH, "进入搜索页")
SearchActivity.start(activity)
//为啥触发条件这么恶心
if (DemoCache.readAnchorCardView() == 0) {
DemoCache.saveAnchorCardView(1)
}
}
}
override fun onResume() {
super.onResume()
loadData(true)
}
private fun loadData(isRefresh: Boolean) {
homeViewModel.getHotRoom(page, pageSize)
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
EventBus.getDefault().register(this)
}
override fun onDestroy() {
super.onDestroy()
EventBus.getDefault().unregister(this)
}
@Subscribe(threadMode = ThreadMode.MAIN)
fun onRefreshHomeDataEvent(event: RefreshHomeDataEvent?) {
if (isResumed) loadData(true)
}
}

View File

@@ -24,7 +24,7 @@ import java.util.List;
* Created by hackware on 2016/6/26.
*/
public class WrapPagerIndicator extends View implements IPagerIndicator {
private final int[] mGradientColors = {0xFFFFCB47, 0xFFFFA936};
private final int[] mGradientColors = {0xFF5BC8F8, 0xFF66D9D9};
//渐变位置
private final float[] mGradientPosition = new float[]{0, 1};
private int mVerticalPadding;

Binary file not shown.

After

Width:  |  Height:  |  Size: 988 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 B

After

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ffffffff" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp"
android:topLeftRadius="12dp"
android:topRightRadius="12dp" />
</shape>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="135"
android:endColor="#FFFFFF"
android:startColor="#FDEEEE"
android:type="linear"
android:useLevel="true" />
<corners android:topRightRadius="12dp" />
</shape>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="90"
android:endColor="#CCEAFFFA"
android:startColor="#CCF7FBF0"
android:type="linear"
android:useLevel="true" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp"
android:topLeftRadius="12dp"
android:topRightRadius="12dp" />
</shape>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="45"
android:endColor="#00000000"
android:startColor="#4d000000"
android:type="linear"
android:useLevel="true" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp" />
</shape>

View File

@@ -0,0 +1,18 @@
<?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="match_parent"
android:background="@color/white"
android:orientation="vertical">
<com.mango.moshen.base.TitleBar
android:id="@+id/title_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_30" />
<androidx.fragment.app.FragmentContainerView
android:id="@+id/fcv"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>

View File

@@ -18,9 +18,14 @@
android:background="#FFF4F4FA">
<View
android:layout_width="match_parent"
android:layout_height="336dp"
android:background="@drawable/bg_home_top" />
android:id="@+id/view_bg"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/bg_me_page"
app:layout_constraintDimensionRatio="750:1334"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="match_parent"
@@ -47,8 +52,23 @@
android:layout_height="0dp"
android:layout_weight="1" />
<com.mango.xchat_android_library.widget.DrawableCenterTextView
android:id="@+id/tv_search"
android:layout_width="148dp"
android:layout_height="30dp"
android:layout_gravity="end"
android:layout_marginEnd="15dp"
android:background="@drawable/shape_room_temp"
android:drawableStart="@mipmap/ic_search_main"
android:drawablePadding="6dp"
android:gravity="center"
android:onClick="@{click}"
android:text="搜索房间/昵称/ID"
android:textColor="#BABBCD"
android:textSize="12sp" />
<ImageView
android:id="@+id/iv_search"
android:id="@+id/iv_ranking"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_10"
@@ -56,7 +76,7 @@
android:adjustViewBounds="true"
android:onClick="@{click}"
android:scaleType="center"
android:src="@drawable/ic_home_search" />
android:src="@drawable/ic_home_rank" />
<ImageView
android:id="@+id/iv_my_room"
@@ -69,16 +89,6 @@
android:scaleType="center"
android:src="@drawable/ic_home_my_room" />
<ImageView
android:id="@+id/iv_ranking"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_10"
android:layout_marginBottom="2dp"
android:adjustViewBounds="true"
android:onClick="@{click}"
android:scaleType="center"
android:src="@drawable/ic_home_rank" />
</LinearLayout>

View File

@@ -79,63 +79,47 @@
android:layout_marginEnd="15dp"
android:orientation="horizontal">
<com.mango.moshen.ui.widget.RectLayout
<ImageView
android:id="@+id/iv_resource_0"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="176"
app:hw_ratio="0.341">
<ImageView
android:id="@+id/iv_resource_0"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/default_banner" />
</com.mango.moshen.ui.widget.RectLayout>
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="4" />
android:layout_height="match_parent"
android:layout_weight="1"
android:scaleType="centerCrop"
android:src="@drawable/ic_resource_0" />
<ImageView
android:id="@+id/iv_resource_1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="82"
android:layout_marginStart="10dp"
android:layout_weight="1"
android:scaleType="centerCrop"
android:src="@drawable/default_banner" />
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="4" />
android:src="@drawable/ic_resource_1" />
<ImageView
android:id="@+id/iv_resource_2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="82"
android:layout_marginStart="10dp"
android:layout_weight="1"
android:scaleType="centerCrop"
android:src="@drawable/default_banner" />
android:src="@drawable/ic_resource_2" />
</LinearLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
android:layout_marginTop="16dp">
<TextView
android:id="@+id/tv_recommend_room"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableStart="@drawable/ic_home_recommend_tag"
android:drawablePadding="4dp"
android:includeFontPadding="false"
android:paddingStart="16dp"
android:text="最新推荐"
android:text="精选推荐"
android:textColor="@color/color_333333"
android:textSize="16sp"
android:textStyle="bold"
@@ -153,7 +137,7 @@
android:gravity="center"
android:includeFontPadding="false"
android:text="更多"
android:textColor="#b3333333"
android:textColor="#8A8CAB"
android:textSize="12sp" />
</FrameLayout>
@@ -162,8 +146,8 @@
android:id="@+id/fg_recommend_room"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/dp_5"
android:paddingBottom="@dimen/dp_5"
android:paddingTop="@dimen/dp_8"
android:paddingBottom="@dimen/dp_8"
android:visibility="visible"
tools:visibility="visible" />
@@ -172,7 +156,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="15dp"
android:paddingTop="5dp"
android:paddingTop="8dp"
android:visibility="gone"
tools:visibility="visible">
@@ -193,8 +177,8 @@
android:drawableRight="@drawable/arrow_right"
android:drawablePadding="@dimen/dp_3"
android:text="更多"
android:textColor="@color/color_666666"
android:textSize="10sp" />
android:textColor="#8A8CAB"
android:textSize="12sp" />
</FrameLayout>
@@ -202,11 +186,14 @@
android:id="@+id/rv_single_anchor"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="12dp"
android:layout_marginBottom="@dimen/dp_8"
android:background="@drawable/shape_room_single_bg"
android:overScrollMode="never"
android:paddingStart="5dp"
android:paddingTop="@dimen/dp_10"
android:paddingEnd="5dp"
android:paddingBottom="@dimen/dp_10"
android:scrollbars="none"
android:visibility="gone"
tools:visibility="visible" />
@@ -219,6 +206,7 @@
android:id="@+id/fl_indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:paddingBottom="5dp">
<com.mango.moshen.ui.widget.magicindicator.MagicIndicator

View File

@@ -5,36 +5,11 @@
android:clipToPadding="false"
android:orientation="vertical">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:src="@mipmap/ic_logo_main" />
<com.mango.xchat_android_library.widget.DrawableCenterTextView
android:id="@+id/tv_search"
android:layout_width="160dp"
android:layout_height="30dp"
android:layout_gravity="end"
android:layout_marginEnd="15dp"
android:background="@drawable/shape_room_temp"
android:drawableStart="@mipmap/ic_search_main"
android:gravity="center"
android:text="搜索房间/昵称/ID"
android:textColor="#BABBCD"
android:textSize="14sp" />
</FrameLayout>
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
android:id="@+id/swipe_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="15dp">
android:layout_marginTop="5dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"

View File

@@ -3,125 +3,74 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/root_view"
android:layout_width="188dp"
android:layout_height="96dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="5dp"
android:orientation="vertical">
android:layout_marginBottom="12dp"
android:orientation="vertical"
tools:layout_width="80dp">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_avatar_big"
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar"
android:layout_width="0dp"
android:layout_height="0dp"
android:src="@drawable/default_cover"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="90:96"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/bg_single_anchor_home"
app:layout_constraintBottom_toBottomOf="parent"
android:scaleType="centerCrop"
android:src="@drawable/default_avatar"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:scaleType="centerCrop"
android:src="@drawable/default_avatar"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_room_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_8"
android:layout_marginTop="5dp"
android:layout_marginRight="@dimen/dp_15"
android:ellipsize="end"
android:lines="1"
android:textColor="@color/color_333333"
android:textSize="@dimen/sp_15"
android:textStyle="bold"
app:layout_constraintLeft_toRightOf="@id/iv_avatar"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="@id/iv_avatar"
tools:text="房间名称" />
<TextView
android:id="@+id/tv_nickname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:ellipsize="end"
android:lines="1"
android:textColor="@color/color_333333"
android:textSize="10sp"
app:layout_constraintLeft_toLeftOf="@id/tv_room_name"
app:layout_constraintTop_toBottomOf="@id/tv_room_name"
tools:text="用户昵称" />
android:textColor="#3D3D3D"
android:textSize="@dimen/sp_12"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/iv_avatar"
tools:text="房间名称" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_gender"
android:layout_width="@dimen/dp_21"
android:layout_height="@dimen/dp_14"
android:layout_marginLeft="@dimen/dp_4"
app:layout_constraintBottom_toBottomOf="@id/tv_nickname"
app:layout_constraintLeft_toRightOf="@id/tv_nickname"
app:layout_constraintTop_toTopOf="@id/tv_nickname"
android:layout_marginEnd="12dp"
app:layout_constraintBottom_toBottomOf="@id/iv_avatar"
app:layout_constraintEnd_toEndOf="@id/iv_avatar"
tools:src="@drawable/ic_gender_female" />
<LinearLayout
android:id="@+id/ll_topic"
android:layout_width="0dp"
android:layout_height="@dimen/dp_28"
android:layout_marginLeft="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:layout_marginBottom="@dimen/dp_8"
android:background="@drawable/bg_9dadff_radius_15"
android:gravity="center"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_8"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/iv_tag"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_18"
android:layout_marginStart="@dimen/dp_8"
android:layout_height="@dimen/dp_12"
android:visibility="gone"
tools:src="@drawable/tag_101" />
tools:src="@drawable/tag_101"
tools:visibility="visible" />
<com.opensource.svgaplayer.SVGAImageView
android:id="@+id/iv_pking"
android:layout_width="40dp"
android:layout_height="20dp"
android:layout_marginStart="@dimen/dp_8"
android:layout_width="24dp"
android:layout_height="12dp"
android:visibility="gone" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tv_topic"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:ellipsize="end"
android:singleLine="true"
android:textColor="@color/color_333333"
android:textSize="@dimen/sp_10"
tools:text="房间标题话题话题话题" />
</LinearLayout>

View File

@@ -3,27 +3,17 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/ll_container"
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="2dp"
tools:layout_width="120dp">
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/bg_home_recommend_item"
app:layout_constraintDimensionRatio="236:276"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
android:layout_marginStart="4dp"
android:layout_marginEnd="4dp"
tools:layout_width="100dp">
<com.mango.moshen.ui.widget.SquareLayout
android:id="@+id/square_layout"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginEnd="4.5dp"
android:layout_width="100dp"
android:layout_height="100dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
@@ -33,16 +23,16 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/default_cover"
app:riv_corner_radius_bottom_left="0dp"
app:riv_corner_radius_bottom_right="0dp"
app:riv_corner_radius_top_left="8dp"
app:riv_corner_radius_top_right="8dp" />
app:riv_corner_radius_bottom_left="12dp"
app:riv_corner_radius_bottom_right="12dp"
app:riv_corner_radius_top_left="12dp"
app:riv_corner_radius_top_right="12dp" />
<TextView
android:id="@+id/tv_online_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_gravity="center"
android:layout_marginStart="2dp"
android:layout_marginBottom="2dp"
@@ -95,23 +85,31 @@
tools:visibility="visible" />
</com.mango.moshen.ui.widget.SquareLayout>
<View
android:layout_width="0dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:background="@drawable/shape_room_title_bg"
android:layout_height="26dp"/>
<TextView
android:id="@+id/tv_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_8"
android:layout_marginTop="2dp"
android:layout_marginEnd="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_8"
android:ellipsize="end"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:maxLines="1"
android:textColor="@color/color_333333"
android:textColor="@color/white"
android:textSize="12dp"
android:layout_marginBottom="6dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/square_layout"
app:layout_constraintBottom_toBottomOf="@id/square_layout"
tools:text="房间名称房间名称房间名称" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -4,39 +4,30 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="10dp">
android:layout_marginStart="12dp"
android:layout_marginTop="6dp"
android:layout_marginEnd="12dp"
android:layout_marginBottom="6dp">
<View
android:id="@+id/view_bg"
android:layout_width="0dp"
android:layout_height="74dp"
android:layout_height="90dp"
android:layout_marginStart="15dp"
android:background="@drawable/bg_home_hot_item"
android:background="@drawable/shape_room_hot_bg"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view_room_cover"
android:layout_width="66dp"
android:layout_height="66dp"
android:layout_marginTop="2dp"
android:background="@drawable/bg_home_hot_avatar"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.mango.moshen.common.widget.CircleImageView
<ImageView
android:id="@+id/iv_room_image"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_width="75dp"
android:layout_height="75dp"
android:src="@drawable/default_cover"
app:layout_constraintBottom_toBottomOf="@id/view_room_cover"
app:layout_constraintEnd_toEndOf="@id/view_room_cover"
app:layout_constraintStart_toStartOf="@id/view_room_cover"
app:layout_constraintTop_toTopOf="@id/view_room_cover" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_in_pk"
@@ -62,12 +53,12 @@
android:layout_marginStart="10dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/text_primary"
android:textColor="#161958"
android:textSize="14sp"
android:textStyle="bold"
app:layout_constraintBottom_toTopOf="@id/iv_room_tag"
app:layout_constraintStart_toEndOf="@id/view_room_cover"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/tv_id"
app:layout_constraintStart_toEndOf="@id/iv_room_image"
app:layout_constraintTop_toTopOf="@id/iv_room_image"
app:layout_constraintVertical_chainStyle="packed"
tools:text="余生点唱歌曲交友房间" />
@@ -75,10 +66,10 @@
android:id="@+id/iv_room_tag"
android:layout_width="wrap_content"
android:layout_height="14dp"
android:layout_marginTop="11dp"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginTop="3dp"
app:layout_constraintBottom_toBottomOf="@id/iv_room_image"
app:layout_constraintStart_toStartOf="@id/tv_room_title"
app:layout_constraintTop_toBottomOf="@id/tv_room_title"
app:layout_constraintTop_toBottomOf="@id/tv_id"
tools:src="@drawable/tag_101"
tools:text="聊天" />
@@ -86,25 +77,28 @@
android:id="@+id/tv_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:textColor="#66333333"
android:layout_marginTop="3dp"
android:textColor="#8A8CAB"
android:textSize="12sp"
app:layout_constraintBottom_toBottomOf="@id/iv_room_tag"
app:layout_constraintStart_toEndOf="@id/iv_room_tag"
app:layout_constraintBottom_toTopOf="@id/iv_room_tag"
app:layout_constraintStart_toStartOf="@id/tv_room_title"
app:layout_constraintTop_toBottomOf="@id/tv_room_title"
tools:text="ID:1234" />
<TextView
android:id="@+id/tv_online_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:layout_marginEnd="10dp"
android:layout_height="26dp"
android:layout_marginBottom="10dp"
android:background="@drawable/shape_room_hot_tag_bg"
android:drawableStart="@drawable/ic_home_hot_hot"
android:drawablePadding="2dp"
android:gravity="bottom"
android:gravity="center"
android:includeFontPadding="false"
android:textColor="@color/color_333333"
android:textSize="12sp"
android:paddingStart="8dp"
android:paddingEnd="8dp"
android:textColor="#3D3D3D"
android:textSize="14sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="266" />
@@ -113,51 +107,51 @@
android:id="@+id/fl_avatar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="17dp"
android:layout_marginBottom="20dp"
android:layout_marginEnd="12dp"
android:layout_marginBottom="12dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent">
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar_0"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_width="22dp"
android:layout_height="22dp"
android:src="@drawable/default_avatar"
app:cborder_color="@color/white"
app:cborder_width="1px" />
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar_1"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="14dp"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_marginStart="18dp"
android:src="@drawable/default_avatar"
app:cborder_color="@color/white"
app:cborder_width="1px" />
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar_2"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="28dp"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_marginStart="36dp"
android:src="@drawable/default_avatar"
app:cborder_color="@color/white"
app:cborder_width="1px" />
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar_3"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="44dp"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_marginStart="54dp"
android:src="@drawable/default_avatar"
app:cborder_color="@color/white"
app:cborder_width="1px" />
<com.mango.moshen.common.widget.CircleImageView
android:id="@+id/iv_avatar_4"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="58dp"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_marginStart="72dp"
android:src="@drawable/default_avatar"
app:cborder_color="@color/white"
app:cborder_width="1px" />

View File

@@ -1,105 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="10dp">
<View
android:id="@+id/view_bg"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_marginStart="15dp"
android:background="@drawable/bg_home_hot_item"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/iv_room_image"
android:layout_width="75dp"
android:layout_height="75dp"
android:src="@drawable/default_cover"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintVertical_bias="0.3"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_in_pk"
android:layout_width="44dp"
android:layout_height="16dp"
android:background="@drawable/bg_shape_play_pk"
android:gravity="center"
android:includeFontPadding="false"
android:text="PK中"
android:textColor="#ffffffff"
android:textSize="12dp"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/iv_room_image"
app:layout_constraintEnd_toEndOf="@id/iv_room_image"
app:layout_constraintStart_toStartOf="@id/iv_room_image"
tools:visibility="visible" />
<TextView
android:id="@+id/tv_room_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/text_primary"
android:textSize="14sp"
android:textStyle="bold"
app:layout_constraintBottom_toTopOf="@id/tv_id"
app:layout_constraintStart_toEndOf="@id/iv_room_image"
app:layout_constraintTop_toTopOf="@id/iv_room_image"
app:layout_constraintVertical_chainStyle="packed"
tools:text="余生点唱歌曲交友房间" />
<ImageView
android:id="@+id/iv_room_tag"
android:layout_width="wrap_content"
android:layout_height="14dp"
android:layout_marginTop="3dp"
app:layout_constraintBottom_toBottomOf="@id/iv_room_image"
app:layout_constraintStart_toStartOf="@id/tv_room_title"
app:layout_constraintTop_toBottomOf="@id/tv_id"
tools:src="@drawable/tag_101"
tools:text="聊天" />
<TextView
android:id="@+id/tv_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#66333333"
android:textSize="12sp"
android:layout_marginTop="3dp"
app:layout_constraintBottom_toTopOf="@id/iv_room_tag"
app:layout_constraintStart_toStartOf="@id/tv_room_title"
app:layout_constraintTop_toBottomOf="@id/tv_room_title"
tools:text="ID:1234" />
<TextView
android:id="@+id/tv_online_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:layout_marginEnd="10dp"
android:drawableStart="@drawable/ic_home_hot_hot"
android:drawablePadding="2dp"
android:gravity="bottom"
android:layout_marginBottom="10dp"
android:includeFontPadding="false"
android:textColor="@color/color_333333"
android:textSize="12sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
tools:text="266" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -4,5 +4,5 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:paddingTop="2dp" />
android:paddingTop="6dp" />

View File

@@ -3,7 +3,7 @@
<SinaWeibo Enable="false" />
<TencentWeibo Enable="false" />
<Douban Enable="false" />
<QZone AppId="101937205" AppKey="458ed9d671ba4b177799189db5fbc434" ShareByAppClient="true" />
<QZone AppId="101902443" AppKey="715dd2601777347cd57af77c3e28402f" ShareByAppClient="true" />
<Renren Enable="false" />
<KaiXin Enable="false" />
<Facebook Enable="false" />
@@ -18,7 +18,7 @@
<ShortMessage Enable="false" />
<Wechat AppId="wxee68b213a1bd632b" AppSecret="c5ecafb6a733a32410a5a9b9d560998a" />
<WechatMoments AppId="wxee68b213a1bd632b" AppSecret="c5ecafb6a733a32410a5a9b9d560998a" />
<QQ AppId="101937205" AppKey="458ed9d671ba4b177799189db5fbc434" ShareByAppClient="true" />
<QQ AppId="101902443" AppKey="715dd2601777347cd57af77c3e28402f" ShareByAppClient="true" />
<Instapaper Enable="false" />
<Pocket Enable="false" />
<YouDao Enable="false" />