添加我的页面
|
|
@ -27,9 +27,10 @@ object Constants {
|
||||||
const val Encrypt = "zpzkfp72v3hgatzg5w7pyg86x5342kxt"
|
const val Encrypt = "zpzkfp72v3hgatzg5w7pyg86x5342kxt"
|
||||||
const val Signature = "ckBHUSWBx3TqwNT2kxMrsXyXFuA3PW"
|
const val Signature = "ckBHUSWBx3TqwNT2kxMrsXyXFuA3PW"
|
||||||
|
|
||||||
val almmsht = Typeface.createFromAsset(Utils.getApp().assets, "fonts/AlimamaShuHeiTi.ttf")
|
|
||||||
val dDIN_PRO_M = Typeface.createFromAsset(Utils.getApp().assets, "fonts/D-DIN-PRO-500-Medium.otf")
|
val dDIN_PRO_M = Typeface.createFromAsset(Utils.getApp().assets, "fonts/D-DIN-PRO-500-Medium.otf")
|
||||||
|
val almmsht = Typeface.createFromAsset(Utils.getApp().assets, "fonts/AlimamaShuHeiTi.ttf")
|
||||||
val douyinsansB = Typeface.createFromAsset(Utils.getApp().assets, "fonts/DouyinSansBold.otf")
|
val douyinsansB = Typeface.createFromAsset(Utils.getApp().assets, "fonts/DouyinSansBold.otf")
|
||||||
val pmzdbt = Typeface.createFromAsset(Utils.getApp().assets, "fonts/PangMenZhengDaoBiaoTiTi.ttf")
|
val pmzdbt = Typeface.createFromAsset(Utils.getApp().assets, "fonts/PangMenZhengDaoBiaoTiTi.ttf")
|
||||||
val dtjbt = Typeface.createFromAsset(Utils.getApp().assets, "fonts/DingTalk-JinBuTi.ttf")
|
val dtjbt = Typeface.createFromAsset(Utils.getApp().assets, "fonts/DingTalk-JinBuTi.ttf")
|
||||||
|
val ysbth = Typeface.createFromAsset(Utils.getApp().assets, "fonts/YouSheBiaoTiHei.ttf")
|
||||||
}
|
}
|
||||||
|
|
@ -40,8 +40,6 @@ object EventConstants {
|
||||||
|
|
||||||
const val JUMP_TO_BID_SEARCH = "client.jump.to.bid.search" //跳转到搜索
|
const val JUMP_TO_BID_SEARCH = "client.jump.to.bid.search" //跳转到搜索
|
||||||
|
|
||||||
const val JUMP_TO_SUBSCRIBE = "client.jump.to.subscribe" //跳转到订阅
|
|
||||||
|
|
||||||
const val JUMP_TO_GOODS_DETAIL = "client.jump.to.goods.detail" //跳转供应商商品详情
|
const val JUMP_TO_GOODS_DETAIL = "client.jump.to.goods.detail" //跳转供应商商品详情
|
||||||
|
|
||||||
const val JUMP_TO_PUBLISH = "client.jump.to.publish" //跳转到发布
|
const val JUMP_TO_PUBLISH = "client.jump.to.publish" //跳转到发布
|
||||||
|
|
@ -58,8 +56,20 @@ object EventConstants {
|
||||||
|
|
||||||
const val JUMP_TO_USER_SETTING = "client.jump.to.user.setting" //跳转到用户设置
|
const val JUMP_TO_USER_SETTING = "client.jump.to.user.setting" //跳转到用户设置
|
||||||
|
|
||||||
|
const val JUMP_TO_FAVORITE = "client.jump.to.favorite" //跳转到收藏页
|
||||||
|
|
||||||
|
const val JUMP_TO_SUBSCRIBE = "client.jump.to.subscribe" //跳转到订阅页
|
||||||
|
|
||||||
|
const val JUMP_TO_HISTORY = "client.jump.to.history" //跳转到足迹页
|
||||||
|
|
||||||
|
const val JUMP_TO_ORDER = "client.jump.to.order" //跳转到订单页
|
||||||
|
|
||||||
|
const val JUMP_TO_MESSAGE = "client.jump.to.message" //跳转到消息页
|
||||||
|
|
||||||
const val JUMP_TO_FEEDBACK = "client.jump.to.feedback" //跳转到意见反馈
|
const val JUMP_TO_FEEDBACK = "client.jump.to.feedback" //跳转到意见反馈
|
||||||
|
|
||||||
|
const val JUMP_TO_SERVICE = "client.jump.to.service" //跳转到联系客服
|
||||||
|
|
||||||
const val JUMP_TO_ACCOUNT_BIND = "client.jump.to.account.bind" //跳转到账号绑定
|
const val JUMP_TO_ACCOUNT_BIND = "client.jump.to.account.bind" //跳转到账号绑定
|
||||||
|
|
||||||
const val JUMP_TO_ACCOUNT_MANAGE = "client.jump.to.account.manage" //跳转到账号管理
|
const val JUMP_TO_ACCOUNT_MANAGE = "client.jump.to.account.manage" //跳转到账号管理
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ import com.example.base.utils.L
|
||||||
import com.example.base.utils.Utils
|
import com.example.base.utils.Utils
|
||||||
import com.cheng.bole.BuildConfig
|
import com.cheng.bole.BuildConfig
|
||||||
import com.cheng.bole.common.Constants
|
import com.cheng.bole.common.Constants
|
||||||
|
import com.cheng.bole.event.HomeRefreshEvent
|
||||||
import com.cheng.bole.manager.LoginManager
|
import com.cheng.bole.manager.LoginManager
|
||||||
import com.cheng.bole.ui.activity.LoginActivity
|
import com.cheng.bole.ui.activity.LoginActivity
|
||||||
import com.cheng.bole.ui.activity.PublicActivity
|
import com.cheng.bole.ui.activity.PublicActivity
|
||||||
|
|
@ -81,7 +82,7 @@ class ResponseInterceptor : Interceptor {
|
||||||
val decCode = JSON.parseObject(decryString).getInteger("code")
|
val decCode = JSON.parseObject(decryString).getInteger("code")
|
||||||
when (decCode) {
|
when (decCode) {
|
||||||
11018 -> {
|
11018 -> {
|
||||||
RxBus.defaultInstance.post(com.cheng.bole.event.HomeRefreshEvent())
|
RxBus.defaultInstance.post(HomeRefreshEvent())
|
||||||
}
|
}
|
||||||
|
|
||||||
19000 -> {
|
19000 -> {
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ class GuideFragment :BaseFragment<FragmentGuideContentBinding, GuideViewModel>()
|
||||||
ViewPager.SCROLL_STATE_IDLE->{
|
ViewPager.SCROLL_STATE_IDLE->{
|
||||||
if (!mIsScrolled && currentPosition == indicatorAdapter.itemCount - 1){
|
if (!mIsScrolled && currentPosition == indicatorAdapter.itemCount - 1){
|
||||||
if (UserConfigManager.getGuidePayEnable()){
|
if (UserConfigManager.getGuidePayEnable()){
|
||||||
PublicActivity.start(requireActivity(), VipFragment::class.java, Pair("origin", "guide"))
|
PublicActivity.start(requireActivity(), VipFragment::class.java, Pair("origin", "bootpage"))
|
||||||
}else{
|
}else{
|
||||||
requireActivity().startActivity<MainActivity>()
|
requireActivity().startActivity<MainActivity>()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ import com.cheng.bole.bean.MenuEntity
|
||||||
import com.cheng.bole.common.Constants
|
import com.cheng.bole.common.Constants
|
||||||
import com.cheng.bole.common.EventConstants
|
import com.cheng.bole.common.EventConstants
|
||||||
import com.cheng.bole.databinding.FragmentHomeBinding
|
import com.cheng.bole.databinding.FragmentHomeBinding
|
||||||
|
import com.cheng.bole.event.HomeRefreshEvent
|
||||||
import com.cheng.bole.manager.EventReportManager
|
import com.cheng.bole.manager.EventReportManager
|
||||||
import com.cheng.bole.manager.SearchHistoryManager
|
import com.cheng.bole.manager.SearchHistoryManager
|
||||||
import com.cheng.bole.manager.UserConfigManager
|
import com.cheng.bole.manager.UserConfigManager
|
||||||
|
|
@ -22,6 +23,7 @@ import com.cheng.bole.ui.fragment.home.zzdb.ZZDBFragment
|
||||||
import com.cheng.bole.ui.fragment.mine.vip.VipFragment
|
import com.cheng.bole.ui.fragment.mine.vip.VipFragment
|
||||||
import com.cheng.bole.ui.fragment.search.SearchFragment
|
import com.cheng.bole.ui.fragment.search.SearchFragment
|
||||||
import com.cheng.bole.ui.fragment.search.list.SearchListFragment
|
import com.cheng.bole.ui.fragment.search.list.SearchListFragment
|
||||||
|
import com.example.base.common.RxBus
|
||||||
import com.example.base.decoration.GridSpaceItemDecoration
|
import com.example.base.decoration.GridSpaceItemDecoration
|
||||||
import com.example.base.decoration.SpacesItemDecoration
|
import com.example.base.decoration.SpacesItemDecoration
|
||||||
import com.example.base.extensions.getColor
|
import com.example.base.extensions.getColor
|
||||||
|
|
@ -64,7 +66,7 @@ class HomeFragment : ListFragment<FragmentHomeBinding, HomeViewModel, BidItemBea
|
||||||
override fun initData() {
|
override fun initData() {
|
||||||
super.initData()
|
super.initData()
|
||||||
if (UserConfigManager.getBidTypes().isEmpty()) {
|
if (UserConfigManager.getBidTypes().isEmpty()) {
|
||||||
mViewModel.getBidTypeList()
|
mViewModel.getBidTypeList(true)
|
||||||
} else {
|
} else {
|
||||||
menuAdapter.setList(MenuEntity.getHomeMenu())
|
menuAdapter.setList(MenuEntity.getHomeMenu())
|
||||||
}
|
}
|
||||||
|
|
@ -165,5 +167,10 @@ class HomeFragment : ListFragment<FragmentHomeBinding, HomeViewModel, BidItemBea
|
||||||
PublicActivity.start(requireContext(), VipFragment::class.java, Pair("origin", "view_bid"))
|
PublicActivity.start(requireContext(), VipFragment::class.java, Pair("origin", "view_bid"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val homeRefreshEvent = RxBus.defaultInstance.toObservable(HomeRefreshEvent::class.java).subscribe {
|
||||||
|
firstLoad()
|
||||||
|
}
|
||||||
|
addDisposable(homeRefreshEvent)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -26,8 +26,8 @@ class HomeViewModel : ListViewModel<BidItemBean>() {
|
||||||
return response.toListResult()
|
return response.toListResult()
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getBidTypeList() {
|
fun getBidTypeList(showLoading: Boolean = false) {
|
||||||
showDialog()
|
if (showLoading) showDialog()
|
||||||
launchOnUiTryCatch({
|
launchOnUiTryCatch({
|
||||||
val response = ApiFactory.apiService.getBidTypeList()
|
val response = ApiFactory.apiService.getBidTypeList()
|
||||||
if (response.status) {
|
if (response.status) {
|
||||||
|
|
|
||||||
|
|
@ -166,7 +166,7 @@ class OneKeyLoginFragment : BaseFragment<FragmentOnekeyLoginBinding, OnekeyLogin
|
||||||
.setUiErrorListener { //隐私协议未打勾、界面不合规、setLoginOnClickListener抛出异常等情况下的回调
|
.setUiErrorListener { //隐私协议未打勾、界面不合规、setLoginOnClickListener抛出异常等情况下的回调
|
||||||
mViewModel.dismissDialog()
|
mViewModel.dismissDialog()
|
||||||
}
|
}
|
||||||
.setLoginOnClickListener { view: View? ->
|
.setLoginOnClickListener {
|
||||||
L.d("一键登录按钮 onLoginClick:")
|
L.d("一键登录按钮 onLoginClick:")
|
||||||
if (!binding.cbAgree.isChecked) {
|
if (!binding.cbAgree.isChecked) {
|
||||||
val loginTipDialog = LoginTipDialog.newInstance(1)
|
val loginTipDialog = LoginTipDialog.newInstance(1)
|
||||||
|
|
@ -177,7 +177,6 @@ class OneKeyLoginFragment : BaseFragment<FragmentOnekeyLoginBinding, OnekeyLogin
|
||||||
// 抛出异常,避免sdk进行后续登录动作(否则eAccountLogin会回调onFailed错误)
|
// 抛出异常,避免sdk进行后续登录动作(否则eAccountLogin会回调onFailed错误)
|
||||||
throw IllegalStateException("请先仔细阅读协议并勾选,然后再点击登录")
|
throw IllegalStateException("请先仔细阅读协议并勾选,然后再点击登录")
|
||||||
}
|
}
|
||||||
mViewModel.showDialog()
|
|
||||||
}
|
}
|
||||||
// 请在预登录成功之后、设置好privacyTv的内容之后再调用eAccountLogin
|
// 请在预登录成功之后、设置好privacyTv的内容之后再调用eAccountLogin
|
||||||
GYManager.getInstance().eAccountLogin(eloginActivityParam, 5000, object : GyCallBack {
|
GYManager.getInstance().eAccountLogin(eloginActivityParam, 5000, object : GyCallBack {
|
||||||
|
|
@ -191,7 +190,6 @@ class OneKeyLoginFragment : BaseFragment<FragmentOnekeyLoginBinding, OnekeyLogin
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onFailed(response: GYResponse) {
|
override fun onFailed(response: GYResponse) {
|
||||||
|
|
@ -202,11 +200,9 @@ class OneKeyLoginFragment : BaseFragment<FragmentOnekeyLoginBinding, OnekeyLogin
|
||||||
if (errorCode != -20301) { //关闭一键登录界面不用提示
|
if (errorCode != -20301) { //关闭一键登录界面不用提示
|
||||||
toast("一键登录失败:$response")
|
toast("一键登录失败:$response")
|
||||||
}
|
}
|
||||||
//...
|
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ class OnekeyLoginViewModel : BaseViewModel() {
|
||||||
}
|
}
|
||||||
|
|
||||||
fun oneKeyLogin(gyuid: String, token: String) {
|
fun oneKeyLogin(gyuid: String, token: String) {
|
||||||
|
showDialog()
|
||||||
launchOnUiTryCatch({
|
launchOnUiTryCatch({
|
||||||
val jsonOneKey = JsonObject()
|
val jsonOneKey = JsonObject()
|
||||||
jsonOneKey.addProperty("gyuid", gyuid)
|
jsonOneKey.addProperty("gyuid", gyuid)
|
||||||
|
|
@ -42,7 +43,9 @@ class OnekeyLoginViewModel : BaseViewModel() {
|
||||||
if (response.status) {
|
if (response.status) {
|
||||||
onekeyLoginLiveData.postValue(response.data)
|
onekeyLoginLiveData.postValue(response.data)
|
||||||
} else toast(response.message, true)
|
} else toast(response.message, true)
|
||||||
|
dismissDialog()
|
||||||
}, {
|
}, {
|
||||||
|
dismissDialog()
|
||||||
setError(it)
|
setError(it)
|
||||||
L.d(it)
|
L.d(it)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,7 @@ class MainFragment : BaseFragment<FragmentMainBinding, MainViewModel>() {
|
||||||
}
|
}
|
||||||
|
|
||||||
when (currentPosition) {
|
when (currentPosition) {
|
||||||
0 -> RxBus.defaultInstance.post(HomeRefreshEvent())
|
// 0 -> RxBus.defaultInstance.post(HomeRefreshEvent())
|
||||||
}
|
}
|
||||||
lastCheckTime = System.currentTimeMillis()
|
lastCheckTime = System.currentTimeMillis()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -66,8 +66,7 @@ class MerchantGoodsListFragment : ListFragment<FragmentMerchantGoodsListBinding,
|
||||||
if (it.auth) {
|
if (it.auth) {
|
||||||
PublicActivity.start(requireActivity(), MerchantGoodsDetailFragment::class.java, Pair("item", item))
|
PublicActivity.start(requireActivity(), MerchantGoodsDetailFragment::class.java, Pair("item", item))
|
||||||
} else {
|
} else {
|
||||||
// PublicActivity.start(requireContext(), VipFragment::class.java, Pair("origin", "view_goods"))
|
PublicActivity.start(requireContext(), VipFragment::class.java, Pair("origin", "view_goods"))
|
||||||
PublicActivity.start(requireActivity(), MerchantGoodsDetailFragment::class.java, Pair("item", item))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,218 @@
|
||||||
package com.cheng.bole.ui.fragment.mine
|
package com.cheng.bole.ui.fragment.mine
|
||||||
|
|
||||||
|
import android.annotation.SuppressLint
|
||||||
|
import android.text.TextUtils
|
||||||
|
import android.view.View
|
||||||
|
import coil.load
|
||||||
|
import coil.transform.CircleCropTransformation
|
||||||
|
import com.cheng.bole.R
|
||||||
|
import com.cheng.bole.bean.UserEntity
|
||||||
|
import com.cheng.bole.common.Constants
|
||||||
|
import com.cheng.bole.common.EventConstants
|
||||||
import com.cheng.bole.databinding.FragmentMineBinding
|
import com.cheng.bole.databinding.FragmentMineBinding
|
||||||
|
import com.cheng.bole.event.MineRefreshEvent
|
||||||
|
import com.cheng.bole.manager.EventReportManager
|
||||||
|
import com.cheng.bole.manager.LoginManager
|
||||||
|
import com.cheng.bole.manager.UserConfigManager
|
||||||
|
import com.cheng.bole.ui.activity.LoginActivity
|
||||||
|
import com.cheng.bole.ui.activity.PublicActivity
|
||||||
|
import com.cheng.bole.ui.dialog.ShareDialog
|
||||||
|
import com.cheng.bole.ui.fragment.mine.feedback.FeedbackFragment
|
||||||
|
import com.cheng.bole.ui.fragment.mine.vip.VipFragment
|
||||||
|
import com.example.base.common.RxBus
|
||||||
|
import com.example.base.extensions.getColor
|
||||||
|
import com.example.base.extensions.onClick
|
||||||
|
import com.example.base.extensions.toast
|
||||||
import com.example.base.ui.BaseFragment
|
import com.example.base.ui.BaseFragment
|
||||||
|
import com.example.base.utils.ClipboardUtils
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 我的
|
* 我的
|
||||||
*/
|
*/
|
||||||
class MineFragment : BaseFragment<FragmentMineBinding, MineViewModel>() {
|
class MineFragment : BaseFragment<FragmentMineBinding, MineViewModel>() {
|
||||||
|
private var userInfo: UserEntity? = null
|
||||||
|
|
||||||
|
private var isInit = true
|
||||||
|
|
||||||
|
private var isEnterprise = false
|
||||||
|
|
||||||
|
override fun initView() {
|
||||||
|
super.initView()
|
||||||
|
binding.tvVipName.typeface = Constants.ysbth
|
||||||
|
binding.tvPushCount.typeface = Constants.dDIN_PRO_M
|
||||||
|
binding.tvFavoriteCount.typeface = Constants.dDIN_PRO_M
|
||||||
|
binding.tvHistoryCount.typeface = Constants.dDIN_PRO_M
|
||||||
|
binding.tvOrderCount.typeface = Constants.dDIN_PRO_M
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onResume() {
|
||||||
|
super.onResume()
|
||||||
|
mViewModel.userInfo(isInit)
|
||||||
|
if (isInit) isInit = false
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun initData() {
|
||||||
|
super.initData()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun initListener() {
|
||||||
|
super.initListener()
|
||||||
|
binding.btnLogin.onClick {
|
||||||
|
LoginActivity.start(requireActivity(), Pair("from", 1))
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_LOGIN, "center", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvUserId.onClick {
|
||||||
|
if (!TextUtils.isEmpty(userInfo?.user_id)) {
|
||||||
|
ClipboardUtils.copyText(userInfo?.user_id)
|
||||||
|
toast("复制成功")
|
||||||
|
EventReportManager.eventReport(EventConstants.COPY_USER_ID, "", "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvVipName.onClick {
|
||||||
|
PublicActivity.start(requireContext(), VipFragment::class.java, Pair("origin", "center"))
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_MEMBER_RECHARGE, "center", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvExpireTime.onClick { binding.tvVipName.performClick() }
|
||||||
|
|
||||||
|
binding.ivSetting.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), SettingFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_SYSTEM_SETTING, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.ivMessage.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), MessageFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_MESSAGE, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.layoutPush.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), SubscribeFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_SUBSCRIBE, "center", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.layoutFavorite.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), FavoriteFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_FAVORITE, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.layoutHistory.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), HistoryFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_HISTORY, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.layoutOrder.onClick {
|
||||||
|
// PublicActivity.start(requireContext(), OrderFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_ORDER, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvMyPublish.onClick {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvAuth.onClick {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvSeatManage.onClick {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvService.onClick {
|
||||||
|
mViewModel.wxService()
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_SERVICE, "", "")
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvShare.onClick {
|
||||||
|
if (UserConfigManager.getShareEntity() != null) {
|
||||||
|
ShareDialog().show(childFragmentManager, "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
binding.tvFeedback.onClick {
|
||||||
|
PublicActivity.start(requireContext(), FeedbackFragment::class.java)
|
||||||
|
EventReportManager.eventReport(EventConstants.JUMP_TO_FEEDBACK, "", "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun initObserve() {
|
||||||
|
super.initObserve()
|
||||||
|
mViewModel.userInfoLiveData.observe(this) {
|
||||||
|
userInfo = it
|
||||||
|
UserConfigManager.userInfoLiveData.postValue(it)
|
||||||
|
setUserInfo()
|
||||||
|
}
|
||||||
|
|
||||||
|
val mineRefreshEvent = RxBus.defaultInstance.toObservable(MineRefreshEvent::class.java).subscribe {
|
||||||
|
mViewModel.userInfo()
|
||||||
|
}
|
||||||
|
addDisposable(mineRefreshEvent)
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressLint("SetTextI18n")
|
||||||
|
private fun setUserInfo() {
|
||||||
|
if (userInfo == null) return
|
||||||
|
binding.ivAvatar.load(userInfo?.avater) {
|
||||||
|
transformations(CircleCropTransformation())
|
||||||
|
placeholder(R.mipmap.ic_default_avatar)
|
||||||
|
error(R.mipmap.ic_default_avatar)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (userInfo?.vip == "1") {
|
||||||
|
isEnterprise = false
|
||||||
|
|
||||||
|
binding.tvVipName.text = "开通会员"
|
||||||
|
binding.tvExpireTime.text = "开通会员,查看海量商机"
|
||||||
|
|
||||||
|
binding.tvVipName.setTextColor(getColor(R.color.color_fbcd8c))
|
||||||
|
binding.tvExpireTime.setTextColor(getColor(R.color.color_bcac8e))
|
||||||
|
binding.tvExpireTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.mipmap.ic_mine_arrow1, 0)
|
||||||
|
binding.ivVipBg.setImageResource(R.mipmap.ic_mine_vip_bg1)
|
||||||
|
} else if (userInfo?.vip == "2") {
|
||||||
|
isEnterprise = false
|
||||||
|
|
||||||
|
binding.tvVipName.text = "普通会员"
|
||||||
|
binding.tvExpireTime.text = "${userInfo!!.vip_expire} 会员到期"
|
||||||
|
|
||||||
|
binding.tvVipName.setTextColor(getColor(R.color.color_fbcd8c))
|
||||||
|
binding.tvExpireTime.setTextColor(getColor(R.color.color_bcac8e))
|
||||||
|
binding.tvExpireTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.mipmap.ic_mine_arrow1, 0)
|
||||||
|
binding.ivVipBg.setImageResource(R.mipmap.ic_mine_vip_bg1)
|
||||||
|
} else if (userInfo?.vip == "3") {
|
||||||
|
isEnterprise = false
|
||||||
|
|
||||||
|
binding.tvVipName.text = "终生会员"
|
||||||
|
binding.tvExpireTime.text = "享受永久会员专属权益"
|
||||||
|
|
||||||
|
binding.tvVipName.setTextColor(getColor(R.color.color_fbcd8c))
|
||||||
|
binding.tvExpireTime.setTextColor(getColor(R.color.color_bcac8e))
|
||||||
|
binding.tvExpireTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.mipmap.ic_mine_arrow1, 0)
|
||||||
|
binding.ivVipBg.setImageResource(R.mipmap.ic_mine_vip_bg2)
|
||||||
|
} else if (userInfo?.vip == "12") {
|
||||||
|
isEnterprise = true
|
||||||
|
|
||||||
|
binding.tvVipName.text = "普通企业"
|
||||||
|
binding.tvExpireTime.text = "${userInfo!!.vip_expire} 会员到期"
|
||||||
|
|
||||||
|
binding.tvVipName.setTextColor(getColor(R.color.color_c5ffe1))
|
||||||
|
binding.tvExpireTime.setTextColor(getColor(R.color.color_a6c8ba))
|
||||||
|
binding.tvExpireTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.mipmap.ic_mine_arrow2, 0)
|
||||||
|
binding.ivVipBg.setBackgroundResource(R.mipmap.ic_mine_vip_bg2)
|
||||||
|
} else if (userInfo?.vip == "11") {
|
||||||
|
isEnterprise = true
|
||||||
|
|
||||||
|
binding.tvVipName.text = "终生企业"
|
||||||
|
binding.tvExpireTime.text = "享受永久会员专属权益"
|
||||||
|
|
||||||
|
binding.tvVipName.setTextColor(getColor(R.color.color_c5ffe1))
|
||||||
|
binding.tvExpireTime.setTextColor(getColor(R.color.color_a6c8ba))
|
||||||
|
binding.tvExpireTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.mipmap.ic_mine_arrow2, 0)
|
||||||
|
binding.ivVipBg.setBackgroundResource(R.mipmap.ic_mine_vip_bg2)
|
||||||
|
}
|
||||||
|
binding.tvUsername.text = userInfo?.name
|
||||||
|
binding.tvUserId.text = "ID:${userInfo?.user_id}"
|
||||||
|
binding.btnLogin.visibility = if (LoginManager.isLogin()) View.GONE else View.VISIBLE
|
||||||
|
binding.tvSeatManage.visibility = if (isEnterprise) View.VISIBLE else View.GONE
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
package com.cheng.bole.ui.fragment.mine
|
package com.cheng.bole.ui.fragment.mine
|
||||||
|
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
import com.cheng.bole.bean.UserEntity
|
||||||
|
import com.cheng.bole.bean.WxServiceEntity
|
||||||
import com.cheng.bole.common.Constants
|
import com.cheng.bole.common.Constants
|
||||||
import com.cheng.bole.net.ApiFactory
|
import com.cheng.bole.net.ApiFactory
|
||||||
import com.example.base.extensions.toast
|
import com.example.base.extensions.toast
|
||||||
|
|
@ -12,7 +14,7 @@ import com.tencent.mm.opensdk.modelbiz.WXOpenCustomerServiceChat
|
||||||
import com.tencent.mm.opensdk.openapi.WXAPIFactory
|
import com.tencent.mm.opensdk.openapi.WXAPIFactory
|
||||||
|
|
||||||
class MineViewModel : BaseViewModel() {
|
class MineViewModel : BaseViewModel() {
|
||||||
val userInfoLiveData = MutableLiveData<com.cheng.bole.bean.UserEntity>()
|
val userInfoLiveData = MutableLiveData<UserEntity>()
|
||||||
|
|
||||||
fun userInfo(showLoading: Boolean = false) {
|
fun userInfo(showLoading: Boolean = false) {
|
||||||
if (showLoading) showDialog()
|
if (showLoading) showDialog()
|
||||||
|
|
@ -46,7 +48,7 @@ class MineViewModel : BaseViewModel() {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun contactClientService(data: com.cheng.bole.bean.WxServiceEntity) {
|
private fun contactClientService(data: WxServiceEntity) {
|
||||||
val api = WXAPIFactory.createWXAPI(Utils.getApp(), Constants.WechatAppId)
|
val api = WXAPIFactory.createWXAPI(Utils.getApp(), Constants.WechatAppId)
|
||||||
if (!api!!.isWXAppInstalled) {
|
if (!api!!.isWXAppInstalled) {
|
||||||
toast("未安装微信客户端")
|
toast("未安装微信客户端")
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@ import android.annotation.SuppressLint
|
||||||
import android.text.Editable
|
import android.text.Editable
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.text.TextWatcher
|
import android.text.TextWatcher
|
||||||
|
import android.view.ViewTreeObserver
|
||||||
|
import androidx.constraintlayout.widget.ConstraintLayout
|
||||||
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import com.cheng.bole.R
|
import com.cheng.bole.R
|
||||||
import com.cheng.bole.bean.UploadFileEntity
|
import com.cheng.bole.bean.UploadFileEntity
|
||||||
|
|
@ -11,6 +13,7 @@ import com.cheng.bole.common.Constants
|
||||||
import com.cheng.bole.databinding.FragmentFeedbackBinding
|
import com.cheng.bole.databinding.FragmentFeedbackBinding
|
||||||
import com.cheng.bole.ui.fragment.photo.AddImageAdapter
|
import com.cheng.bole.ui.fragment.photo.AddImageAdapter
|
||||||
import com.cheng.bole.utils.PermissionUtils
|
import com.cheng.bole.utils.PermissionUtils
|
||||||
|
import com.efs.sdk.memleaksdk.monitor.internal.bi
|
||||||
import com.example.base.extensions.onClick
|
import com.example.base.extensions.onClick
|
||||||
import com.example.base.extensions.toast
|
import com.example.base.extensions.toast
|
||||||
import com.example.base.ui.BaseFragment
|
import com.example.base.ui.BaseFragment
|
||||||
|
|
@ -39,11 +42,23 @@ class FeedbackFragment : BaseFragment<FragmentFeedbackBinding, FeedbackViewModel
|
||||||
super.initView()
|
super.initView()
|
||||||
mTitleBar?.background = null
|
mTitleBar?.background = null
|
||||||
|
|
||||||
|
binding.tvTitle.typeface = Constants.pmzdbt
|
||||||
|
|
||||||
binding.etFeedbackContent.addTextChangedListener(textWatcher)
|
binding.etFeedbackContent.addTextChangedListener(textWatcher)
|
||||||
|
|
||||||
binding.rvImage.layoutManager = GridLayoutManager(context, 3)
|
binding.rvImage.layoutManager = GridLayoutManager(context, 3)
|
||||||
imageAdapter.selectMax = 3
|
imageAdapter.selectMax = 3
|
||||||
binding.rvImage.adapter = imageAdapter
|
binding.rvImage.adapter = imageAdapter
|
||||||
|
|
||||||
|
binding.mTitleBar.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener {
|
||||||
|
override fun onGlobalLayout() {
|
||||||
|
val lp = binding.tvTitle.layoutParams as ConstraintLayout.LayoutParams
|
||||||
|
lp.topMargin = binding.mTitleBar.height
|
||||||
|
binding.tvTitle.layoutParams = lp
|
||||||
|
|
||||||
|
binding.mTitleBar.viewTreeObserver.removeOnGlobalLayoutListener(this)
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun initData() {
|
override fun initData() {
|
||||||
|
|
@ -66,7 +81,7 @@ class FeedbackFragment : BaseFragment<FragmentFeedbackBinding, FeedbackViewModel
|
||||||
toast("请输入详情内容")
|
toast("请输入详情内容")
|
||||||
return@onClick
|
return@onClick
|
||||||
}
|
}
|
||||||
if (selectImg.isEmpty() && selectedPhotoList.size > 0) {
|
if (selectImg.isEmpty() && selectedPhotoList.isNotEmpty()) {
|
||||||
mViewModel.upload(requireContext(), selectedPhotoList)
|
mViewModel.upload(requireContext(), selectedPhotoList)
|
||||||
} else {
|
} else {
|
||||||
commit()
|
commit()
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ import java.text.DecimalFormat
|
||||||
|
|
||||||
class VipFragment : BaseFragment<FragmentVipBinding, VipViewModel>() {
|
class VipFragment : BaseFragment<FragmentVipBinding, VipViewModel>() {
|
||||||
private val origin by lazy { arguments?.getString("origin") ?: "center" }
|
private val origin by lazy { arguments?.getString("origin") ?: "center" }
|
||||||
private val isGuide by lazy { origin == "guide" }
|
private val isGuide by lazy { origin == "bootpage" }
|
||||||
|
|
||||||
private lateinit var api: IWXAPI
|
private lateinit var api: IWXAPI
|
||||||
private var isAgree = false
|
private var isAgree = false
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,6 @@ import com.cheng.bole.R
|
||||||
import com.cheng.bole.common.Constants
|
import com.cheng.bole.common.Constants
|
||||||
import com.cheng.bole.common.EventConstants
|
import com.cheng.bole.common.EventConstants
|
||||||
import com.cheng.bole.databinding.FragmentPushBinding
|
import com.cheng.bole.databinding.FragmentPushBinding
|
||||||
import com.cheng.bole.event.HomeRefreshEvent
|
|
||||||
import com.cheng.bole.event.SubscriptionEvent
|
import com.cheng.bole.event.SubscriptionEvent
|
||||||
import com.cheng.bole.manager.EventReportManager
|
import com.cheng.bole.manager.EventReportManager
|
||||||
import com.cheng.bole.manager.UserConfigManager
|
import com.cheng.bole.manager.UserConfigManager
|
||||||
|
|
@ -108,15 +107,6 @@ class PushFragment : BaseFragment<FragmentPushBinding, PushViewModel>() {
|
||||||
mViewModel.getSubscriptionList()
|
mViewModel.getSubscriptionList()
|
||||||
}
|
}
|
||||||
|
|
||||||
val homeRefreshEvent = RxBus.defaultInstance.toObservable(HomeRefreshEvent::class.java).subscribe {
|
|
||||||
if (UserConfigManager.getBidTypes().isEmpty()) {
|
|
||||||
mViewModel.getBidTypeList()
|
|
||||||
} else {
|
|
||||||
mViewModel.getSubscriptionList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
addDisposable(homeRefreshEvent)
|
|
||||||
|
|
||||||
val subscriptionEvent = RxBus.defaultInstance.toObservable(SubscriptionEvent::class.java).subscribe {
|
val subscriptionEvent = RxBus.defaultInstance.toObservable(SubscriptionEvent::class.java).subscribe {
|
||||||
if (UserConfigManager.getBidTypes().isEmpty()) {
|
if (UserConfigManager.getBidTypes().isEmpty()) {
|
||||||
mViewModel.getBidTypeList()
|
mViewModel.getBidTypeList()
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:drawable="@drawable/shape_10466afd_cor4" android:state_checked="true" />
|
<item android:drawable="@drawable/shape_feedback_checked" android:state_checked="true" />
|
||||||
<item android:drawable="@drawable/shape_cccccc_line_cor4" android:state_checked="false" />
|
<item android:drawable="@drawable/shape_f6f6f6_cor4" android:state_checked="false" />
|
||||||
</selector>
|
</selector>
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:shape="oval">
|
||||||
|
<solid android:color="@color/color_3bbf0f" />
|
||||||
|
<size
|
||||||
|
android:width="@dimen/dp_6"
|
||||||
|
android:height="@dimen/dp_6" />
|
||||||
|
</shape>
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:shape="oval">
|
||||||
|
<solid android:color="@color/color_ff592b" />
|
||||||
|
<size
|
||||||
|
android:width="@dimen/dp_6"
|
||||||
|
android:height="@dimen/dp_6" />
|
||||||
|
</shape>
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<solid android:color="#F5F7FC" />
|
||||||
|
<corners
|
||||||
|
android:topLeftRadius="@dimen/dp_16"
|
||||||
|
android:topRightRadius="@dimen/dp_16" />
|
||||||
|
</shape>
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<corners android:radius="@dimen/dp_4" />
|
<corners android:radius="@dimen/dp_4" />
|
||||||
<solid android:color="#1a466afd" />
|
<solid android:color="#F3F7FF" />
|
||||||
<stroke
|
<stroke
|
||||||
android:width="@dimen/dp_1"
|
android:width="@dimen/dp_1"
|
||||||
android:color="@color/color_125ffe" />
|
android:color="@color/color_125ffe" />
|
||||||
|
|
@ -1,38 +1,69 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent">
|
||||||
android:background="@color/white">
|
|
||||||
|
|
||||||
<com.example.base.widget.TitleBar
|
|
||||||
android:id="@+id/mTitleBar"
|
|
||||||
style="@style/Custom.TitleBar"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
app:navigationIcon="@drawable/ic_back_black"
|
|
||||||
app:title="意见反馈" />
|
|
||||||
|
|
||||||
<androidx.core.widget.NestedScrollView
|
<androidx.core.widget.NestedScrollView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
app:layout_constraintBottom_toTopOf="@id/layout_bottom"
|
app:layout_constraintBottom_toTopOf="@id/layout_bottom"
|
||||||
app:layout_constraintTop_toBottomOf="@id/mTitleBar">
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/iv_top_bg"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_20"
|
||||||
|
android:src="@mipmap/ic_feedback_top_bg"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_36"
|
||||||
|
android:layout_marginTop="88dp"
|
||||||
|
android:text="意见反馈"
|
||||||
|
android:textColor="#000511"
|
||||||
|
android:textSize="@dimen/sp_30"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<com.lihang.ShadowLayout
|
||||||
|
android:id="@+id/layout_type"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_9"
|
||||||
|
android:layout_marginTop="@dimen/dp_15"
|
||||||
|
android:layout_marginEnd="@dimen/dp_9"
|
||||||
|
app:hl_cornerRadius="@dimen/dp_12"
|
||||||
|
app:hl_shadowColor="#0d4a4f5b"
|
||||||
|
app:hl_shadowLimit="@dimen/dp_7"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_title">
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="@dimen/dp_16">
|
android:paddingStart="@dimen/dp_12"
|
||||||
|
android:paddingTop="@dimen/dp_16"
|
||||||
|
android:paddingEnd="@dimen/dp_12"
|
||||||
|
android:paddingBottom="@dimen/dp_16">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tv_feedback_type_title"
|
android:id="@+id/tv_feedback_type_title"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="请选择您要反馈的问题"
|
android:fontFamily="sans-serif-medium"
|
||||||
|
android:text="选择反馈类型"
|
||||||
android:textColor="@color/color_1a1a1a"
|
android:textColor="@color/color_1a1a1a"
|
||||||
android:textSize="@dimen/sp_14"
|
android:textSize="@dimen/sp_16"
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
|
@ -56,8 +87,9 @@
|
||||||
|
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:id="@+id/rg_1"
|
android:id="@+id/rg_1"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="@dimen/dp_32"
|
android:layout_height="@dimen/dp_32"
|
||||||
|
android:layout_weight="1"
|
||||||
android:background="@drawable/selector_feedback_type_bg"
|
android:background="@drawable/selector_feedback_type_bg"
|
||||||
android:button="@null"
|
android:button="@null"
|
||||||
android:checked="true"
|
android:checked="true"
|
||||||
|
|
@ -70,9 +102,10 @@
|
||||||
|
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:id="@+id/rg_2"
|
android:id="@+id/rg_2"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="@dimen/dp_32"
|
android:layout_height="@dimen/dp_32"
|
||||||
android:layout_marginStart="@dimen/dp_12"
|
android:layout_marginStart="@dimen/dp_12"
|
||||||
|
android:layout_weight="1"
|
||||||
android:background="@drawable/selector_feedback_type_bg"
|
android:background="@drawable/selector_feedback_type_bg"
|
||||||
android:button="@null"
|
android:button="@null"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
|
|
@ -84,9 +117,10 @@
|
||||||
|
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:id="@+id/rg_3"
|
android:id="@+id/rg_3"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="@dimen/dp_32"
|
android:layout_height="@dimen/dp_32"
|
||||||
android:layout_marginStart="@dimen/dp_12"
|
android:layout_marginStart="@dimen/dp_12"
|
||||||
|
android:layout_weight="1"
|
||||||
android:background="@drawable/selector_feedback_type_bg"
|
android:background="@drawable/selector_feedback_type_bg"
|
||||||
android:button="@null"
|
android:button="@null"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
|
|
@ -96,18 +130,38 @@
|
||||||
android:textColor="@drawable/selector_feedback_text_color"
|
android:textColor="@drawable/selector_feedback_text_color"
|
||||||
android:textSize="@dimen/sp_14" />
|
android:textSize="@dimen/sp_14" />
|
||||||
</RadioGroup>
|
</RadioGroup>
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</com.lihang.ShadowLayout>
|
||||||
|
|
||||||
|
<com.lihang.ShadowLayout
|
||||||
|
android:id="@+id/layout_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_9"
|
||||||
|
android:layout_marginEnd="@dimen/dp_9"
|
||||||
|
app:hl_cornerRadius="@dimen/dp_12"
|
||||||
|
app:hl_shadowColor="#0d4a4f5b"
|
||||||
|
app:hl_shadowLimit="@dimen/dp_7"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/layout_type">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingStart="@dimen/dp_12"
|
||||||
|
android:paddingTop="@dimen/dp_16"
|
||||||
|
android:paddingEnd="@dimen/dp_12"
|
||||||
|
android:paddingBottom="@dimen/dp_16">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tv_feedback_content_title"
|
android:id="@+id/tv_feedback_content_title"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="@dimen/dp_20"
|
android:fontFamily="sans-serif-medium"
|
||||||
android:text="问题描述"
|
android:text="问题描述"
|
||||||
android:textColor="@color/color_1a1a1a"
|
android:textColor="@color/color_1a1a1a"
|
||||||
android:textSize="@dimen/sp_14"
|
android:textSize="@dimen/sp_16"
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/rg_feedback_type" />
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|
@ -123,16 +177,12 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="@dimen/dp_16"
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
android:background="@drawable/shape_dfdfdf_line_cor8"
|
android:background="@null"
|
||||||
android:gravity="start"
|
android:gravity="start"
|
||||||
android:hint="请输入详情内容"
|
android:hint="请写下您遇到的问题或宝贵建议~"
|
||||||
android:inputType="textMultiLine"
|
android:inputType="textMultiLine"
|
||||||
android:maxLength="200"
|
android:maxLength="200"
|
||||||
android:minHeight="@dimen/dp_150"
|
android:minHeight="@dimen/dp_150"
|
||||||
android:paddingStart="@dimen/dp_12"
|
|
||||||
android:paddingTop="@dimen/dp_14"
|
|
||||||
android:paddingEnd="@dimen/dp_12"
|
|
||||||
android:paddingBottom="@dimen/dp_14"
|
|
||||||
android:textColor="@color/color_1a1a1a"
|
android:textColor="@color/color_1a1a1a"
|
||||||
android:textColorHint="@color/color_bcbcbc"
|
android:textColorHint="@color/color_bcbcbc"
|
||||||
android:textSize="@dimen/sp_14"
|
android:textSize="@dimen/sp_14"
|
||||||
|
|
@ -144,50 +194,71 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginEnd="@dimen/dp_8"
|
android:layout_marginEnd="@dimen/dp_8"
|
||||||
android:layout_marginBottom="@dimen/dp_8"
|
android:layout_marginBottom="@dimen/dp_8"
|
||||||
android:text="0/200"
|
android:text="0/500"
|
||||||
android:textColor="@color/color_999999"
|
android:textColor="@color/color_999999"
|
||||||
android:textSize="@dimen/sp_10"
|
android:textSize="@dimen/sp_10"
|
||||||
app:layout_constraintBottom_toBottomOf="@id/et_feedback_content"
|
app:layout_constraintBottom_toBottomOf="@id/et_feedback_content"
|
||||||
app:layout_constraintEnd_toEndOf="@id/et_feedback_content" />
|
app:layout_constraintEnd_toEndOf="@id/et_feedback_content" />
|
||||||
|
|
||||||
<TextView
|
<View
|
||||||
android:id="@+id/tv_feedback_image_title"
|
android:id="@+id/divider"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="@dimen/dp_2"
|
||||||
android:layout_marginTop="@dimen/dp_20"
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
android:text="上传图片"
|
android:background="@drawable/shape_dde2eb_dash_divider_h"
|
||||||
android:textColor="@color/color_1a1a1a"
|
|
||||||
android:textSize="@dimen/sp_14"
|
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@id/et_feedback_content" />
|
app:layout_constraintTop_toBottomOf="@id/et_feedback_content" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tv_image_tip"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_14"
|
||||||
android:text="(选填,最多可上传3张)"
|
android:text="(选填,最多可上传3张)"
|
||||||
android:textColor="@color/color_999999"
|
android:textColor="@color/color_999999"
|
||||||
android:textSize="@dimen/sp_10"
|
android:textSize="@dimen/sp_10"
|
||||||
app:layout_constraintBottom_toBottomOf="@id/tv_feedback_image_title"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintStart_toEndOf="@id/tv_feedback_image_title"
|
app:layout_constraintTop_toBottomOf="@id/divider" />
|
||||||
app:layout_constraintTop_toTopOf="@id/tv_feedback_image_title" />
|
|
||||||
|
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/rv_image"
|
android:id="@+id/rv_image"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="@dimen/dp_16"
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
app:layout_constraintTop_toBottomOf="@id/tv_feedback_image_title" />
|
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_image_tip"
|
||||||
|
app:spanCount="3"
|
||||||
|
tools:itemCount="1"
|
||||||
|
tools:listitem="@layout/listitem_add_img" />
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</com.lihang.ShadowLayout>
|
||||||
|
|
||||||
|
<com.lihang.ShadowLayout
|
||||||
|
android:id="@+id/layout_contacts"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_9"
|
||||||
|
android:layout_marginEnd="@dimen/dp_9"
|
||||||
|
app:hl_cornerRadius="@dimen/dp_12"
|
||||||
|
app:hl_shadowColor="#0d4a4f5b"
|
||||||
|
app:hl_shadowLimit="@dimen/dp_7"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/layout_content">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingStart="@dimen/dp_12"
|
||||||
|
android:paddingTop="@dimen/dp_16"
|
||||||
|
android:paddingEnd="@dimen/dp_12"
|
||||||
|
android:paddingBottom="@dimen/dp_16">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tv_contact_info_title"
|
android:id="@+id/tv_contact_info_title"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="@dimen/dp_20"
|
android:fontFamily="sans-serif-medium"
|
||||||
android:text="联系方式"
|
android:text="联系方式"
|
||||||
android:textColor="@color/color_1a1a1a"
|
android:textColor="@color/color_1a1a1a"
|
||||||
android:textSize="@dimen/sp_14"
|
android:textSize="@dimen/sp_16"
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/rv_image" />
|
app:layout_constraintTop_toBottomOf="@id/rv_image" />
|
||||||
|
|
||||||
|
|
@ -204,19 +275,20 @@
|
||||||
<androidx.appcompat.widget.AppCompatEditText
|
<androidx.appcompat.widget.AppCompatEditText
|
||||||
android:id="@+id/et_contact_info"
|
android:id="@+id/et_contact_info"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="@dimen/dp_48"
|
||||||
android:layout_marginTop="@dimen/dp_16"
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
android:background="@drawable/shape_dfdfdf_line_cor8"
|
android:background="@drawable/shape_dfdfdf_line_cor8"
|
||||||
android:hint="请输入您的联系方式"
|
android:hint="请输入联系方式"
|
||||||
android:lines="1"
|
android:lines="1"
|
||||||
android:paddingStart="@dimen/dp_12"
|
android:paddingStart="@dimen/dp_12"
|
||||||
android:paddingTop="@dimen/dp_15"
|
|
||||||
android:paddingEnd="@dimen/dp_12"
|
android:paddingEnd="@dimen/dp_12"
|
||||||
android:paddingBottom="@dimen/dp_15"
|
android:singleLine="true"
|
||||||
android:textColor="@color/color_1a1a1a"
|
android:textColor="@color/color_1a1a1a"
|
||||||
android:textColorHint="@color/color_bcbcbc"
|
android:textColorHint="@color/color_bcbcbc"
|
||||||
android:textSize="@dimen/sp_14"
|
android:textSize="@dimen/sp_14"
|
||||||
app:layout_constraintTop_toBottomOf="@id/tv_contact_info_title" />
|
app:layout_constraintTop_toBottomOf="@id/tv_contact_info_title" />
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</com.lihang.ShadowLayout>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
||||||
|
|
@ -235,15 +307,23 @@
|
||||||
android:id="@+id/btn_next"
|
android:id="@+id/btn_next"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/dp_46"
|
android:layout_height="@dimen/dp_46"
|
||||||
|
android:fontFamily="sans-serif-medium"
|
||||||
android:text="提交"
|
android:text="提交"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="@dimen/sp_15"
|
android:textSize="@dimen/sp_16"
|
||||||
android:textStyle="bold"
|
app:csb_cornerRadius="@dimen/dp_10"
|
||||||
app:csb_activeEnable="true"
|
|
||||||
app:csb_cornerRadius="@dimen/dp_50"
|
|
||||||
app:csb_fillColor="@color/color_125ffe"
|
app:csb_fillColor="@color/color_125ffe"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<com.example.base.widget.TitleBar
|
||||||
|
android:id="@+id/mTitleBar"
|
||||||
|
style="@style/Custom.TitleBar"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:navigationIcon="@drawable/ic_back_black"
|
||||||
|
app:title=" " />
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
@ -1,7 +1,378 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<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_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent">
|
||||||
android:orientation="vertical">
|
|
||||||
|
<androidx.core.widget.NestedScrollView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:src="@mipmap/ic_mine_top_bg"
|
||||||
|
app:layout_constraintDimensionRatio="h,1125:1080" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/iv_setting"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="?actionBarSize"
|
||||||
|
android:layout_marginEnd="@dimen/dp_16"
|
||||||
|
android:src="@mipmap/ic_mine_setting"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/iv_message"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="@dimen/dp_20"
|
||||||
|
android:src="@mipmap/ic_mine_message"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/iv_setting"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/iv_setting" />
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/iv_avatar"
|
||||||
|
android:layout_width="@dimen/dp_68"
|
||||||
|
android:layout_height="@dimen/dp_68"
|
||||||
|
android:layout_marginStart="@dimen/dp_16"
|
||||||
|
android:layout_marginTop="@dimen/dp_3"
|
||||||
|
android:padding="@dimen/dp_2"
|
||||||
|
android:src="@mipmap/ic_default_avatar"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/iv_setting" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_username"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_14"
|
||||||
|
android:fontFamily="sans-serif-medium"
|
||||||
|
android:text="游客"
|
||||||
|
android:textColor="@color/color_1a1a1a"
|
||||||
|
android:textSize="@dimen/sp_18"
|
||||||
|
app:layout_constraintBottom_toTopOf="@id/tv_user_id"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/iv_avatar"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/iv_avatar" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_user_id"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:drawableEnd="@mipmap/ic_copy_id"
|
||||||
|
android:drawablePadding="@dimen/dp_6"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="ID:00001"
|
||||||
|
android:textColor="#5E626A"
|
||||||
|
android:textSize="@dimen/sp_14"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/iv_avatar"
|
||||||
|
app:layout_constraintStart_toStartOf="@id/tv_username"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_username" />
|
||||||
|
|
||||||
|
<com.cheng.bole.widget.CommonShapeView
|
||||||
|
android:id="@+id/btn_login"
|
||||||
|
android:layout_width="@dimen/dp_76"
|
||||||
|
android:layout_height="@dimen/dp_32"
|
||||||
|
android:text="点击登录"
|
||||||
|
android:textColor="@color/white"
|
||||||
|
android:textSize="@dimen/sp_14"
|
||||||
|
app:csb_cornerPosition="topLeft|bottomLeft"
|
||||||
|
app:csb_cornerRadius="@dimen/dp_25"
|
||||||
|
app:csb_fillColor="@color/color_417ffe"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/iv_avatar"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/iv_avatar" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_push"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_16"
|
||||||
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="@dimen/dp_4"
|
||||||
|
android:paddingBottom="@dimen/dp_4"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/layout_favorite"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/iv_avatar">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_push_count"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="0"
|
||||||
|
android:textColor="@color/color_1a1a1a"
|
||||||
|
android:textSize="@dimen/sp_20" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_2"
|
||||||
|
android:text="推送"
|
||||||
|
android:textColor="#8F95A2"
|
||||||
|
android:textSize="@dimen/sp_12" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_favorite"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="@dimen/dp_4"
|
||||||
|
android:paddingBottom="@dimen/dp_4"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/layout_history"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/layout_push"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/iv_avatar">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_favorite_count"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="0"
|
||||||
|
android:textColor="@color/color_1a1a1a"
|
||||||
|
android:textSize="@dimen/sp_20" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_2"
|
||||||
|
android:text="收藏"
|
||||||
|
android:textColor="#8F95A2"
|
||||||
|
android:textSize="@dimen/sp_12" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_history"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="@dimen/dp_4"
|
||||||
|
android:paddingBottom="@dimen/dp_4"
|
||||||
|
app:layout_constraintEnd_toStartOf="@id/layout_order"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/layout_favorite"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/iv_avatar">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_history_count"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="0"
|
||||||
|
android:textColor="@color/color_1a1a1a"
|
||||||
|
android:textSize="@dimen/sp_20" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_2"
|
||||||
|
android:text="足迹"
|
||||||
|
android:textColor="#8F95A2"
|
||||||
|
android:textSize="@dimen/sp_12" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_order"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_16"
|
||||||
|
android:layout_marginEnd="@dimen/dp_16"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:paddingTop="@dimen/dp_4"
|
||||||
|
android:paddingBottom="@dimen/dp_4"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/layout_history"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/iv_avatar">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_order_count"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="0"
|
||||||
|
android:textColor="@color/color_1a1a1a"
|
||||||
|
android:textSize="@dimen/sp_20" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_2"
|
||||||
|
android:text="订单"
|
||||||
|
android:textColor="#8F95A2"
|
||||||
|
android:textSize="@dimen/sp_12" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/iv_vip_bg"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_marginStart="@dimen/dp_16"
|
||||||
|
android:layout_marginTop="@dimen/dp_12"
|
||||||
|
android:layout_marginEnd="@dimen/dp_16"
|
||||||
|
android:src="@mipmap/ic_mine_vip_bg1"
|
||||||
|
app:layout_constraintDimensionRatio="h,1029:342"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/layout_push" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_vip_name"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_20"
|
||||||
|
android:layout_marginBottom="@dimen/dp_2"
|
||||||
|
android:text="开通会员"
|
||||||
|
android:textColor="@color/color_fbcd8c"
|
||||||
|
android:textSize="@dimen/sp_16"
|
||||||
|
app:layout_constraintBottom_toTopOf="@id/tv_expire_time"
|
||||||
|
app:layout_constraintStart_toStartOf="@id/iv_vip_bg" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_expire_time"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="@dimen/dp_2"
|
||||||
|
android:drawableEnd="@mipmap/ic_mine_arrow1"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="开通会员,查看海量商机"
|
||||||
|
android:textColor="@color/color_bcac8e"
|
||||||
|
android:textSize="@dimen/sp_12"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/iv_vip_bg"
|
||||||
|
app:layout_constraintStart_toStartOf="@id/tv_vip_name"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/iv_vip_bg" />
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_menus"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="@dimen/dp_13"
|
||||||
|
android:background="@drawable/shape_f5f7fc_top_cor16"
|
||||||
|
android:padding="@dimen/dp_16"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_expire_time">
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@drawable/shape_white_cor10">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_my_publish"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon1"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="我的发布"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_auth"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon2"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="企业认证"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_my_publish" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_auth_status"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="@dimen/dp_35"
|
||||||
|
android:drawableStart="@drawable/shape_auth_fail_dot"
|
||||||
|
android:drawablePadding="@dimen/dp_6"
|
||||||
|
android:text="认证失败"
|
||||||
|
android:textColor="@color/color_ff592b"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/tv_auth"
|
||||||
|
app:layout_constraintEnd_toEndOf="@id/tv_auth"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/tv_auth" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_seat_manage"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon6"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="企业账号管理"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
android:visibility="gone"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_auth" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_service"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon3"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="联系客服"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_seat_manage" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_share"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon4"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="分享APP"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_service" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tv_feedback"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/dp_60"
|
||||||
|
android:drawableStart="@mipmap/ic_mine_icon5"
|
||||||
|
android:drawableEnd="@mipmap/ic_arrow_dp22"
|
||||||
|
android:drawablePadding="@dimen/dp_10"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:paddingStart="@dimen/dp_14"
|
||||||
|
android:paddingEnd="@dimen/dp_10"
|
||||||
|
android:text="意见反馈"
|
||||||
|
android:textColor="@color/color_222222"
|
||||||
|
android:textSize="@dimen/sp_15"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/tv_share" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</FrameLayout>
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
</androidx.core.widget.NestedScrollView>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
After Width: | Height: | Size: 312 B |
|
After Width: | Height: | Size: 516 B |
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 8.4 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 248 B |
|
After Width: | Height: | Size: 236 B |
|
After Width: | Height: | Size: 1000 B |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1002 B |
|
After Width: | Height: | Size: 946 B |
|
After Width: | Height: | Size: 664 B |
|
After Width: | Height: | Size: 1002 B |
|
After Width: | Height: | Size: 920 B |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
|
@ -89,4 +89,10 @@
|
||||||
<color name="color_e6f6ff">#E6F6FF</color>
|
<color name="color_e6f6ff">#E6F6FF</color>
|
||||||
<color name="color_f4f6fa">#F4F6FA</color>
|
<color name="color_f4f6fa">#F4F6FA</color>
|
||||||
<color name="color_585d6c">#585D6C</color>
|
<color name="color_585d6c">#585D6C</color>
|
||||||
|
<color name="color_417ffe">#417FFE</color>
|
||||||
|
<color name="color_ff592b">#FF592B</color>
|
||||||
|
<color name="color_fbcd8c">#FBCD8C</color>
|
||||||
|
<color name="color_bcac8e">#BCAC8E</color>
|
||||||
|
<color name="color_c5ffe1">#C5FFE1</color>
|
||||||
|
<color name="color_a6c8ba">#A6C8BA</color>
|
||||||
</resources>
|
</resources>
|
||||||