Commit 2e78ef28 authored by mengcuiguang2's avatar mengcuiguang2

修改vip弹窗

parent d9c1c7b6
package com.duben.infinitefunjia.ui.activitys package com.duben.infinitefunjia.ui.activitys
import android.animation.ValueAnimator
import android.app.Dialog import android.app.Dialog
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.Color
import android.net.Uri import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.os.Handler import android.os.Handler
import android.os.Looper import android.os.Looper
import android.text.TextUtils import android.text.TextUtils
import android.util.DisplayMetrics import android.util.DisplayMetrics
import android.util.Log
import android.view.KeyEvent
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 androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.GridLayoutManager
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.YoYo import com.daimajia.androidanimations.library.YoYo
import com.duben.infinitefunjia.BuildConfig import com.duben.infinitefunjia.BuildConfig
import com.duben.infinitefunjia.R import com.duben.infinitefunjia.R
...@@ -31,15 +25,11 @@ import com.duben.infinitefunjia.mvp.model.* ...@@ -31,15 +25,11 @@ import com.duben.infinitefunjia.mvp.model.*
import com.duben.infinitefunjia.mvp.presenters.VipPresenter import com.duben.infinitefunjia.mvp.presenters.VipPresenter
import com.duben.infinitefunjia.mvp.views.VipView import com.duben.infinitefunjia.mvp.views.VipView
import com.duben.infinitefunjia.ui.activitys.base.BaseActivity import com.duben.infinitefunjia.ui.activitys.base.BaseActivity
import com.duben.infinitefunjia.ui.adapter.VipAdapter
import com.duben.infinitefunjia.ui.adapter.VipBannerAdapter
import com.duben.infinitefunjia.ui.adapter.VipDialogAdapter import com.duben.infinitefunjia.ui.adapter.VipDialogAdapter
import com.duben.infinitefunjia.ui.widgets.* import com.duben.infinitefunjia.ui.widgets.*
import com.duben.infinitefunjia.ui.widgets.countdowntimer.CountDownTimerSupport import com.duben.infinitefunjia.ui.widgets.countdowntimer.CountDownTimerSupport
import com.duben.infinitefunjia.ui.widgets.countdowntimer.OnCountDownTimerListener import com.duben.infinitefunjia.ui.widgets.countdowntimer.OnCountDownTimerListener
import com.duben.library.utils.GlideUtils
import com.duben.library.utils.nodoubleclick.AntiShake import com.duben.library.utils.nodoubleclick.AntiShake
import com.duben.infinitefunjia.utils.SpanUtils
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
...@@ -49,9 +39,7 @@ import com.jobo.wxpay.WXPayInfoImpl ...@@ -49,9 +39,7 @@ import com.jobo.wxpay.WXPayInfoImpl
import com.tencent.mm.opensdk.modelbiz.WXLaunchMiniProgram import com.tencent.mm.opensdk.modelbiz.WXLaunchMiniProgram
import com.tencent.mm.opensdk.openapi.IWXAPI import com.tencent.mm.opensdk.openapi.IWXAPI
import com.tencent.mm.opensdk.openapi.WXAPIFactory import com.tencent.mm.opensdk.openapi.WXAPIFactory
import com.youth.banner.listener.OnPageChangeListener import kotlinx.android.synthetic.main.activity_vip_dialog.*
import kotlinx.android.synthetic.main.activity_new_vip.*
import java.net.URLDecoder
import java.net.URLEncoder import java.net.URLEncoder
...@@ -172,7 +160,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener, ...@@ -172,7 +160,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
//设置content样式 //设置content样式
if (vipList != null && vipList!!.size > 0) { if (vipList != null && vipList!!.size > 0) {
setVipContent(vipList!![0]) setVipContent(vipList!![0])
cbVipAgreement.isChecked = data.isNeedClick // cbVipAgreement.isChecked = data.isNeedClick
} }
initRvView() initRvView()
} }
...@@ -432,7 +420,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener, ...@@ -432,7 +420,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
// tvVipAgreement.setOnClickListener(this) // tvVipAgreement.setOnClickListener(this)
// ll_vip_alipay.setOnClickListener(this) // ll_vip_alipay.setOnClickListener(this)
// ll_vip_wx.setOnClickListener(this) // ll_vip_wx.setOnClickListener(this)
cbVipAgreement.setOnCheckedChangeListener(this) // cbVipAgreement.setOnCheckedChangeListener(this)
} }
override fun onItemClick(position: Int) { override fun onItemClick(position: Int) {
...@@ -580,7 +568,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener, ...@@ -580,7 +568,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
// payYesDialog!!.dismiss() // payYesDialog!!.dismiss()
} }
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 != null && vipList!!.size > 0) {
val vipBean = vipList!![vipAdapter.getPosition()] val vipBean = vipList!![vipAdapter.getPosition()]
...@@ -666,7 +654,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener, ...@@ -666,7 +654,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
dialog?.dismiss() dialog?.dismiss()
when (v?.id) { when (v?.id) {
R.id.dialog_btn_right -> { R.id.dialog_btn_right -> {
cbVipAgreement.isChecked = true // cbVipAgreement.isChecked = true
if (vipList != null && vipList!!.size > 0) { if (vipList != null && vipList!!.size > 0) {
...@@ -696,52 +684,6 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener, ...@@ -696,52 +684,6 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
cdaa.show() cdaa.show()
} }
private fun setBanner(data: List<VedioBean>) {
mainHandler.postDelayed({
val scrollToBottomAnimator =
ValueAnimator.ofInt(0, nsv.getChildAt(0).height - nsv.height)
scrollToBottomAnimator.addUpdateListener { animator ->
val value = animator.animatedValue as Int
nsv.scrollTo(0, value)
}
scrollToBottomAnimator.duration = 2000
scrollToBottomAnimator.start()
}, 500)
mainHandler.postDelayed({
val scrollToTopAnimator = ValueAnimator.ofInt(nsv.scrollY, 0)
scrollToTopAnimator.addUpdateListener { animator ->
val value = animator.animatedValue as Int
nsv.scrollTo(0, value)
}
scrollToTopAnimator.duration = 1500
scrollToTopAnimator.start()
}, 3000)
val adapter = VipBannerAdapter(data)
// 绑定生命周期
vip_banner.addBannerLifecycleObserver(this)
.setBannerGalleryEffect(80, 15, 0.8f)
.setAdapter(adapter)
.addOnPageChangeListener(object : OnPageChangeListener {
override fun onPageScrolled(
position: Int,
positionOffset: Float,
positionOffsetPixels: Int
) {
}
override fun onPageSelected(position: Int) {
GlideUtils.loadBlurImageView(mContext, data[position].coverImage, iv_blur)
tv_banner_title.text = String.format("《%1s》", data[position].title)
}
override fun onPageScrollStateChanged(state: Int) {}
})
GlideUtils.loadBlurImageView(mContext, data[0].coverImage, iv_blur)
tv_banner_title.text = String.format("《%1s》", data[0].title)
}
fun startTimer() { fun startTimer() {
if (timer != null) { //防止计时器重复 if (timer != null) { //防止计时器重复
timer!!.stop() timer!!.stop()
......
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/black"
android:orientation="vertical">
<ImageView
android:id="@+id/ic_vip_top"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop" />
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/bg_vip_black"
android:scaleType="fitXY" />
<ImageView
android:id="@+id/ic_vip_quit"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_gravity="right"
android:layout_marginTop="30dp"
android:layout_marginRight="10dp"
android:padding="10dp"
android:scaleType="centerCrop"
android:src="@mipmap/ic_quit_yuan" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:layout_marginBottom="30dp"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:src="@mipmap/bg_vip_top"></ImageView>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvVip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@null"
android:overScrollMode="never" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/ll_vip_alipay"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal"
android:paddingLeft="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@mipmap/ic_alipay"
android:drawablePadding="6dp"
android:gravity="center_vertical"
android:text="支付宝支付"
android:textColor="@color/white"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/iv_vip_alipay"
android:layout_width="30dp"
android:layout_height="30dp"
android:scaleType="center"
android:src="@mipmap/ic_vip_enable_blue" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_vip_wx"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="horizontal"
android:paddingRight="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@mipmap/ic_call_wx"
android:drawablePadding="6dp"
android:gravity="center_vertical"
android:text="微信支付"
android:textColor="@color/white"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/iv_vip_wx"
android:layout_width="30dp"
android:layout_height="30dp"
android:scaleType="center"
android:src="@mipmap/ic_vip_none" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/tv_vip_hint"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="试用到期后将按终身xx元自动续费,可随时关闭"
android:textColor="#97ffffff"
android:textSize="10sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="6dp"
android:orientation="horizontal">
<CheckBox
android:id="@+id/cbVipAgreement"
style="@style/CustomCheckboxTheme"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true" />
<TextView
android:id="@+id/tvVipAgreement"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:text="点击购买即表示您同意《会员付费协议》"
android:textColor="@color/white"
android:textSize="10sp" />
</LinearLayout>
<io.supercharge.shimmerlayout.ShimmerLayout
android:id="@+id/shimmer_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="30dp"
android:layout_marginTop="10dp"
android:layout_marginRight="30dp"
android:layout_marginBottom="10dp"
app:shimmer_animation_duration="1200"
app:shimmer_color="#50ffffff">
<TextView
android:id="@+id/tvVipPay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/bg_vip_btn"
android:gravity="center"
android:text="立即开通"
android:textColor="@color/white"
android:textSize="18sp" />
</io.supercharge.shimmerlayout.ShimmerLayout>
</LinearLayout>
</FrameLayout>
\ No newline at end of file
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