Commit c6b94e74 authored by jyx's avatar jyx

更新VIP页面样式

parent 94763e68
...@@ -115,7 +115,7 @@ object GlideUtils { ...@@ -115,7 +115,7 @@ object GlideUtils {
fun loadImageViewGifForCenterCrop( fun loadImageViewGifForCenterCrop(
mContext: Context, mContext: Context,
drawable: String, drawable: Any,
imageView: ImageView, imageView: ImageView,
dp: Int dp: Int
) { ) {
......
...@@ -57,9 +57,9 @@ class FaceVerifyHelper private constructor() { ...@@ -57,9 +57,9 @@ class FaceVerifyHelper private constructor() {
//横竖屏是否跟随系统(仅限pad),默认false //横竖屏是否跟随系统(仅限pad),默认false
data.putBoolean(WbCloudFaceContant.IS_FOLLOW_SYSTEM, false) data.putBoolean(WbCloudFaceContant.IS_FOLLOW_SYSTEM, false)
//识别阶段合作方定制提示语,可不传,此处为demo演示 //识别阶段合作方定制提示语,可不传,此处为demo演示
data.putString(WbCloudFaceContant.CUSTOMER_TIPS_LIVE, "仅供体验使用 请勿用于投产!") // data.putString(WbCloudFaceContant.CUSTOMER_TIPS_LIVE, "仅供体验使用 请勿用于投产!")
//上传阶段合作方定制提示语,可不传,此处为demo演示 //上传阶段合作方定制提示语,可不传,此处为demo演示
data.putString(WbCloudFaceContant.CUSTOMER_TIPS_UPLOAD, "仅供体验使用 请勿用于投产!") // data.putString(WbCloudFaceContant.CUSTOMER_TIPS_UPLOAD, "仅供体验使用 请勿用于投产!")
//合作方长定制提示语,可不传,此处为demo演示 //合作方长定制提示语,可不传,此处为demo演示
//设置选择的比对类型 默认为权威库对比 //设置选择的比对类型 默认为权威库对比
//权威库比对 WbCloudFaceContant.ID_CRAD //权威库比对 WbCloudFaceContant.ID_CRAD
......
...@@ -2,12 +2,19 @@ package com.duben.loveplayletd.mvp.presenters ...@@ -2,12 +2,19 @@ package com.duben.loveplayletd.mvp.presenters
import com.duben.library.net.neterror.BaseSubscriber import com.duben.library.net.neterror.BaseSubscriber
import com.duben.library.net.neterror.Throwable import com.duben.library.net.neterror.Throwable
import com.duben.loveplayletd.MintsApplication
import com.duben.loveplayletd.common.DeviceInfo
import com.duben.loveplayletd.manager.AppHttpManager import com.duben.loveplayletd.manager.AppHttpManager
import com.duben.loveplayletd.manager.UserHelper
import com.duben.loveplayletd.manager.UserManager
import com.duben.loveplayletd.mvp.model.BannerList import com.duben.loveplayletd.mvp.model.BannerList
import com.duben.loveplayletd.mvp.model.BaseResponse import com.duben.loveplayletd.mvp.model.BaseResponse
import com.duben.loveplayletd.mvp.model.HallList import com.duben.loveplayletd.mvp.model.HallList
import com.duben.loveplayletd.mvp.model.UserBean
import com.duben.loveplayletd.mvp.views.SquareView import com.duben.loveplayletd.mvp.views.SquareView
import com.duben.loveplayletd.utils.DeviceUuidFactory
import com.google.gson.JsonObject import com.google.gson.JsonObject
import java.util.HashMap
class SquarePresenter : BasePresenter<SquareView>() { class SquarePresenter : BasePresenter<SquareView>() {
...@@ -123,4 +130,84 @@ class SquarePresenter : BasePresenter<SquareView>() { ...@@ -123,4 +130,84 @@ class SquarePresenter : BasePresenter<SquareView>() {
}) })
} }
/**
* 游客登录
*/
fun userLogin() {
val vo = HashMap<String, Any>()
vo["device"] = DeviceUuidFactory().deviceUuid.toString()
AppHttpManager.getInstance(loanApplication)
.call(loanService.visitorlogin(vo),
object : BaseSubscriber<BaseResponse<UserBean>>() {
override fun onCompleted() {
if (isLinkView) return
}
override fun onError(e: Throwable) {
if (isLinkView) return
}
override fun onNext(baseResponse: BaseResponse<UserBean>) {
if (isLinkView) return
view.hideLoading()
val code = baseResponse.getStatus()
val message = baseResponse.getMessage()
val data: UserBean? = baseResponse.getData()
when (code) {
200 -> if (data != null) {
UserManager.getInstance().saveUserInfo(data)
saveTerminalInfo()
UserHelper.instance.loginAfterDoSomething()
}
else -> {
view.showToast(message)
}
}
}
})
}
/**
* 提交设备信息
*
* @param context
*/
fun saveTerminalInfo() {
val vo = HashMap<String, Any>()
val deviceInfo: DeviceInfo = DeviceInfo.instance
val macAddress: String = deviceInfo.getMacAddress()
val mac = macAddress.replace(":", "")
vo["mac"] = mac
vo["mac1"] = macAddress
vo["androidid"] = deviceInfo.getAndroidId(null)
vo["imei"] = deviceInfo.iMEI
vo["oaid"] = MintsApplication.OAID
vo["os"] = if (deviceInfo.isHarmonyOS()) "android-HarmonyOS" else "android"
vo["model"] = deviceInfo.newModel
vo["uuid"] = DeviceUuidFactory().deviceUuid
vo["osversion"] = deviceInfo.oSVersion
vo["appversion"] = deviceInfo.versionName
AppHttpManager.getInstance(loanApplication)
.call(loanService.saveTerminalInfo(vo),
object : BaseSubscriber<BaseResponse<Any>>() {
override fun onCompleted() {
if (isLinkView) return
}
override fun onError(e: Throwable) {
if (isLinkView) return
}
override fun onNext(baseResponse: BaseResponse<Any>) {
if (isLinkView) return
val code = baseResponse.status
when (code) {
200 -> {
}
}
}
})
}
} }
\ No newline at end of file
package com.duben.loveplayletd.mvp.views package com.duben.loveplayletd.mvp.views
import com.duben.loveplayletd.mvp.model.HallList import com.duben.loveplayletd.mvp.model.HallList
import com.duben.loveplayletd.mvp.model.UserBean
interface SquareView : BaseView { interface SquareView : BaseView {
fun getHallListSuc(list: HallList) fun getHallListSuc(list: HallList)
......
...@@ -154,8 +154,6 @@ class DrawCashActivity : BaseActivity(), View.OnClickListener, DrawCashView { ...@@ -154,8 +154,6 @@ class DrawCashActivity : BaseActivity(), View.OnClickListener, DrawCashView {
minInput = data.miniLimit minInput = data.miniLimit
maxInput = data.cashOutMinLimit maxInput = data.cashOutMinLimit
} }
et_draw_cash.setText("" + data.miniLimit)
} }
override fun getCashouBaseMsgFail() {} override fun getCashouBaseMsgFail() {}
......
...@@ -333,6 +333,10 @@ class RealAuthActivity : BaseActivity(), View.OnClickListener, RealAuthView { ...@@ -333,6 +333,10 @@ class RealAuthActivity : BaseActivity(), View.OnClickListener, RealAuthView {
} }
} }
4 -> { 4 -> {
if (TextUtils.isEmpty(et_wechat_no.text.toString())) {
showToast("请输入您的微信号")
return
}
if (TextUtils.isEmpty(wechatQrCodeUrl)) { if (TextUtils.isEmpty(wechatQrCodeUrl)) {
showToast("请先上传微信二维码") showToast("请先上传微信二维码")
} else { } else {
......
...@@ -140,13 +140,13 @@ class ShareActivity : BaseActivity(), View.OnClickListener, InviteView { ...@@ -140,13 +140,13 @@ class ShareActivity : BaseActivity(), View.OnClickListener, InviteView {
mShareRankAdapter = ShareRankAdapter() mShareRankAdapter = ShareRankAdapter()
mShareRankAdapter.animationEnable = false mShareRankAdapter.animationEnable = false
val emptyView = LayoutInflater.from(this).inflate(R.layout.item_empty_data, null) val emptyView = LayoutInflater.from(this).inflate(R.layout.item_empty_album, null)
mShareRankAdapter.setEmptyView(emptyView) mShareRankAdapter.setEmptyView(emptyView)
rcy_invite_top.adapter = mShareRankAdapter rcy_invite_top.adapter = mShareRankAdapter
mShareInviteAdapter = ShareInviteAdapter() mShareInviteAdapter = ShareInviteAdapter()
mShareInviteAdapter.animationEnable = false mShareInviteAdapter.animationEnable = false
val emptyView2 = LayoutInflater.from(this).inflate(R.layout.item_empty_data, null) val emptyView2 = LayoutInflater.from(this).inflate(R.layout.item_empty_album, null)
mShareInviteAdapter.setEmptyView(emptyView2) mShareInviteAdapter.setEmptyView(emptyView2)
rcy_my_invite.adapter = mShareInviteAdapter rcy_my_invite.adapter = mShareInviteAdapter
......
...@@ -443,6 +443,10 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie ...@@ -443,6 +443,10 @@ class UserProfileActivity : BaseActivity(), View.OnClickListener, UserProfileVie
} }
override fun unlockWechatFail() { override fun unlockWechatFail() {
val bundle = Bundle()
bundle.putString(VipActivity.OTHER_USER_ID, "" + userProfileData?.uid)
bundle.putBoolean(VipActivity.SHOW_COIN, true)
readyGo(VipActivity::class.java, bundle)
} }
override fun toWhiteSuc() { override fun toWhiteSuc() {
......
...@@ -12,9 +12,13 @@ import android.os.Looper ...@@ -12,9 +12,13 @@ import android.os.Looper
import android.text.TextUtils import android.text.TextUtils
import android.util.DisplayMetrics import android.util.DisplayMetrics
import android.view.KeyEvent import android.view.KeyEvent
import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.WindowManager import android.view.WindowManager
import android.widget.CompoundButton import android.widget.CompoundButton
import android.widget.TextView
import androidx.core.view.ViewCompat
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.alipay.sdk.app.OpenAuthTask import com.alipay.sdk.app.OpenAuthTask
import com.daimajia.androidanimations.library.Techniques import com.daimajia.androidanimations.library.Techniques
...@@ -31,12 +35,15 @@ import com.duben.loveplayletd.mvp.model.* ...@@ -31,12 +35,15 @@ import com.duben.loveplayletd.mvp.model.*
import com.duben.loveplayletd.mvp.presenters.VipPresenter import com.duben.loveplayletd.mvp.presenters.VipPresenter
import com.duben.loveplayletd.mvp.views.VipView import com.duben.loveplayletd.mvp.views.VipView
import com.duben.loveplayletd.ui.activitys.base.BaseActivity import com.duben.loveplayletd.ui.activitys.base.BaseActivity
import com.duben.loveplayletd.ui.adapter.CoinAdapter
import com.duben.loveplayletd.ui.adapter.VipAdapter import com.duben.loveplayletd.ui.adapter.VipAdapter
import com.duben.loveplayletd.ui.adapter.VipBannerAdapter import com.duben.loveplayletd.ui.adapter.VipBannerAdapter
import com.duben.loveplayletd.ui.widgets.* import com.duben.loveplayletd.ui.widgets.*
import com.duben.loveplayletd.ui.widgets.countdowntimer.CountDownTimerSupport import com.duben.loveplayletd.ui.widgets.countdowntimer.CountDownTimerSupport
import com.duben.loveplayletd.ui.widgets.countdowntimer.OnCountDownTimerListener import com.duben.loveplayletd.ui.widgets.countdowntimer.OnCountDownTimerListener
import com.duben.loveplayletd.utils.SpanUtils import com.duben.loveplayletd.utils.SpanUtils
import com.duben.loveplayletd.utils.UIUtils
import com.google.android.material.tabs.TabLayout
import com.jobo.alipay.AliPay import com.jobo.alipay.AliPay
import com.jobo.alipay.AlipayInfoImpl import com.jobo.alipay.AlipayInfoImpl
import com.jobo.rxpay.RxPay import com.jobo.rxpay.RxPay
...@@ -68,6 +75,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -68,6 +75,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
const val THIRD_ID = "THIRD_ID" const val THIRD_ID = "THIRD_ID"
const val VEDIO_ID = "VEDIO_ID" const val VEDIO_ID = "VEDIO_ID"
const val OTHER_USER_ID = "OTHER_USER_ID" const val OTHER_USER_ID = "OTHER_USER_ID"
const val SHOW_COIN = "SHOW_COIN"
const val ENTER_TYPE_DIALOG = "ENTER_TYPE_DIALOG" const val ENTER_TYPE_DIALOG = "ENTER_TYPE_DIALOG"
const val ENTER_TYPE_ACTIVITY = "ENTER_TYPE_ACTIVITY" const val ENTER_TYPE_ACTIVITY = "ENTER_TYPE_ACTIVITY"
} }
...@@ -80,8 +88,14 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -80,8 +88,14 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
private var ruleAgreementDialog: RuleAgreementDialog? = null private var ruleAgreementDialog: RuleAgreementDialog? = null
private val vipPresenter by lazy { VipPresenter() } private val vipPresenter by lazy { VipPresenter() }
private var isCoin = false
private val tabsData = mutableListOf<String>()
private lateinit var vipAdapter: VipAdapter private lateinit var vipAdapter: VipAdapter
private var vipList: MutableList<VipBean.ListBean>? = null private var vipList: MutableList<VipBean.ListBean> = mutableListOf()
private lateinit var coinAdapter: CoinAdapter
private var beansData: MutableList<VipBean.ListBean> = mutableListOf()
private var isCheckAgreeFlag: Boolean = true private var isCheckAgreeFlag: Boolean = true
private var isDetail: Boolean = false private var isDetail: Boolean = false
private var isMain: Boolean = false private var isMain: Boolean = false
...@@ -110,6 +124,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -110,6 +124,7 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
thirdId = it.getString(THIRD_ID, "") thirdId = it.getString(THIRD_ID, "")
vedioId = it.getString(VEDIO_ID, "") vedioId = it.getString(VEDIO_ID, "")
otherUserId = it.getString(OTHER_USER_ID, "") otherUserId = it.getString(OTHER_USER_ID, "")
isCoin = it.getBoolean(SHOW_COIN, false)
} }
} }
...@@ -125,10 +140,91 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -125,10 +140,91 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
} }
vipPresenter.orders() vipPresenter.orders()
AppConfig.enterVipAct = true AppConfig.enterVipAct = true
initTab()
initRecy()
initListener() initListener()
val width = UIUtils.getScreenWidth(this) - 50
val height = (width * 2.6).toInt()
if (UserManager.getInstance().userSex == 1) {
iv_bg.setImageResource(R.mipmap.bg_vip_male)
} else {
iv_bg.setImageResource(R.mipmap.bg_vip_female)
}
val layoutParams = iv_bg.layoutParams
layoutParams.width = width
layoutParams.height = height
iv_bg.layoutParams = layoutParams
}
private fun initTab() {
tabsData.addAll(arrayOf(" 充值 ", "会员套餐"))
tablayout.addTab(tablayout.newTab().setCustomView(getTabView(tabsData[0], false)))
tablayout.addTab(tablayout.newTab().setCustomView(getTabView(tabsData[1], false)))
tablayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.let {
updateTab(it.customView, true)
if (it.position == 1) {
isCoin = false
tvVipPay.text = "立即开通"
rvVip.visibility = View.VISIBLE
rv_wallet_coin.visibility = View.GONE
} else {
isCoin = true
tvVipPay.text = "立即充值"
rvVip.visibility = View.GONE
rv_wallet_coin.visibility = View.VISIBLE
}
}
}
override fun onTabUnselected(tab: TabLayout.Tab?) {
tab?.let {
updateTab(it.customView, false)
}
}
override fun onTabReselected(tab: TabLayout.Tab?) {}
})
if (isCoin) {
tablayout.getTabAt(0)?.select()
} else {
tablayout.getTabAt(1)?.select()
}
}
private fun updateTab(view: View?, isSelected: Boolean) {
view?.let {
val text = it.findViewById<TextView>(R.id.item_tv)
val bar = it.findViewById<View>(R.id.view_bar)
if (isSelected) {
text.textSize = 18f
bar.visibility = View.VISIBLE
} else {
text.textSize = 16f
bar.visibility = View.INVISIBLE
}
}
}
private fun getTabView(text: String, isSelected: Boolean): View {
val view = LayoutInflater.from(this).inflate(R.layout.item_share_tab, null)
view.findViewById<TextView>(R.id.item_tv).text = text
updateTab(view, isSelected)
return view
}
private fun initRecy() {
coinAdapter = CoinAdapter()
coinAdapter.animationEnable = false
coinAdapter.setOnItemClickListener { adapter, view, position ->
coinAdapter.setPosition(position)
coinAdapter.notifyDataSetChanged()
}
rv_wallet_coin.layoutManager = GridLayoutManager(this, 3)
rv_wallet_coin.adapter = coinAdapter
} }
override fun finish() { override fun finish() {
...@@ -166,9 +262,12 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -166,9 +262,12 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
if (data.vipList != null && data.vipList.size > 0) { if (data.vipList != null && data.vipList.size > 0) {
vipList = data.vipList vipList = data.vipList
beansData = data.beansList
coinAdapter.setNewInstance(data.beansList)
//设置content样式 //设置content样式
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
setVipContent(vipList!![0]) setVipContent(vipList[0])
cbVipAgreement.isChecked = data.isNeedClick cbVipAgreement.isChecked = data.isNeedClick
} }
initRvView() initRvView()
...@@ -248,8 +347,8 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -248,8 +347,8 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
return return
} }
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
val vipBean = vipList!![vipAdapter.getPosition()] val vipBean = vipList[vipAdapter.getPosition()]
val payToModel = vipBean.payToModel val payToModel = vipBean.payToModel
//0 app内部,1.只签约转支付宝浏览器支付 2.带uid转支付宝小程序(暂定只有一个小程序) //0 app内部,1.只签约转支付宝浏览器支付 2.带uid转支付宝小程序(暂定只有一个小程序)
when (payToModel) { when (payToModel) {
...@@ -306,20 +405,22 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -306,20 +405,22 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
override fun ordersSuc(data: BannerList?) { override fun ordersSuc(data: BannerList?) {
data?.let { data?.let {
setBanner(it.list) val list = it.list
val vedioBean = VedioBean()
vedioBean.title = ""
vedioBean.coverImage = R.mipmap.bg_vip_head.toString()
list.add(0, vedioBean)
setBanner(list)
} }
} }
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean { override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
when (keyCode) { when (keyCode) {
KeyEvent.KEYCODE_BACK -> { KeyEvent.KEYCODE_BACK -> {
if (UserManager.getInstance().newFlag if (UserManager.getInstance().newFlag && vipList.size > 0) {
&& vipList != null && vipList!!.size > 0
) {
vipAdapter.setPosition(0) vipAdapter.setPosition(0)
vipAdapter.notifyDataSetChanged() vipAdapter.notifyDataSetChanged()
val vipBean = vipList!![0] val vipBean = vipList[0]
if (vipBean.trial == 1) { if (vipBean.trial == 1) {
ll_vip_alipay.visibility = View.VISIBLE ll_vip_alipay.visibility = View.VISIBLE
ll_vip_wx.visibility = View.GONE ll_vip_wx.visibility = View.GONE
...@@ -342,12 +443,10 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -342,12 +443,10 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
when (v?.id) { when (v?.id) {
R.id.ic_vip_quit -> { R.id.ic_vip_quit -> {
if (UserManager.getInstance().newFlag && if (UserManager.getInstance().newFlag && vipList.size > 0) {
vipList != null && vipList!!.size > 0
) {
vipAdapter.setPosition(0) vipAdapter.setPosition(0)
vipAdapter.notifyDataSetChanged() vipAdapter.notifyDataSetChanged()
val vipBean = vipList!![0] val vipBean = vipList[0]
if (vipBean.trial == 1) { if (vipBean.trial == 1) {
ll_vip_alipay.visibility = View.VISIBLE ll_vip_alipay.visibility = View.VISIBLE
ll_vip_wx.visibility = View.GONE ll_vip_wx.visibility = View.GONE
...@@ -364,26 +463,41 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -364,26 +463,41 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
} }
R.id.tvVipPay -> { R.id.tvVipPay -> {
if (vipList != null && vipList!!.size > 0) { if (isCoin) {
val vipBean = vipList!![vipAdapter.getPosition()] if (beansData.size > 0) {
val beans = beansData[coinAdapter.getPosition()]
if (!isCheckAgreeFlag) { if (!isCheckAgreeFlag) {
vipAgreementDialog(vipBean) vipAgreementDialog(beans)
return return
} }
// 支付宝支付
if (vipBean.isShowCycTips) {
agreementPayDialog()
} else {
vipPresenter.getVipPayParams( vipPresenter.getVipPayParams(
payType, Constant.ALI_PAY,
vipBean.pid, beans.pid,
otherUserId, otherUserId,
ENTER_TYPE_ACTIVITY ENTER_TYPE_ACTIVITY
) )
} }
} else { } else {
showToast("产品未配置") if (vipList.size > 0) {
val vipBean = vipList[vipAdapter.getPosition()]
if (!isCheckAgreeFlag) {
vipAgreementDialog(vipBean)
return
}
if (vipBean.isShowCycTips) {
agreementPayDialog()
} else {
vipPresenter.getVipPayParams(
payType,
vipBean.pid,
otherUserId,
ENTER_TYPE_ACTIVITY
)
}
} else {
showToast("产品未配置")
}
} }
} }
...@@ -413,11 +527,11 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -413,11 +527,11 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
} }
private fun initRvView() { private fun initRvView() {
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
val linearLayoutManager = LinearLayoutManager(this) val linearLayoutManager = LinearLayoutManager(this)
linearLayoutManager.orientation = LinearLayoutManager.HORIZONTAL linearLayoutManager.orientation = LinearLayoutManager.HORIZONTAL
rvVip.layoutManager = linearLayoutManager rvVip.layoutManager = linearLayoutManager
vipAdapter = VipAdapter(vipList!!) vipAdapter = VipAdapter(vipList)
rvVip.adapter = vipAdapter rvVip.adapter = vipAdapter
vipAdapter.setOnItemClickListener(this) vipAdapter.setOnItemClickListener(this)
} }
...@@ -457,16 +571,16 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -457,16 +571,16 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
vipAdapter.notifyDataSetChanged() vipAdapter.notifyDataSetChanged()
//设置content样式 //设置content样式
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
setVipContent(vipList!![position]) setVipContent(vipList[position])
if (vipList!!.size > 2) { if (vipList.size > 2) {
if (position > 1 && position < vipList!!.size - 2) { if (position > 1 && position < vipList.size - 2) {
moveToCenter(view); moveToCenter(view);
} else if (position in 0..1) { } else if (position in 0..1) {
rvVip.smoothScrollToPosition(0); rvVip.smoothScrollToPosition(0);
} else { } else {
rvVip.smoothScrollToPosition(vipList!!.size - 1); rvVip.smoothScrollToPosition(vipList.size - 1);
} }
} }
} }
...@@ -563,8 +677,8 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -563,8 +677,8 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
R.id.tv_dialog_vip_next -> { R.id.tv_dialog_vip_next -> {
cbVipAgreement.isChecked = true cbVipAgreement.isChecked = true
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
val vipBean = vipList!![vipAdapter.getPosition()] val vipBean = vipList[vipAdapter.getPosition()]
vipPresenter.getVipPayParams( vipPresenter.getVipPayParams(
payType, payType,
vipBean.pid, vipBean.pid,
...@@ -605,11 +719,11 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -605,11 +719,11 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
* 试用订阅规则说明-仿支付宝 * 试用订阅规则说明-仿支付宝
*/ */
private fun ruleAgreementPayDialog() { private fun ruleAgreementPayDialog() {
if (vipList != null && vipList!!.size > 0) { if (vipList.size > 0) {
val vipBean = vipList!![vipAdapter.getPosition()] val vipBean = vipList[vipAdapter.getPosition()]
ruleAgreementDialog = RuleAgreementDialog(context, object : DialogListener() { ruleAgreementDialog = RuleAgreementDialog(context, object : DialogListener() {
override fun onClick(v: View) { override fun onClick(v: View) {
if (!isFinishing() && ruleAgreementDialog != null && ruleAgreementDialog!!.isShowing()) { if (!isFinishing() && (ruleAgreementDialog != null) && ruleAgreementDialog!!.isShowing()) {
ruleAgreementDialog!!.dismiss() ruleAgreementDialog!!.dismiss()
} }
when (v.id) { when (v.id) {
...@@ -651,20 +765,37 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -651,20 +765,37 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
R.id.dialog_btn_right -> { R.id.dialog_btn_right -> {
cbVipAgreement.isChecked = true cbVipAgreement.isChecked = true
if (vipList != null && vipList!!.size > 0) { if (isCoin) {
val vipBean = vipList!![vipAdapter.getPosition()] if (beansData.size > 0) {
if (vipBean.isShowCycTips) { val beans = beansData[coinAdapter.getPosition()]
agreementPayDialog() if (!isCheckAgreeFlag) {
} else { vipAgreementDialog(beans)
return
}
// 支付宝支付
vipPresenter.getVipPayParams( vipPresenter.getVipPayParams(
payType, Constant.ALI_PAY,
vipBean.pid, beans.pid,
otherUserId, otherUserId,
ENTER_TYPE_ACTIVITY ENTER_TYPE_ACTIVITY
) )
} }
} else { } else {
showToast("产品未配置") if (vipList.size > 0) {
val vipBean = vipList[vipAdapter.getPosition()]
if (vipBean.isShowCycTips) {
agreementPayDialog()
} else {
vipPresenter.getVipPayParams(
payType,
vipBean.pid,
otherUserId,
ENTER_TYPE_ACTIVITY
)
}
} else {
showToast("产品未配置")
}
} }
} }
} }
...@@ -685,7 +816,9 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -685,7 +816,9 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
ValueAnimator.ofInt(0, nsv.getChildAt(0).height - nsv.height) ValueAnimator.ofInt(0, nsv.getChildAt(0).height - nsv.height)
scrollToBottomAnimator.addUpdateListener { animator -> scrollToBottomAnimator.addUpdateListener { animator ->
val value = animator.animatedValue as Int val value = animator.animatedValue as Int
nsv.scrollTo(0, value) ViewCompat.postOnAnimation(nsv) {
nsv.scrollTo(0, value)
}
} }
scrollToBottomAnimator.duration = 2000 scrollToBottomAnimator.duration = 2000
scrollToBottomAnimator.start() scrollToBottomAnimator.start()
...@@ -695,7 +828,9 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On ...@@ -695,7 +828,9 @@ class VipActivity : BaseActivity(), VipView, View.OnClickListener, VipAdapter.On
val scrollToTopAnimator = ValueAnimator.ofInt(nsv.scrollY, 0) val scrollToTopAnimator = ValueAnimator.ofInt(nsv.scrollY, 0)
scrollToTopAnimator.addUpdateListener { animator -> scrollToTopAnimator.addUpdateListener { animator ->
val value = animator.animatedValue as Int val value = animator.animatedValue as Int
nsv.scrollTo(0, value) ViewCompat.postOnAnimation(nsv) {
nsv.scrollTo(0, value)
}
} }
scrollToTopAnimator.duration = 1500 scrollToTopAnimator.duration = 1500
scrollToTopAnimator.start() scrollToTopAnimator.start()
......
...@@ -107,6 +107,7 @@ class WalletActivity : BaseActivity(), View.OnClickListener, DrawCashView { ...@@ -107,6 +107,7 @@ class WalletActivity : BaseActivity(), View.OnClickListener, DrawCashView {
iv_left_icon.setOnClickListener(this) iv_left_icon.setOnClickListener(this)
tv_right.setOnClickListener(this) tv_right.setOnClickListener(this)
tv_cash_label.setOnClickListener(this) tv_cash_label.setOnClickListener(this)
tv_cash.setOnClickListener(this)
tv_go_vip.setOnClickListener(this) tv_go_vip.setOnClickListener(this)
tv_go_share.setOnClickListener(this) tv_go_share.setOnClickListener(this)
...@@ -137,7 +138,7 @@ class WalletActivity : BaseActivity(), View.OnClickListener, DrawCashView { ...@@ -137,7 +138,7 @@ class WalletActivity : BaseActivity(), View.OnClickListener, DrawCashView {
bundle.putString(WebActivity.WEB_URL, Constant.MEMBERS_URL) bundle.putString(WebActivity.WEB_URL, Constant.MEMBERS_URL)
readyGo(WebActivity::class.java, bundle) readyGo(WebActivity::class.java, bundle)
} }
R.id.tv_cash_label -> { R.id.tv_cash_label, R.id.tv_cash -> {
readyGo(DrawCashActivity::class.java) readyGo(DrawCashActivity::class.java)
} }
R.id.tv_go_vip -> { R.id.tv_go_vip -> {
......
...@@ -143,7 +143,8 @@ class CsjMovieFragment : LazyLoadBaseFragment(), OnLoadMoreListener { ...@@ -143,7 +143,8 @@ class CsjMovieFragment : LazyLoadBaseFragment(), OnLoadMoreListener {
val bundle = Bundle() val bundle = Bundle()
val vedioBean = VedioBean() val vedioBean = VedioBean()
// 免费集数 // 免费集数
vedioBean.freeIndex = it.freeSet // vedioBean.freeIndex = it.freeSet
vedioBean.freeIndex = 3
vedioBean.groupId = it.groupId vedioBean.groupId = it.groupId
bundle.putString(Constant.VEDIO_BEAN, JsonUtil.toJson(vedioBean)) bundle.putString(Constant.VEDIO_BEAN, JsonUtil.toJson(vedioBean))
CsjDetailActivity.outerDrama = it CsjDetailActivity.outerDrama = it
......
...@@ -76,7 +76,7 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener { ...@@ -76,7 +76,7 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener {
if (AntiShake.check(v?.id)) return if (AntiShake.check(v?.id)) return
when (v?.id) { when (v?.id) {
R.id.ll_edit_profile -> { R.id.ll_edit_profile, R.id.civ_my_avatar -> {
readyGo(EditProfileActivity::class.java) readyGo(EditProfileActivity::class.java)
} }
R.id.rl_my_vip -> { R.id.rl_my_vip -> {
...@@ -163,9 +163,8 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener { ...@@ -163,9 +163,8 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener {
// 男性展示充值的金币 // 男性展示充值的金币
tv_my_coin.text = "" + data.beans tv_my_coin.text = "" + data.beans
} else { } else {
if (data.idcardStatus == 2) { if (data.idcardStatus == 2 || data.idcardStatus == 0) {
ll_my_auth.visibility = View.VISIBLE ll_my_auth.visibility = View.VISIBLE
} }
// 女性展示奖励的金币 // 女性展示奖励的金币
tv_my_coin.text = "" + data.rewardCoin tv_my_coin.text = "" + data.rewardCoin
...@@ -187,6 +186,7 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener { ...@@ -187,6 +186,7 @@ class MyFragment : LazyLoadBaseFragment(), MyView, View.OnClickListener {
private fun initListener() { private fun initListener() {
ll_edit_profile.setOnClickListener(this) ll_edit_profile.setOnClickListener(this)
civ_my_avatar.setOnClickListener(this)
ll_my_ilike.setOnClickListener(this) ll_my_ilike.setOnClickListener(this)
ll_my_likeme.setOnClickListener(this) ll_my_likeme.setOnClickListener(this)
ll_my_seeme.setOnClickListener(this) ll_my_seeme.setOnClickListener(this)
......
...@@ -69,7 +69,6 @@ class SquareFragment : LazyLoadBaseFragment(), SquareView, View.OnClickListener ...@@ -69,7 +69,6 @@ class SquareFragment : LazyLoadBaseFragment(), SquareView, View.OnClickListener
if (position == 0 && !UserManager.getInstance().vipFlag) { if (position == 0 && !UserManager.getInstance().vipFlag) {
readyGo(VipActivity::class.java) readyGo(VipActivity::class.java)
} else { } else {
} }
} }
} }
...@@ -84,7 +83,7 @@ class SquareFragment : LazyLoadBaseFragment(), SquareView, View.OnClickListener ...@@ -84,7 +83,7 @@ class SquareFragment : LazyLoadBaseFragment(), SquareView, View.OnClickListener
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_TWO) { if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_TWO) {
banner?.start() banner?.start()
if (TextUtils.isEmpty(UserManager.getInstance().userID)) { if (TextUtils.isEmpty(UserManager.getInstance().userID)) {
TrackManager.getInstance().visitorlogin() squarePresenter.userLogin()
} else { } else {
TrackManager.getInstance().getBaseMsg() TrackManager.getInstance().getBaseMsg()
} }
......
...@@ -89,7 +89,7 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene ...@@ -89,7 +89,7 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene
squareAdapter.animationEnable = false squareAdapter.animationEnable = false
rcy_square_list.adapter = squareAdapter rcy_square_list.adapter = squareAdapter
val emptyView = val emptyView =
LayoutInflater.from(requireContext()).inflate(R.layout.item_empty_data, null) LayoutInflater.from(requireContext()).inflate(R.layout.item_empty_album, null)
squareAdapter.setEmptyView(emptyView) squareAdapter.setEmptyView(emptyView)
squareAdapter.setOnItemClickListener { adapter, view, position -> squareAdapter.setOnItemClickListener { adapter, view, position ->
if (mType == 3 && !UserManager.getInstance().vipFlag) { if (mType == 3 && !UserManager.getInstance().vipFlag) {
...@@ -177,7 +177,9 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene ...@@ -177,7 +177,9 @@ class SquareListFragment : LazyLoadBaseFragment(), SquareView, OnLoadMoreListene
} }
} }
override fun getHallListFail() {} override fun getHallListFail() {
srl_square.resetNoMoreData()
}
override fun toLikeSuc(position: Int) { override fun toLikeSuc(position: Int) {
if (::squareAdapter.isInitialized) { if (::squareAdapter.isInitialized) {
......
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
<stroke <stroke
android:width="1dp" android:width="1dp"
android:color="#FFFFFF" /> android:color="#FFFFFF" />
<solid android:color="@color/half_transparent" />
<corners android:radius="10dip" /> <corners android:radius="10dip" />
</shape> </shape>
\ No newline at end of file
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<ImageView <ImageView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="280dp" android:layout_height="270dp"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@mipmap/bg_auth_avatar" /> android:src="@mipmap/bg_auth_avatar" />
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent">
android:clipChildren="false">
<FrameLayout <FrameLayout
android:id="@+id/content_layout" android:id="@+id/content_layout"
...@@ -24,8 +23,6 @@ ...@@ -24,8 +23,6 @@
android:layout_height="56dp" android:layout_height="56dp"
android:layout_alignParentBottom="true" android:layout_alignParentBottom="true"
android:background="@color/black" android:background="@color/black"
android:elevation="2dp"
android:gravity="center_vertical"
android:orientation="horizontal"> android:orientation="horizontal">
<RelativeLayout <RelativeLayout
...@@ -47,11 +44,12 @@ ...@@ -47,11 +44,12 @@
android:id="@+id/tab_tv_video" android:id="@+id/tab_tv_video"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tab_iv_video" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:text="剧场" android:text="剧场"
android:textColor="@color/item_text_sel" android:textColor="@color/item_text_sel"
android:textSize="16sp" /> android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
...@@ -73,40 +71,41 @@ ...@@ -73,40 +71,41 @@
android:id="@+id/tab_tv_square" android:id="@+id/tab_tv_square"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tab_iv_square" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:text="同城" android:text="同城"
android:textColor="@color/item_text_sel" android:textColor="@color/item_text_sel"
android:textSize="16sp" /> android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/tab_rl_invite" android:id="@+id/tab_rl_invite"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="bottom"
android:layout_weight="1.0"> android:layout_weight="1.0">
<ImageView <ImageView
android:id="@+id/tab_iv_invite" android:id="@+id/tab_iv_invite"
android:layout_width="wrap_content" android:layout_width="32dp"
android:layout_height="wrap_content" android:layout_height="32dp"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:contentDescription="@null" android:contentDescription="@null"
android:src="@drawable/selector_tab_share" /> android:src="@mipmap/ic_tab_share_selected" />
<TextView <TextView
android:id="@+id/tab_tv_invite" android:id="@+id/tab_tv_invite"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tab_iv_invite" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:text="邀请有奖" android:text="邀请有奖"
android:textColor="@color/item_text_sel" android:textColor="@color/color_E5C565"
android:textSize="16sp" /> android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/tab_rl_msg" android:id="@+id/tab_rl_msg"
android:layout_width="0dp" android:layout_width="0dp"
...@@ -126,11 +125,12 @@ ...@@ -126,11 +125,12 @@
android:id="@+id/tab_tv_msg" android:id="@+id/tab_tv_msg"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tab_iv_msg" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:text="消息" android:text="消息"
android:textColor="@color/item_text_sel" android:textColor="@color/item_text_sel"
android:textSize="16sp" /> android:textSize="14sp" />
<com.tencent.qcloud.tuikit.timcommon.component.UnreadCountTextView <com.tencent.qcloud.tuikit.timcommon.component.UnreadCountTextView
android:id="@+id/unread_view" android:id="@+id/unread_view"
...@@ -166,11 +166,12 @@ ...@@ -166,11 +166,12 @@
android:id="@+id/tab_tv_my" android:id="@+id/tab_tv_my"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/tab_iv_my" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:text="我的" android:text="我的"
android:textColor="@color/item_text_sel" android:textColor="@color/item_text_sel"
android:textSize="16sp" /> android:textSize="14sp" />
</RelativeLayout> </RelativeLayout>
</LinearLayout> </LinearLayout>
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:id="@+id/nsv" android:id="@+id/nsv"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="wrap_content">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
...@@ -25,7 +25,6 @@ ...@@ -25,7 +25,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<ImageView <ImageView
android:id="@+id/iv_blur" android:id="@+id/iv_blur"
android:layout_width="match_parent" android:layout_width="match_parent"
...@@ -95,24 +94,11 @@ ...@@ -95,24 +94,11 @@
</FrameLayout> </FrameLayout>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:src="@mipmap/bg_vip_1" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:src="@mipmap/bg_vip_2" />
<ImageView <ImageView
android:id="@+id/iv_bg"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal" />
android:src="@mipmap/bg_vip_3" />
</LinearLayout> </LinearLayout>
...@@ -130,16 +116,44 @@ ...@@ -130,16 +116,44 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:layout_marginBottom="30dp" android:layout_marginBottom="20dp"
android:orientation="vertical"> android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView <com.google.android.material.tabs.TabLayout
android:id="@+id/rvVip" android:id="@+id/tablayout"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="170dp" android:layout_height="45dp"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:background="@null" android:layout_marginBottom="10dp"
android:overScrollMode="never" /> app:tabBackground="@null"
app:tabIndicatorHeight="0dp"
app:tabMaxWidth="200dp"
app:tabMinWidth="20dp"
app:tabMode="auto"
app:tabPaddingEnd="6dp"
app:tabPaddingStart="6dp"
app:tabRippleColor="@null" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_wallet_coin"
android:layout_width="match_parent"
android:layout_height="170dp"
android:background="@null"
android:overScrollMode="never"
android:visibility="invisible" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvVip"
android:layout_width="match_parent"
android:layout_height="170dp"
android:background="@null"
android:overScrollMode="never" />
</FrameLayout>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
......
...@@ -311,7 +311,7 @@ ...@@ -311,7 +311,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:text="3.通过邀请用户充值VIP即可获取相应会员奖励。" android:text="3.通过邀请用户充值VIP即可获取相应佣金和会员奖励。"
android:textColor="@color/color_F1D6BA" /> android:textColor="@color/color_F1D6BA" />
<TextView <TextView
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/item_view" android:id="@+id/item_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:layout_marginBottom="20dp" android:layout_marginBottom="10dp"
android:background="@drawable/shape_coin_gray" android:background="@drawable/shape_coin_gray"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:orientation="vertical"> android:orientation="vertical">
...@@ -25,7 +24,6 @@ ...@@ -25,7 +24,6 @@
android:id="@+id/item_coin" android:id="@+id/item_coin"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:gravity="center" android:gravity="center"
android:text="210" android:text="210"
android:textColor="@color/color_F6DA8F" android:textColor="@color/color_F6DA8F"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment