feat: 版本提测
6
app/src/common/res/drawable/bg_ffffff_topr16.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="16dp" />
|
||||
<solid android:color="#ffffff"/>
|
||||
</shape>
|
BIN
app/src/common/res/mipmap-xhdpi/ic_private_chat.png
Normal file
After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.0 KiB |
@@ -150,11 +150,11 @@ public class ButtonItemFactory {
|
||||
}
|
||||
}
|
||||
|
||||
if (gift) {
|
||||
if (!SuperAdminUtil.isSuperAdmin()) {
|
||||
buttonItems.add(createSendGiftItem(context, uid, isInRoom, listener));
|
||||
}
|
||||
}
|
||||
// if (gift) {
|
||||
// if (!SuperAdminUtil.isSuperAdmin()) {
|
||||
// buttonItems.add(createSendGiftItem(context, uid, isInRoom, listener));
|
||||
// }
|
||||
// }
|
||||
// 私聊
|
||||
// buttonItems.add(createPrivateChatItem(context, account, isInRoom));
|
||||
|
||||
|
@@ -71,17 +71,23 @@ public class UpMicAdapter extends BaseQuickAdapter<String, BaseViewHolder> {
|
||||
if (roomQueueInfo.mChatRoomMember == null &&
|
||||
(!AvRoomDataManager.get().isLeaveMode() || position != 0) &&
|
||||
(!AvRoomDataManager.get().isDatingMode() || AvRoomDataManager.get().isManager(String.valueOf(upUid)) || position != 0)) {
|
||||
imageView.setImageResource(position == 0 ? R.drawable.icon_up_mic_true_preside : R.drawable.icon_up_mic_ture);
|
||||
imageView.setImageResource(position == 0 ? R.drawable.icon_up_mic_ture : R.drawable.icon_up_mic_ture);
|
||||
helper.itemView.setClickable(true);
|
||||
helper.itemView.setOnClickListener(v -> Single.just(position).subscribe(consumer));
|
||||
} else {
|
||||
imageView.setImageResource(position == 0 ? R.drawable.icon_up_mic_false_preside : R.drawable.icon_up_mic_false);
|
||||
imageView.setImageResource(position == 0 ? R.drawable.icon_up_mic_false : R.drawable.icon_up_mic_false);
|
||||
helper.itemView.setClickable(false);
|
||||
}
|
||||
|
||||
TextView textView = helper.getView(R.id.tv_pos);
|
||||
if (position == 0) {
|
||||
textView.setText(AvRoomDataManager.get().isDatingMode() ? ResUtil.getString(R.string.avroom_adapter_upmicadapter_01) : ResUtil.getString(R.string.avroom_adapter_upmicadapter_02));
|
||||
if (AvRoomDataManager.get().isHomeParty()) {
|
||||
textView.setText(ResUtil.getString(R.string.avroom_adapter_upmicadapter_02));
|
||||
} else if (AvRoomDataManager.get().isDatingMode()) {
|
||||
textView.setText(ResUtil.getString(R.string.avroom_adapter_upmicadapter_01));
|
||||
} else {
|
||||
textView.setText(String.format(context.getResources().getString(R.string.which_mic_position), position));
|
||||
}
|
||||
} else {
|
||||
if (AvRoomDataManager.get().isDatingMode()) {
|
||||
textView.setText(position + (Constants.maleIndex.contains(position - 1) ? ResUtil.getString(R.string.avroom_adapter_upmicadapter_03) : ResUtil.getString(R.string.avroom_adapter_upmicadapter_04)));
|
||||
|
@@ -127,6 +127,6 @@ abstract class BaseDialogFragment<T : ViewBinding> : RxDialogFragment() {
|
||||
abstract fun init()
|
||||
|
||||
public interface Action{
|
||||
fun <D:Any>onAction(type:Int,data:D?)
|
||||
fun onAction(type:Int,data:Any?)
|
||||
}
|
||||
}
|
@@ -418,7 +418,7 @@ class DressUpMyFragment : BaseListFragment<DressUpInfo>() {
|
||||
dressUpDialog.mDressUpInfo = data
|
||||
dressUpDialog.isMy = true
|
||||
dressUpDialog.mActionCallBack = object : BaseDialogFragment.Action {
|
||||
override fun <D : Any> onAction(type: Int, data: D?) {
|
||||
override fun onAction(type: Int, data: Any?) {
|
||||
onRefresh()
|
||||
}
|
||||
}
|
||||
|
@@ -1,8 +1,9 @@
|
||||
package com.chwl.app.home.fragment
|
||||
|
||||
import android.graphics.Color
|
||||
import android.util.SparseArray
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.LinearLayout
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.fragment.app.FragmentTransaction
|
||||
@@ -15,26 +16,30 @@ import com.chwl.app.R
|
||||
import com.chwl.app.application.IReportConstants
|
||||
import com.chwl.app.application.ReportManager
|
||||
import com.chwl.app.avroom.activity.AVRoomActivity
|
||||
import com.chwl.app.base.BaseDialogFragment
|
||||
import com.chwl.app.base.BaseViewBindingFragment
|
||||
import com.chwl.app.databinding.FragmentHomeRecommendBinding
|
||||
import com.chwl.app.databinding.ItemHomeRecommentdTagBinding
|
||||
import com.chwl.app.home.HomeViewModel
|
||||
import com.chwl.app.home.adapter.HomeBannerAdapter
|
||||
import com.chwl.app.home.adapter.HomeRankViewFlipperAdapter
|
||||
import com.chwl.app.home.dialog.RecommendRoomDialog
|
||||
import com.chwl.app.support.FragmentVisibleStateHelper
|
||||
import com.chwl.app.ui.bean.CountryBean
|
||||
import com.chwl.app.ui.login.dialog.CountrySelectDialog
|
||||
import com.chwl.app.ui.search.SearchActivity
|
||||
import com.chwl.app.ui.user.adapter.HomeRecommendIndicatorAdapter
|
||||
import com.chwl.app.ui.utils.load
|
||||
import com.chwl.app.ui.webview.CommonWebViewActivity
|
||||
import com.chwl.app.ui.widget.magicindicator.buildins.UIUtil
|
||||
import com.chwl.app.ui.widget.magicindicator.buildins.commonnavigator.CommonNavigator
|
||||
import com.chwl.app.utils.CommonJumpHelper
|
||||
import com.chwl.app.utils.HomeUIManager
|
||||
import com.chwl.core.DemoCache
|
||||
import com.chwl.core.home.bean.BannerInfo
|
||||
import com.chwl.core.home.bean.HomeTagInfo
|
||||
import com.chwl.library.common.util.isVerify
|
||||
import com.chwl.library.common.util.toColor
|
||||
import com.chwl.library.utils.ListUtils
|
||||
import com.example.lib_utils.ktx.getDrawableById
|
||||
import com.example.lib_utils.ktx.getColor
|
||||
import com.zhpan.bannerview.BannerViewPager
|
||||
import kotlinx.coroutines.flow.collectLatest
|
||||
import kotlinx.coroutines.launch
|
||||
@@ -45,11 +50,12 @@ import kotlinx.coroutines.launch
|
||||
class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBinding>(),
|
||||
View.OnClickListener {
|
||||
|
||||
private val tabList = mutableListOf<HomeTagInfo>()
|
||||
private var mPosition = 0
|
||||
private val homeViewModel: HomeViewModel by activityViewModels()
|
||||
private val tabList = mutableListOf<HomeTagInfo>()
|
||||
private val fragmentArray = SparseArray<Fragment>()
|
||||
private var tempFragment: Fragment? = null
|
||||
private var mPosition = 0
|
||||
private val tabViewList = mutableListOf<View>()
|
||||
|
||||
override fun init() {
|
||||
initListener()
|
||||
@@ -66,6 +72,10 @@ class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBindi
|
||||
homeViewModel.getBannerInfo()
|
||||
homeViewModel.getHomeResourceInfo()
|
||||
homeViewModel.getHomeRankList()
|
||||
|
||||
if (HomeUIManager.mConfigInfo?.appUiSetting?.backgroundColor.isVerify()) {
|
||||
binding.tabLayoutMarks.setGradientDrawable(R.color.transparent.getColor(),-1,Color.parseColor(HomeUIManager.mConfigInfo?.appUiSetting?.backgroundColor),-1,-1f)
|
||||
}
|
||||
}
|
||||
|
||||
private fun initListener() {
|
||||
@@ -184,7 +194,31 @@ class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBindi
|
||||
DemoCache.saveAnchorCardView(1)
|
||||
}
|
||||
}
|
||||
|
||||
binding.tabLayoutMore.id->{
|
||||
val listData = arrayListOf<CountryBean>()
|
||||
tabList.forEachIndexed { index, homeTagInfo ->
|
||||
listData.add(CountryBean().apply {
|
||||
id = homeTagInfo.id
|
||||
name = homeTagInfo.name
|
||||
icon = homeTagInfo.icon
|
||||
checked = index == mPosition
|
||||
})
|
||||
}
|
||||
|
||||
CountrySelectDialog().apply {
|
||||
isRegion = false
|
||||
mData = listData
|
||||
mActionCallBack = object : BaseDialogFragment.Action {
|
||||
override fun onAction(type: Int, data: Any?) {
|
||||
selectTabView(type)
|
||||
}
|
||||
}
|
||||
}.show(context)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
private fun initTab() {
|
||||
@@ -192,31 +226,38 @@ class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBindi
|
||||
homeViewModel.homeTabLiveData.observe(this) {
|
||||
loadTabList(transformTabList(it))
|
||||
}
|
||||
|
||||
binding.tabLayoutMore.setOnClickListener(this)
|
||||
}
|
||||
|
||||
private fun resetTabIndicator(list: List<String>) {
|
||||
val commonNavigator = CommonNavigator(context)
|
||||
if (list.size <= 4) {
|
||||
commonNavigator.isAdjustMode = true
|
||||
private fun resetTabIndicator(list: List<HomeTagInfo>) {
|
||||
|
||||
tabViewList.clear()
|
||||
|
||||
binding.tabLayout.setViews(list.size) { container, position, adapter ->
|
||||
val from = LayoutInflater.from(container.context)
|
||||
val view = ItemHomeRecommentdTagBinding.inflate(from, container, false)
|
||||
view.icon.load(list.getOrNull(position)?.icon?:"")
|
||||
tabViewList.add(view.root)
|
||||
return@setViews view.root
|
||||
}
|
||||
val magicIndicatorAdapter = HomeRecommendIndicatorAdapter(
|
||||
context,
|
||||
list
|
||||
)
|
||||
magicIndicatorAdapter.setOnItemSelectListener { position, _ ->
|
||||
// ToastUtils.show("选择 ${tabList.get(position).name}")
|
||||
binding.magicIndicator.onPageSelected(position)
|
||||
mPosition = position
|
||||
changePage()
|
||||
|
||||
binding.tabLayout.setOnTabClickListener{pos,view->
|
||||
selectTabView(pos)
|
||||
}
|
||||
commonNavigator.adapter = magicIndicatorAdapter
|
||||
binding.magicIndicator.navigator = commonNavigator
|
||||
val titleContainer: LinearLayout = commonNavigator.titleContainer // must after setNavigator
|
||||
titleContainer.showDividers = LinearLayout.SHOW_DIVIDER_MIDDLE
|
||||
titleContainer.dividerPadding = resources.getDimensionPixelOffset(R.dimen.dp_15)
|
||||
titleContainer.dividerDrawable = getDrawableById(R.drawable.home_recommend_tab_splitter)
|
||||
|
||||
changePage()
|
||||
}
|
||||
|
||||
private fun selectTabView(pos:Int) {
|
||||
//取消选中
|
||||
tabViewList?.getOrNull(mPosition)?.let { oldView->
|
||||
val tabView = ItemHomeRecommentdTagBinding.bind(oldView)
|
||||
tabView.bg.changeStrikeColor("#ffffff".toColor())
|
||||
}
|
||||
|
||||
mPosition = pos
|
||||
changePage()
|
||||
// binding.magicIndicator.onPageSelected(binding.viewPager.currentItem)
|
||||
}
|
||||
|
||||
private fun transformTabList(list: List<HomeTagInfo>): List<HomeTagInfo> {
|
||||
@@ -242,13 +283,12 @@ class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBindi
|
||||
}
|
||||
}
|
||||
|
||||
// binding.viewPager.adapter?.notifyDataSetChanged()
|
||||
|
||||
resetTabIndicator(tabList.map { it.name })
|
||||
resetTabIndicator(tabList)
|
||||
}
|
||||
|
||||
private fun changePage() {
|
||||
val showFragment = fragmentArray.get(tabList.get(mPosition).id)
|
||||
val tab = tabList.getOrNull(mPosition) ?: return
|
||||
val showFragment = fragmentArray.get(tab.id)
|
||||
if (showFragment === tempFragment) return
|
||||
|
||||
val transaction: FragmentTransaction = childFragmentManager.beginTransaction()
|
||||
@@ -263,6 +303,12 @@ class HomeRecommendFragment : BaseViewBindingFragment<FragmentHomeRecommendBindi
|
||||
if (!isDetached) {
|
||||
transaction.commitNowAllowingStateLoss()
|
||||
}
|
||||
|
||||
//选中
|
||||
tabViewList?.getOrNull(mPosition)?.let { oldView->
|
||||
val tabView = ItemHomeRecommentdTagBinding.bind(oldView)
|
||||
tabView.bg.changeStrikeColor("#ff8c03".toColor())
|
||||
}
|
||||
}
|
||||
|
||||
override fun onDestroyView() {
|
||||
|
@@ -36,7 +36,6 @@ import com.chwl.app.ui.relation.FansListActivity
|
||||
import com.chwl.app.ui.utils.ImageLoadUtils
|
||||
import com.chwl.app.ui.wallet.WalletActivity
|
||||
import com.chwl.app.ui.webview.CommonWebViewActivity
|
||||
import com.chwl.app.ui.widget.UserInfoDialog
|
||||
import com.chwl.app.utils.HomeUIManager
|
||||
import com.chwl.app.view.GenderAgeTextView
|
||||
import com.chwl.app.vip.VipCenterActivity
|
||||
@@ -59,7 +58,6 @@ import com.chwl.core.user.bean.UserInfo
|
||||
import com.chwl.core.user.event.LoginUserInfoUpdateEvent
|
||||
import com.chwl.core.utils.CoreLogger
|
||||
import com.chwl.core.vip.bean.VipInfo
|
||||
import com.chwl.library.common.util.doLog
|
||||
import com.example.lib_utils.ktx.singleClick
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
@@ -387,12 +385,18 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
// view.loadUrl(url);
|
||||
|
||||
|
||||
UserInfoDialog.showNewUserInfoDialog(
|
||||
mContext,
|
||||
AuthModel.get().currentUid
|
||||
)
|
||||
// UserInfoDialog.showNewUserInfoDialog(
|
||||
// mContext,
|
||||
// AuthModel.get().currentUid
|
||||
// )
|
||||
|
||||
"特斯特特斯特".doLog()
|
||||
UIHelper.showAddInfoAct(it)
|
||||
|
||||
// CountrySelectDialog().apply {
|
||||
// isRegion = true
|
||||
// }.show(it)
|
||||
|
||||
// "特斯特特斯特".doLog()
|
||||
// LogUtil.d("特斯特特斯特")
|
||||
|
||||
}
|
||||
|
8
app/src/main/java/com/chwl/app/ui/bean/CountryBean.java
Normal file
@@ -0,0 +1,8 @@
|
||||
package com.chwl.app.ui.bean;
|
||||
|
||||
public class CountryBean {
|
||||
public String name;
|
||||
public String icon;
|
||||
public int id;
|
||||
public boolean checked;
|
||||
}
|
@@ -0,0 +1,102 @@
|
||||
package com.chwl.app.ui.login.dialog
|
||||
|
||||
import android.view.Gravity
|
||||
import android.view.WindowManager
|
||||
import androidx.core.widget.doOnTextChanged
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.chwl.app.R
|
||||
import com.chwl.app.base.BaseDialogFragment
|
||||
import com.chwl.app.bindadapter.BaseBindingAdapter
|
||||
import com.chwl.app.bindadapter.BaseBindingViewHolder
|
||||
import com.chwl.app.databinding.DialogCountrySelectBinding
|
||||
import com.chwl.app.databinding.ItemCountrySelectBinding
|
||||
import com.chwl.app.ui.bean.CountryBean
|
||||
import com.chwl.app.ui.utils.load
|
||||
import com.chwl.library.common.util.ClickUtils.click
|
||||
import com.chwl.library.common.util.setVis
|
||||
import com.example.lib_utils.ktx.getColor
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
|
||||
class CountrySelectDialog : BaseDialogFragment<DialogCountrySelectBinding>() {
|
||||
|
||||
|
||||
override var width = WindowManager.LayoutParams.MATCH_PARENT
|
||||
override var height = ScreenUtil.screenHeight / 2
|
||||
override var dimAmount = 0.3f
|
||||
override var gravity = Gravity.BOTTOM
|
||||
|
||||
private var mPosition = -1
|
||||
lateinit var mAdapter: CountryAdapter
|
||||
|
||||
var isRegion = false
|
||||
var mData = mutableListOf<CountryBean>()
|
||||
|
||||
override fun init() {
|
||||
|
||||
|
||||
binding.titleBar.setTitle(R.string.layout_layout_phone_country_choose_01)
|
||||
binding.titleBar.setTitleColor(R.color.color_313131.getColor())
|
||||
|
||||
binding.search.setVis(isRegion)
|
||||
binding.searchIcon.setVis(isRegion)
|
||||
|
||||
mAdapter = CountryAdapter()
|
||||
mAdapter.setOnItemClickListener { adapter, view, position ->
|
||||
mAdapter.data?.getOrNull(mPosition)?.checked = false
|
||||
mPosition = position
|
||||
mAdapter.data?.getOrNull(position)?.checked = true
|
||||
mAdapter.notifyDataSetChanged()
|
||||
}
|
||||
|
||||
binding.rvList.layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
|
||||
binding.rvList.adapter = mAdapter
|
||||
|
||||
binding.search.doOnTextChanged { text, start, before, count ->
|
||||
getSearch(text)
|
||||
}
|
||||
|
||||
mData.forEachIndexed{ index, countryBean ->
|
||||
if (countryBean.checked) {
|
||||
mPosition = index
|
||||
}
|
||||
}
|
||||
mAdapter.setNewData(mData)
|
||||
|
||||
|
||||
binding.confirm.click {
|
||||
mAdapter.data?.getOrNull(mPosition)?.let {
|
||||
mActionCallBack?.onAction(mPosition,it)
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private fun getSearch(text: CharSequence?) {
|
||||
if (text != null) {
|
||||
val newData = mData.filter { it.name.contains(text,true) }
|
||||
mAdapter.setNewData(newData)
|
||||
} else {
|
||||
mAdapter.setNewData(mData)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
class CountryAdapter : BaseBindingAdapter<ItemCountrySelectBinding, CountryBean>() {
|
||||
|
||||
override fun convert(helper: BaseBindingViewHolder<ItemCountrySelectBinding>, data: CountryBean) {
|
||||
|
||||
helper.binding.let {
|
||||
val position = helper.bindingAdapterPosition
|
||||
it.select.setVis(data.checked)
|
||||
it.icon.load(data.icon)
|
||||
it.text.text = data.name
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
@@ -1,48 +1,59 @@
|
||||
package com.chwl.app.ui.login.fragment;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.net.Uri;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.text.InputFilter;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.RadioButton;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.AppCompatTextView;
|
||||
|
||||
import com.chwl.app.ui.link.LinkHelper;
|
||||
import com.chwl.app.ui.link.LinkIntent;
|
||||
import com.google.android.material.textfield.TextInputEditText;
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
||||
import com.sleepbot.datetimepicker.time.RadialPickerLayout;
|
||||
import com.sleepbot.datetimepicker.time.TimePickerDialog;
|
||||
import com.trello.rxlifecycle3.android.FragmentEvent;
|
||||
import com.bumptech.glide.load.DataSource;
|
||||
import com.bumptech.glide.load.engine.GlideException;
|
||||
import com.bumptech.glide.request.RequestListener;
|
||||
import com.bumptech.glide.request.target.Target;
|
||||
import com.chwl.app.R;
|
||||
import com.chwl.app.application.IReportConstants;
|
||||
import com.chwl.app.application.ReportManager;
|
||||
import com.chwl.app.base.BaseFragment;
|
||||
import com.chwl.app.common.widget.dialog.DialogManager;
|
||||
import com.chwl.app.ui.bean.CountryBean;
|
||||
import com.chwl.app.ui.link.LinkHelper;
|
||||
import com.chwl.app.ui.link.LinkIntent;
|
||||
import com.chwl.app.ui.login.dialog.CountrySelectDialog;
|
||||
import com.chwl.core.auth.AuthModel;
|
||||
import com.chwl.core.auth.entity.ThirdUserInfo;
|
||||
import com.chwl.core.bean.response.ServiceResult;
|
||||
import com.chwl.core.initial.InitialModel;
|
||||
import com.chwl.core.initial.bean.InitInfo;
|
||||
import com.chwl.core.linked.LinkedModel;
|
||||
import com.chwl.core.linked.bean.LinkedInfo;
|
||||
import com.chwl.core.user.UserModel;
|
||||
import com.chwl.core.user.bean.UserInfo;
|
||||
import com.chwl.core.utils.net.RxHelper;
|
||||
import com.chwl.library.common.glide.GlideUtils;
|
||||
import com.chwl.library.common.util.OtherExtKt;
|
||||
import com.chwl.library.net.rxnet.RxNet;
|
||||
import com.chwl.library.utils.ResUtil;
|
||||
import com.chwl.library.widget.text.DrawableTextView;
|
||||
import com.example.lib_utils.ktx.ResourcesKtxKt;
|
||||
import com.google.android.material.textfield.TextInputEditText;
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
||||
import com.sleepbot.datetimepicker.time.RadialPickerLayout;
|
||||
import com.sleepbot.datetimepicker.time.TimePickerDialog;
|
||||
import com.trello.rxlifecycle3.android.FragmentEvent;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import io.reactivex.Single;
|
||||
import io.reactivex.SingleObserver;
|
||||
import io.reactivex.disposables.Disposable;
|
||||
import kotlin.Unit;
|
||||
import kotlin.jvm.functions.Function1;
|
||||
import me.shihao.library.XRadioGroup;
|
||||
import retrofit2.http.GET;
|
||||
|
||||
/**
|
||||
* @author jack
|
||||
@@ -58,10 +69,13 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
private int gender = -1;
|
||||
private XRadioGroup rgGender;
|
||||
private RadioButton rbMale;
|
||||
private String avatarUrl = "https://img.molistar.xyz/default_avatar_molistar.png";
|
||||
private DrawableTextView mTvCountry;
|
||||
|
||||
private String avatarUrl = "https://img.molistar.xyz/default_avatar_molistar.png";
|
||||
public static String INVITE_USER_CODE = "";
|
||||
|
||||
private List<CountryBean> mData;
|
||||
|
||||
@Override
|
||||
public int getRootLayoutId() {
|
||||
return R.layout.fragment_add_user_info;
|
||||
@@ -76,6 +90,7 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
tvRandomNick = view.findViewById(R.id.tv_random_nick);
|
||||
rgGender = view.findViewById(R.id.rg_gender);
|
||||
rbMale = view.findViewById(R.id.rb_male);
|
||||
mTvCountry = view.findViewById(R.id.tvCountry);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -89,9 +104,11 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
gender = -1;
|
||||
okBtn.setOnClickListener(this);
|
||||
tvRandomNick.setOnClickListener(this);
|
||||
mTvCountry.setOnClickListener(this);
|
||||
addUserInfo();
|
||||
addInviteCodeInfo();
|
||||
InitialModel.get().init(false);
|
||||
getCountryListData(false);
|
||||
}
|
||||
|
||||
private void addUserInfo() {
|
||||
@@ -178,6 +195,9 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
case R.id.tv_random_nick:
|
||||
setRandomNick();
|
||||
break;
|
||||
case R.id.tvCountry:
|
||||
showCountryDialog(mData);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
@@ -200,6 +220,72 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
});
|
||||
}
|
||||
|
||||
//获取国家列表
|
||||
private void getCountryListData(boolean needShowDialog) {
|
||||
getCountryList().
|
||||
compose(bindToLifecycle())
|
||||
.doOnSuccess(countryBeans -> {
|
||||
|
||||
mData = countryBeans;
|
||||
|
||||
if (OtherExtKt.isVerify(countryBeans)) {
|
||||
if (needShowDialog) {
|
||||
showCountryDialog(countryBeans);
|
||||
} else {
|
||||
CountryBean checkData = null;
|
||||
for (int i = 0; i < countryBeans.size(); i++) {
|
||||
if (countryBeans.get(i).checked) {
|
||||
checkData = countryBeans.get(i);
|
||||
}
|
||||
}
|
||||
|
||||
if (checkData != null) {
|
||||
setCountryInfo(checkData);
|
||||
} else {
|
||||
mTvCountry.setDrawableEmpty(null,null,ResourcesKtxKt.getDrawable(R.drawable.base_ic_arrow_right),null);
|
||||
OtherExtKt.doLog(" 没有默认 地区");
|
||||
}
|
||||
}
|
||||
}
|
||||
}).doOnError(throwable -> {
|
||||
|
||||
}).subscribe();
|
||||
}
|
||||
|
||||
//弹出国家列表选择弹窗
|
||||
private void showCountryDialog(List<CountryBean> list) {
|
||||
if (OtherExtKt.isVerify(list)) {
|
||||
CountrySelectDialog dialog = new CountrySelectDialog();
|
||||
dialog.setRegion(true);
|
||||
dialog.setMData(list);
|
||||
dialog.setMActionCallBack((type, data) -> {
|
||||
if (data != null && data instanceof CountryBean) {
|
||||
setCountryInfo((CountryBean) data);
|
||||
}
|
||||
});
|
||||
dialog.show(getContext());
|
||||
} else {
|
||||
getCountryListData(true);
|
||||
}
|
||||
}
|
||||
|
||||
private void setCountryInfo(CountryBean data) {
|
||||
mTvCountry.setText(data.name);
|
||||
mTvCountry.setTag(data);
|
||||
GlideUtils.instance().downloadFromUrlToDrawable(getContext(), data.icon, new RequestListener<Drawable>() {
|
||||
@Override
|
||||
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
|
||||
mTvCountry.setDrawableEmpty(resource,null, ResourcesKtxKt.getDrawable(R.drawable.base_ic_arrow_right),null);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void commit(String nick, String avatarUrl, int gender, String shareCode) {
|
||||
UserInfo userInfo = new UserInfo();
|
||||
userInfo.setUid(AuthModel.get().getCurrentUid());
|
||||
@@ -213,6 +299,16 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
return;
|
||||
}
|
||||
|
||||
//不选国家不给注册
|
||||
Object country = mTvCountry.getTag();
|
||||
if (country != null && country instanceof CountryBean) {
|
||||
userInfo.setRegionId(((CountryBean) country).id);
|
||||
} else {
|
||||
toast(ResUtil.getString(R.string.regionTips));
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
getDialogManager().showProgressDialog(getContext(), ResUtil.getString(R.string.login_fragment_adduserinfofragment_08));
|
||||
LinkedInfo linkedInfo = LinkedModel.get().getLinkedInfo();
|
||||
|
||||
@@ -261,4 +357,18 @@ public class AddUserInfoFragment extends BaseFragment
|
||||
}
|
||||
|
||||
|
||||
private Single<List<CountryBean>> getCountryList() {
|
||||
return api.getCountryList()
|
||||
.compose(RxHelper.handleBeanData())
|
||||
.compose(RxHelper.handleSchedulers());
|
||||
}
|
||||
|
||||
private final Api api = RxNet.create(Api.class);
|
||||
public interface Api{
|
||||
//获取国家列表
|
||||
@GET("/regionInfo/listAll")
|
||||
Single<ServiceResult<List<CountryBean>>> getCountryList();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@@ -349,11 +349,18 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
|
||||
|
||||
//等级魅力值
|
||||
setUserLevel(userInfo.getUserLevelVo());
|
||||
|
||||
//VIP铭牌
|
||||
if (userInfo.getUserVipInfoVO() != null && !TextUtils.isEmpty(userInfo.getUserVipInfoVO().getNameplateUrl())){
|
||||
setOfficialMask("",userInfo.getUserVipInfoVO().getNameplateUrl());
|
||||
}
|
||||
|
||||
//工会长铭牌
|
||||
if (userInfo.getGuildNameplateIcon() != null && !TextUtils.isEmpty(userInfo.getGuildNameplateIcon())){
|
||||
setOfficialMaskGuild("",userInfo.getGuildNameplateIcon());
|
||||
}
|
||||
|
||||
|
||||
if (AuthModel.get().getCurrentUid() != userInfo.getUid()) {
|
||||
PraiseModel.get().isPraised(AuthModel.get().getCurrentUid(), userInfo.getUid()).subscribe();
|
||||
}
|
||||
@@ -875,14 +882,27 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
|
||||
private void setOfficialMask(String name, String icon) {
|
||||
// if( userInfo.isCustomWord() && !TextUtils.isEmpty(icon)){
|
||||
if(!TextUtils.isEmpty(icon)){
|
||||
mBinding.inOfficialMask.setVisibility(View.VISIBLE);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.ivOfficialMask);
|
||||
mBinding.inOfficialMask.getRoot().setVisibility(View.VISIBLE);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.inOfficialMask.ivOfficialMask);
|
||||
}else if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) {
|
||||
mBinding.inOfficialMask.setVisibility(View.VISIBLE);
|
||||
mBinding.tvOfficialMask.setText(name);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.ivOfficialMask);
|
||||
mBinding.inOfficialMask.getRoot().setVisibility(View.VISIBLE);
|
||||
mBinding.inOfficialMask.tvOfficialMask.setText(name);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.inOfficialMask.ivOfficialMask);
|
||||
} else {
|
||||
mBinding.inOfficialMask.setVisibility(View.GONE);
|
||||
mBinding.inOfficialMask.getRoot().setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
private void setOfficialMaskGuild(String name, String icon) {
|
||||
// if( userInfo.isCustomWord() && !TextUtils.isEmpty(icon)){
|
||||
if(!TextUtils.isEmpty(icon)){
|
||||
mBinding.inOfficialMaskGuild.getRoot().setVisibility(View.VISIBLE);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.inOfficialMaskGuild.ivOfficialMask);
|
||||
}else if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) {
|
||||
mBinding.inOfficialMaskGuild.getRoot().setVisibility(View.VISIBLE);
|
||||
mBinding.inOfficialMaskGuild.tvOfficialMask.setText(name);
|
||||
ImageLoadUtils.loadImage(this, icon, mBinding.inOfficialMaskGuild.ivOfficialMask);
|
||||
} else {
|
||||
mBinding.inOfficialMaskGuild.getRoot().setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -92,9 +92,17 @@ class MicSelectDialog : BaseDialogFragment<DialogMicSelectBinding>() {
|
||||
}
|
||||
})
|
||||
|
||||
binding.rvList.layoutManager = GridLayoutManager(context, 4, RecyclerView.VERTICAL, false)
|
||||
val span = if (AvRoomDataManager.get().isHomeParty) 4 else 5
|
||||
val gridLayoutManager = GridLayoutManager(context, span, RecyclerView.VERTICAL, false)
|
||||
binding.rvList.layoutManager = gridLayoutManager
|
||||
binding.rvList.adapter = mAdapter
|
||||
|
||||
//todo do gridLayoutManager.spanSizeLookup 要在recycleView设置完Adapter 后设置, 才保险
|
||||
gridLayoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
|
||||
override fun getSpanSize(position: Int): Int {
|
||||
if (AvRoomDataManager.get().isHomeParty && position == 0) return gridLayoutManager.spanCount
|
||||
return 1
|
||||
}
|
||||
}
|
||||
|
||||
binding.confirm.click {
|
||||
|
||||
|
@@ -11,6 +11,7 @@ import android.content.ClipboardManager;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.WindowManager;
|
||||
@@ -138,7 +139,6 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
//找到他处理
|
||||
private ViewItem findHimView;
|
||||
|
||||
private String avatarBg;
|
||||
private SkillPicsAdapter picsAdapter;
|
||||
|
||||
|
||||
@@ -200,8 +200,9 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
setCanceledOnTouchOutside(true);
|
||||
//设置全屏
|
||||
WindowManager.LayoutParams params = getWindow().getAttributes();
|
||||
params.width = OtherExtKt.toDP(330);
|
||||
params.width = WindowManager.LayoutParams.MATCH_PARENT;
|
||||
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
|
||||
params.gravity = Gravity.BOTTOM;
|
||||
|
||||
myUid = AuthModel.get().getCurrentUid();
|
||||
|
||||
@@ -271,6 +272,21 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
mBinding.follow.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
mBinding.ivUserCardWearMp4.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
int width = (int) (mBinding.ivUserCardWearMp4.getWidth() / 0.8636);
|
||||
OtherExtKt.setViewWH(mBinding.ivUserCardWearMp4,width,mBinding.ivUserCardWearMp4.getHeight(),false);
|
||||
}
|
||||
});
|
||||
mBinding.userCardWearLayout.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
int width = (int) (mBinding.userCardWearLayout.getWidth() / 0.8636);
|
||||
OtherExtKt.setViewWH(mBinding.userCardWearLayout,width,mBinding.userCardWearLayout.getHeight(),false);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void initAttentData() {
|
||||
@@ -346,6 +362,7 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
private void addViewItems(List<ViewItem> buttons) {
|
||||
if (ListUtils.isListEmpty(buttons)) {
|
||||
mBinding.flexbox.setVisibility(View.GONE);
|
||||
mBinding.flexboxLine.setVisibility(View.GONE);
|
||||
return;
|
||||
}
|
||||
mBinding.flexbox.post(new Runnable() {
|
||||
@@ -353,8 +370,7 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
public void run() {
|
||||
// int dialogWidth = flexbox.getMeasuredWidth() == 0 ? ScreenUtil.dip2px(285) : flexbox.getMeasuredWidth();
|
||||
int dialogWidth = mBinding.flexbox.getWidth();
|
||||
int itemWidth = dialogWidth / 4;
|
||||
if (buttons.size() < 4) itemWidth = dialogWidth / 3;
|
||||
|
||||
mBinding.flexbox.removeAllViews();
|
||||
//底部item,不添加到网格
|
||||
List<ViewItem> bottomList = new ArrayList<>();
|
||||
@@ -362,7 +378,8 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
ViewItem buttonItem = buttons.get(i);
|
||||
if (buttonItem.mButtonType == ViewItem.BUTTON_TYPE_NORMAL) {
|
||||
View item = LayoutInflater.from(getContext()).inflate(R.layout.dialog_user_card_item_new, mBinding.flexbox, false);
|
||||
item.getLayoutParams().width = itemWidth;
|
||||
// item.getLayoutParams().width = OtherExtKt.toDP(38);
|
||||
// item.getLayoutParams().height = OtherExtKt.toDP(38);
|
||||
ImageView imageView = item.findViewById(R.id.image);
|
||||
imageView.setImageResource(buttonItem.imgRes);
|
||||
if (buttonItem.isFindTa) {
|
||||
@@ -385,8 +402,10 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
}
|
||||
if (mBinding.flexbox.getChildCount() == 0) {
|
||||
mBinding.flexbox.setVisibility(View.GONE);
|
||||
mBinding.flexboxLine.setVisibility(View.GONE);
|
||||
} else {
|
||||
mBinding.flexbox.setVisibility(View.VISIBLE);
|
||||
mBinding.flexboxLine.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -489,6 +508,13 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
setNamePlateVip(null);
|
||||
}
|
||||
|
||||
//工会长铭牌
|
||||
if (userInfo.getGuildNameplateIcon() != null && !TextUtils.isEmpty(userInfo.getGuildNameplateIcon())) {
|
||||
setNameplateGuild(userInfo.getGuildNameplateIcon());
|
||||
} else {
|
||||
setNameplateGuild(null);
|
||||
}
|
||||
|
||||
//铭牌
|
||||
if (!TextUtils.isEmpty(userInfo.getNameplatePic()) && !TextUtils.isEmpty(userInfo.getNameplateWord())) {
|
||||
setNamePlate(userInfo.getNameplatePic(), userInfo.getNameplateWord());
|
||||
@@ -588,6 +614,15 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
}
|
||||
}
|
||||
|
||||
private void setNameplateGuild(String nameplatePic) {
|
||||
if (!TextUtils.isEmpty(nameplatePic)) {
|
||||
mBinding.inNameplateGuild.getRoot().setVisibility(View.VISIBLE);
|
||||
ImageLoadUtils.loadImage(context, nameplatePic, mBinding.inNameplateGuild.ivOfficialMask);
|
||||
} else {
|
||||
mBinding.inNameplateGuild.getRoot().setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
private void setOfficialMask(String name, String icon) {
|
||||
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) {
|
||||
mBinding.inOfficialMask.setVisibility(View.VISIBLE);
|
||||
@@ -642,39 +677,10 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
|
||||
if (userInfo.getInfoCardVo() != null) {
|
||||
VipUtil.INSTANCE.setUserBg(userInfo.getInfoCardVo(), mBinding.userCardWearLayout, callBack -> {
|
||||
if (callBack) {
|
||||
mBinding.transitionMask.setVisibility(View.INVISIBLE);
|
||||
mBinding.ivAvatarBg.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
if (avatarBg == null || !avatarBg.equals(userInfo.getAvatar())) {
|
||||
avatarBg = userInfo.getAvatar();
|
||||
ImageLoadUtils.loadImageWithBlur(context, userInfo.getAvatar(), mBinding.ivAvatarBg, 10, 1);
|
||||
mBinding.transitionMask.setVisibility(View.VISIBLE);
|
||||
mBinding.ivAvatarBg.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
});
|
||||
} else {
|
||||
|
||||
mBinding.ivAvatarBg.setVisibility(View.VISIBLE);
|
||||
if (vipInfo != null && !vipInfo.getUserCardBG().isEmpty()) {
|
||||
// findViewById(R.id.transition_mask).setVisibility(View.GONE);
|
||||
mBinding.ivAvatarBg.setScaleType(ImageView.ScaleType.FIT_XY);
|
||||
ImageLoadUtils.loadImage(
|
||||
context,
|
||||
vipInfo.getUserCardBG().replace("\n", ""),
|
||||
mBinding.ivAvatarBg,
|
||||
R.drawable.default_avatar
|
||||
);
|
||||
} else {
|
||||
if (avatarBg == null || !avatarBg.equals(userInfo.getAvatar())) {
|
||||
avatarBg = userInfo.getAvatar();
|
||||
mBinding.ivAvatarBg.setScaleType(ImageView.ScaleType.CENTER);
|
||||
ImageLoadUtils.loadImageWithBlur(context, userInfo.getAvatar(), mBinding.ivAvatarBg, 10, 1);
|
||||
}
|
||||
}
|
||||
|
||||
//资料卡装扮
|
||||
if (!TextUtils.isEmpty(userInfo.getUserInfoCardPic())) {
|
||||
mBinding.ivUserCardWearMp4.post(() -> {
|
||||
@@ -687,7 +693,22 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
});
|
||||
} else {
|
||||
mBinding.ivUserCardWear.setImageDrawable(null);
|
||||
mBinding.ivUserCardWearMp4.setVisibility(View.GONE);
|
||||
mBinding.ivUserCardWearMp4.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
|
||||
if (vipInfo != null && !vipInfo.getUserCardBG().isEmpty()) {
|
||||
mBinding.ivAvatarBg.setScaleType(ImageView.ScaleType.FIT_XY);
|
||||
ImageLoadUtils.loadImage(
|
||||
context,
|
||||
vipInfo.getUserCardBG().replace("\n", ""),
|
||||
mBinding.ivAvatarBg,
|
||||
R.drawable.transparent_draw
|
||||
);
|
||||
mBinding.ivAvatarBg.setVisibility(View.VISIBLE);
|
||||
mBinding.transitionMask.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
mBinding.transitionMask.setVisibility(View.INVISIBLE);
|
||||
mBinding.ivAvatarBg.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1020,14 +1041,13 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
|
||||
private ViewItem createInviteMicItem() {
|
||||
return new ViewItem(getString(R.string.ui_widget_userinfodialog_028),
|
||||
R.drawable.user_card_ic_open_mic,
|
||||
R.drawable.user_card_ic_up_mic,
|
||||
true,
|
||||
() -> {
|
||||
//todo do 弹起 麦位选择布局
|
||||
MicSelectDialog dialog = new MicSelectDialog();
|
||||
dialog.setMActionCallBack(new BaseDialogFragment.Action() {
|
||||
@Override
|
||||
public <D> void onAction(int type, @Nullable D data) {
|
||||
public void onAction(int type, @Nullable Object data) {
|
||||
dismiss();
|
||||
}
|
||||
});
|
||||
|
BIN
app/src/main/res/drawable-xhdpi/ic_private_chat.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_room_user_copy.png
Normal file
After Width: | Height: | Size: 614 B |
Before Width: | Height: | Size: 721 B |
BIN
app/src/main/res/drawable-xhdpi/icon_dialog_ait.png
Normal file
After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 1.0 KiB |
BIN
app/src/main/res/drawable-xhdpi/icon_dialog_attent.png
Normal file
After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 2.2 KiB |
BIN
app/src/main/res/drawable-xhdpi/icon_dialog_cancel_attent.png
Normal file
After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1004 B |
BIN
app/src/main/res/drawable-xhdpi/icon_send_gift_ture.png
Normal file
After Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 1.9 KiB |
BIN
app/src/main/res/drawable-xhdpi/icon_up_mic_false.png
Normal file
After Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 925 B |
BIN
app/src/main/res/drawable-xhdpi/icon_up_mic_ture.png
Normal file
After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 1.3 KiB |
BIN
app/src/main/res/drawable-xhdpi/icon_user_card_report.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
app/src/main/res/drawable-xxhdpi/icon_dialog_kickout_room.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
app/src/main/res/drawable-xxhdpi/icon_dialog_mark_black_list.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 825 B After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 6.6 KiB |
Before Width: | Height: | Size: 933 B After Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 922 B After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 854 B After Width: | Height: | Size: 5.0 KiB |
Before Width: | Height: | Size: 988 B After Width: | Height: | Size: 5.9 KiB |
BIN
app/src/main/res/drawable-xxhdpi/user_card_ic_up_mic.png
Normal file
After Width: | Height: | Size: 6.3 KiB |
BIN
app/src/main/res/drawable-zh-rTW-xhdpi/icon_room_welcome.webp
Normal file
After Width: | Height: | Size: 1.9 KiB |
4
app/src/main/res/drawable/div_13dp.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<size android:width="13dp" android:height="13dp"/>
|
||||
</shape>
|
5
app/src/main/res/drawable/shape_f4f4f4_radius_16dp.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="16dp" />
|
||||
<solid android:color="#f4f4f4" />
|
||||
</shape>
|
@@ -203,42 +203,23 @@
|
||||
android:visibility="visible"
|
||||
tools:src="@drawable/ic_user_charm_level" />
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
<include
|
||||
android:id="@+id/inOfficialMask"
|
||||
layout="@layout/layout_official_mask"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="20dp"
|
||||
android:layout_height="@dimen/dp_20"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginStart="@dimen/dp_4"
|
||||
android:visibility="visible"
|
||||
tools:visibility="visible">
|
||||
android:visibility="visible" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivOfficialMask"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="0dp"
|
||||
android:adjustViewBounds="true"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:src="@drawable/ic_temp_official_mask" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvOfficialMask"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="22dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="11sp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="@+id/ivOfficialMask"
|
||||
app:layout_constraintStart_toStartOf="@id/ivOfficialMask"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="@string/layout_activity_user_info_02" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
<include
|
||||
android:id="@+id/inOfficialMaskGuild"
|
||||
layout="@layout/layout_official_mask"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_20"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginStart="@dimen/dp_4"
|
||||
android:visibility="visible" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivChargeAgent"
|
||||
|
68
app/src/main/res/layout/dialog_country_select.xml
Normal file
@@ -0,0 +1,68 @@
|
||||
<?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="match_parent"
|
||||
android:background="@drawable/bg_ffffff_topr16"
|
||||
tools:background="@color/black">
|
||||
|
||||
|
||||
<com.chwl.app.base.TitleBar
|
||||
android:id="@+id/title_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/confirm"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingHorizontal="17dp"
|
||||
android:paddingVertical="5dp"
|
||||
android:text="@string/ok"
|
||||
android:textColor="#ff8c03"
|
||||
android:textSize="16sp"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/title_bar"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@+id/title_bar" />
|
||||
|
||||
|
||||
<EditText
|
||||
android:id="@+id/search"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="34dp"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:background="@drawable/shape_f4f4f4_radius_16dp"
|
||||
android:gravity="center_vertical"
|
||||
android:hint="@string/search"
|
||||
android:inputType="text"
|
||||
android:paddingHorizontal="36dp"
|
||||
android:textColor="@color/color_313131"
|
||||
android:textColorHint="#AFB1B3"
|
||||
android:textSize="12sp"
|
||||
app:layout_constraintTop_toBottomOf="@id/title_bar" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/searchIcon"
|
||||
android:layout_width="20dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_marginStart="11dp"
|
||||
android:src="@drawable/ic_send_search"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/search"
|
||||
app:layout_constraintStart_toStartOf="@+id/search"
|
||||
app:layout_constraintTop_toTopOf="@+id/search"
|
||||
app:tint="#AFB1B3" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rvList"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginTop="12dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/search" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@@ -12,7 +12,6 @@
|
||||
android:layout_width="38dp"
|
||||
android:layout_height="38dp"
|
||||
android:layout_gravity="center_horizontal|top"
|
||||
android:layout_marginHorizontal="13dp"
|
||||
android:layout_marginBottom="12dp" />
|
||||
android:layout_marginHorizontal="7dp" />
|
||||
|
||||
</FrameLayout>
|
@@ -2,41 +2,43 @@
|
||||
<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="330dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:layout_gravity="bottom"
|
||||
android:background="@color/transparent"
|
||||
android:clipChildren="false"
|
||||
android:clipToPadding="false"
|
||||
tools:background="#2233">
|
||||
|
||||
<!--
|
||||
userCardWearLayout
|
||||
iv_avatar_bg
|
||||
transition_mask
|
||||
iv_user_card_wear
|
||||
iv_user_card_wear_mp4
|
||||
-->
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/userCarRootLayout"
|
||||
android:layout_width="285dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="85dp"
|
||||
android:background="@drawable/bg_ffffff_r16"
|
||||
android:clipChildren="false"
|
||||
android:clipToPadding="false"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<!--白色背景-->
|
||||
<com.chwl.library.widget.text.DrawableTextView
|
||||
android:id="@+id/defBg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginTop="64dp"
|
||||
app:dt_drawableType="shape"
|
||||
app:dt_leftTopRadius="16dp"
|
||||
app:dt_rightTopRadius="16dp"
|
||||
app:dt_soildColor="@color/white"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/fl_avatar_layout" />
|
||||
|
||||
|
||||
<!-- 用户装扮资料卡-->
|
||||
<FrameLayout
|
||||
android:id="@+id/userCardWearLayout"
|
||||
android:layout_width="330dp"
|
||||
android:layout_height="250dp"
|
||||
android:layout_marginTop="-85dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="328dp"
|
||||
android:clipChildren="false"
|
||||
android:clipToPadding="false"
|
||||
android:visibility="invisible"
|
||||
@@ -50,27 +52,27 @@
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/iv_avatar_bg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginBottom="-48dp"
|
||||
android:layout_height="180dp"
|
||||
android:minHeight="180dp"
|
||||
android:scaleType="center"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintBottom_toBottomOf="@id/fl_avatar_layout"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/defBg"
|
||||
app:riv_corner_radius_top_left="16dp"
|
||||
app:riv_corner_radius_top_right="16dp"
|
||||
tools:contentDescription="@string/layout_dialog_user_info_02"
|
||||
tools:src="@drawable/bg_login"
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
<com.coorchice.library.SuperTextView
|
||||
<com.chwl.library.widget.text.DrawableTextView
|
||||
android:id="@+id/transition_mask"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/iv_avatar_bg"
|
||||
app:layout_constraintTop_toTopOf="@+id/iv_avatar_bg"
|
||||
app:solid="@color/black_transparent_10"
|
||||
app:dt_soildColor="@color/white_transparent_10"
|
||||
app:dt_rightTopRadius="16dp"
|
||||
app:dt_leftTopRadius="16dp"
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
@@ -78,10 +80,9 @@
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/iv_user_card_wear"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_height="180dp"
|
||||
android:scaleType="fitXY"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/iv_avatar_bg"
|
||||
app:layout_constraintTop_toTopOf="@+id/iv_avatar_bg"
|
||||
app:riv_corner_radius_top_left="16dp"
|
||||
app:riv_corner_radius_top_right="16dp"
|
||||
@@ -90,15 +91,14 @@
|
||||
|
||||
<com.tencent.qgame.animplayer.AnimView
|
||||
android:id="@+id/iv_user_card_wear_mp4"
|
||||
android:layout_width="330dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="180dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:clipChildren="false"
|
||||
android:clipToPadding="false"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@+id/userCardWearLayout"
|
||||
app:layout_constraintTop_toTopOf="@+id/fl_avatar_layout"
|
||||
tools:background="@drawable/bg_user_card_wear"
|
||||
tools:visibility="visible" />
|
||||
|
||||
@@ -107,22 +107,22 @@
|
||||
android:id="@+id/fl_avatar_layout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="27dp"
|
||||
android:layout_marginTop="46dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/avatar"
|
||||
android:layout_width="75dp"
|
||||
android:layout_height="75dp"
|
||||
android:layout_width="91dp"
|
||||
android:layout_height="91dp"
|
||||
android:layout_gravity="center"
|
||||
android:src="@drawable/default_avatar" />
|
||||
|
||||
<com.chwl.library.widget.SVGAView
|
||||
android:id="@+id/iv_avatar_head_wear"
|
||||
android:layout_width="105dp"
|
||||
android:layout_height="105dp"
|
||||
android:layout_width="127dp"
|
||||
android:layout_height="127dp"
|
||||
android:layout_gravity="center" />
|
||||
</FrameLayout>
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
android:id="@+id/infoLayout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/fl_avatar_layout"
|
||||
android:layout_marginTop="5dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintEnd_toEndOf="@+id/fl_avatar_layout"
|
||||
@@ -212,8 +212,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_4"
|
||||
android:src="@drawable/ic_room_user_copy"
|
||||
app:tint="#7b7b7d" />
|
||||
android:src="@drawable/ic_room_user_copy" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -223,6 +222,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="6dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
tools:contentDescription="@string/layout_dialog_user_info_04">
|
||||
|
||||
@@ -275,7 +275,7 @@
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="11dp"
|
||||
android:textSize="11sp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="@+id/iv_official_mask"
|
||||
app:layout_constraintStart_toStartOf="@id/iv_official_mask"
|
||||
@@ -304,6 +304,7 @@
|
||||
tools:src="@mipmap/ic_user_level"
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
<include
|
||||
android:id="@+id/inNameplateVip"
|
||||
layout="@layout/layout_official_mask"
|
||||
@@ -313,6 +314,17 @@
|
||||
android:layout_marginEnd="@dimen/dp_2"
|
||||
android:visibility="visible" />
|
||||
|
||||
|
||||
<include
|
||||
android:id="@+id/inNameplateGuild"
|
||||
layout="@layout/layout_official_mask"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_20"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginEnd="@dimen/dp_2"
|
||||
android:visibility="visible" />
|
||||
|
||||
|
||||
<include
|
||||
android:id="@+id/in_nameplate"
|
||||
layout="@layout/layout_official_mask"
|
||||
@@ -329,7 +341,7 @@
|
||||
android:id="@+id/ll_family"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="4dp"
|
||||
android:layout_marginTop="6dp"
|
||||
android:orientation="horizontal"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible">
|
||||
@@ -358,7 +370,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="12dp"
|
||||
android:layout_marginTop="4dp"
|
||||
android:layout_marginTop="6dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:layout_marginBottom="@dimen/dp_8" />
|
||||
|
||||
@@ -370,14 +382,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="26dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintTop_toBottomOf="@id/infoLayout">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/gift"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="50dp"
|
||||
android:src="@drawable/icon_send_gift_ture"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintEnd_toStartOf="@+id/send"
|
||||
@@ -386,8 +398,8 @@
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/send"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="50dp"
|
||||
android:src="@mipmap/ic_private_chat"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintEnd_toStartOf="@id/aite"
|
||||
@@ -396,8 +408,8 @@
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/aite"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="50dp"
|
||||
android:src="@drawable/icon_dialog_ait"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintEnd_toStartOf="@id/follow"
|
||||
@@ -406,8 +418,8 @@
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/follow"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="50dp"
|
||||
android:src="@drawable/icon_dialog_cancel_attent"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
@@ -417,28 +429,41 @@
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
<com.google.android.flexbox.FlexboxLayout
|
||||
android:id="@+id/flexbox"
|
||||
<HorizontalScrollView
|
||||
android:id="@+id/flexboxLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginTop="24dp"
|
||||
android:minWidth="285dp"
|
||||
app:flexWrap="wrap"
|
||||
android:overScrollMode="never"
|
||||
android:paddingHorizontal="10dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/btnLayout"
|
||||
tools:layout_height="20dp" />
|
||||
tools:layout_height="20dp">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/flexbox"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:orientation="horizontal"
|
||||
android:paddingVertical="10dp"
|
||||
tools:layout_height="20dp" />
|
||||
|
||||
</HorizontalScrollView>
|
||||
|
||||
<View
|
||||
android:id="@+id/flexboxLine"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="1dp"
|
||||
android:layout_marginTop="-12dp"
|
||||
android:background="#e4e4e4"
|
||||
app:layout_constraintTop_toTopOf="@id/flexbox" />
|
||||
app:layout_constraintTop_toTopOf="@id/flexboxLayout" />
|
||||
|
||||
<com.coorchice.library.SuperTextView
|
||||
android:id="@+id/tv_select_him"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="25dp"
|
||||
android:layout_height="36dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginStart="70dp"
|
||||
android:layout_marginTop="10dp"
|
||||
@@ -449,27 +474,28 @@
|
||||
android:textColor="#FFFEFE"
|
||||
android:textSize="13sp"
|
||||
android:visibility="gone"
|
||||
app:corner="15dp"
|
||||
app:corner="117dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/flexbox"
|
||||
app:layout_constraintTop_toBottomOf="@+id/flexboxLayout"
|
||||
app:shaderEnable="true"
|
||||
app:shaderEndColor="#FA4771"
|
||||
app:shaderEndColor="#DB58FF"
|
||||
app:shaderMode="leftToRight"
|
||||
app:shaderStartColor="#FA7187"
|
||||
app:shaderStartColor="#FF5778"
|
||||
tools:visibility="visible" />
|
||||
|
||||
|
||||
<TextView
|
||||
<ImageView
|
||||
android:id="@+id/tv_report"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:text="@string/layout_dialog_user_info_06"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_12"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
android:layout_width="34dp"
|
||||
android:layout_height="34dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:padding="5dp"
|
||||
android:src="@drawable/icon_user_card_report"
|
||||
app:layout_constraintEnd_toEndOf="@+id/defBg"
|
||||
app:layout_constraintTop_toTopOf="@+id/defBg" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
@@ -169,6 +169,38 @@
|
||||
app:layout_constraintTop_toTopOf="@id/view_code_bg"
|
||||
tools:ignore="SpUsage" />
|
||||
|
||||
|
||||
<com.chwl.library.widget.text.DrawableTextView
|
||||
android:id="@+id/tvCountry"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="@dimen/dp_52"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:layout_weight="1"
|
||||
android:drawablePadding="@dimen/dp_8"
|
||||
android:gravity="center_vertical"
|
||||
android:hint="@string/layout_layout_phone_country_choose_01"
|
||||
android:lines="1"
|
||||
android:paddingStart="@dimen/dp_24"
|
||||
android:paddingEnd="@dimen/dp_20"
|
||||
android:singleLine="true"
|
||||
android:textColor="@color/text_title_color"
|
||||
android:textColorHint="#B4B7BD"
|
||||
android:textSize="@dimen/dp_14"
|
||||
app:dt_radius="26dp"
|
||||
app:dt_soildColor="@color/white"
|
||||
app:dt_drawableLeftHeight="@dimen/dp_18"
|
||||
app:dt_drawableLeftWidth="@dimen/dp_24"
|
||||
app:dt_drawableRightHeight="@dimen/dp_21"
|
||||
app:dt_drawableRightSrc="@drawable/base_ic_arrow_right"
|
||||
app:dt_drawableRightWidth="@dimen/dp_21"
|
||||
app:dt_drawableType="shape"
|
||||
app:layout_constraintEnd_toEndOf="@id/view_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/view_code_bg"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tv_code"
|
||||
app:dt_drawableLeftSrc="@color/transparent"
|
||||
tools:ignore="SpUsage" />
|
||||
|
||||
|
||||
<Button
|
||||
android:id="@+id/ok_btn"
|
||||
android:layout_width="match_parent"
|
||||
@@ -182,7 +214,7 @@
|
||||
android:textSize="@dimen/sp_16"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view_code_bg"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tvCountry"
|
||||
tools:ignore="SpUsage" />
|
||||
|
||||
<TextView
|
||||
|
@@ -39,9 +39,9 @@
|
||||
android:id="@+id/iv_resource0"
|
||||
android:layout_width="@dimen/dp_0"
|
||||
android:layout_height="0dp"
|
||||
android:src="@drawable/home_rank_bg"
|
||||
android:layout_marginStart="@dimen/dp_14"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/home_rank_bg"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintDimensionRatio="170:82"
|
||||
app:layout_constraintEnd_toStartOf="@+id/iv_resource1"
|
||||
@@ -82,7 +82,7 @@
|
||||
android:id="@+id/banner_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginHorizontal="@dimen/dp_14"
|
||||
android:layout_marginHorizontal="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_9"
|
||||
android:background="@drawable/base_shape_negative_5dp"
|
||||
android:visibility="gone"
|
||||
@@ -102,25 +102,54 @@
|
||||
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
<LinearLayout
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior">
|
||||
|
||||
<com.chwl.app.ui.widget.magicindicator.MagicIndicator
|
||||
android:id="@+id/magic_indicator"
|
||||
<com.chwl.library.widget.tab.SmartTabLayout
|
||||
android:id="@+id/tabLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_40"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
android:layout_marginEnd="@dimen/dp_12" />
|
||||
android:layout_height="30dp"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginTop="9dp"
|
||||
app:stl_defaultTabBackground="@color/transparent"
|
||||
app:stl_dividerThickness="0dp"
|
||||
app:stl_indicatorWidth="0dp"
|
||||
app:stl_overlineThickness="0dp"
|
||||
app:stl_underlineThickness="0dp" />
|
||||
|
||||
|
||||
<com.chwl.library.widget.text.DrawableTextView
|
||||
android:id="@+id/tabLayoutMarks"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_gravity="end"
|
||||
app:dt_drawableType="shape"
|
||||
app:dt_startColor="@color/transparent"
|
||||
app:dt_endColor="@color/black"
|
||||
android:layout_marginTop="9dp"
|
||||
android:layout_marginEnd="15dp" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/tabLayoutMore"
|
||||
android:layout_width="34dp"
|
||||
android:layout_height="34dp"
|
||||
app:tint="@color/black"
|
||||
android:src="@drawable/icon_date_arrow"
|
||||
android:layout_gravity="end"
|
||||
android:layout_marginTop="6dp"
|
||||
android:layout_marginEnd="10dp" />
|
||||
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/view_pager"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="@dimen/dp_8" />
|
||||
</LinearLayout>
|
||||
android:layout_marginTop="50dp" />
|
||||
|
||||
</FrameLayout>
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
|
||||
|
||||
|
47
app/src/main/res/layout/item_country_select.xml
Normal file
@@ -0,0 +1,47 @@
|
||||
<?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"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
android:layout_width="29dp"
|
||||
android:layout_height="22dp"
|
||||
android:src="@drawable/default_avatar"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/text"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@+id/text" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="48dp"
|
||||
android:layout_marginStart="12dp"
|
||||
android:gravity="center_vertical"
|
||||
android:textColor="@color/color_313131"
|
||||
android:textSize="15sp"
|
||||
android:textStyle="bold"
|
||||
android:text="loading..."
|
||||
app:layout_constraintStart_toEndOf="@id/icon"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/select"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@+id/text"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/text"
|
||||
android:src="@drawable/ic_pay_selected"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible"
|
||||
android:layout_width="25dp"
|
||||
android:layout_height="25dp"/>
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1dp"
|
||||
android:background="#e4e4e4"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/text" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
25
app/src/main/res/layout/item_home_recommentd_tag.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="46dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_marginEnd="12dp">
|
||||
|
||||
<com.chwl.library.widget.text.DrawableTextView
|
||||
android:id="@+id/bg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
app:dt_drawableType="shape"
|
||||
app:dt_radius="25dp"
|
||||
app:dt_soildColor="@color/white"
|
||||
app:dt_startColor="@color/white"
|
||||
app:dt_strikeWidth="1dp" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="22dp"
|
||||
android:layout_gravity="center"
|
||||
android:src="@drawable/default_avatar" />
|
||||
|
||||
</FrameLayout>
|
@@ -5368,6 +5368,9 @@ You cannot join again within 24 hours after leaving</string>
|
||||
<string name="forbidTime">%s hours</string>
|
||||
<string name="ageLimitHint">APP restricts registration to users under 18 years old.</string>
|
||||
|
||||
|
||||
<string name="regionTips">必须选择国家/地区</string>
|
||||
|
||||
</resources>
|
||||
|
||||
|
||||
|