Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
android_vedio
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
android
android_vedio
Commits
89957393
Commit
89957393
authored
Dec 05, 2024
by
mengcuiguang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
代码优化
parent
68e852c3
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
155 additions
and
94 deletions
+155
-94
VipForDialogActivity.kt
...duben/infinitefunjia/ui/activitys/VipForDialogActivity.kt
+73
-69
VipDialogAdapter.kt
...a/com/duben/infinitefunjia/ui/adapter/VipDialogAdapter.kt
+6
-0
GlideUtils.kt
...o/app/src/main/java/com/duben/library/utils/GlideUtils.kt
+10
-0
activity_vip_dialog.xml
video/app/src/main/res/layout/activity_vip_dialog.xml
+39
-3
item_rv_vip_dialog.xml
video/app/src/main/res/layout/item_rv_vip_dialog.xml
+27
-22
No files found.
video/app/src/main/java/com/duben/infinitefunjia/ui/activitys/VipForDialogActivity.kt
View file @
89957393
...
...
@@ -12,6 +12,7 @@ import android.util.DisplayMetrics
import
android.view.View
import
android.view.WindowManager
import
android.widget.CompoundButton
import
androidx.core.content.ContextCompat
import
androidx.recyclerview.widget.GridLayoutManager
import
com.alipay.sdk.app.OpenAuthTask
import
com.daimajia.androidanimations.library.YoYo
...
...
@@ -29,6 +30,8 @@ import com.duben.infinitefunjia.ui.adapter.VipDialogAdapter
import
com.duben.infinitefunjia.ui.widgets.*
import
com.duben.infinitefunjia.ui.widgets.countdowntimer.CountDownTimerSupport
import
com.duben.infinitefunjia.ui.widgets.countdowntimer.OnCountDownTimerListener
import
com.duben.infinitefunjia.utils.SpanUtils
import
com.duben.infinitefunjia.utils.ToastUtil
import
com.duben.library.utils.nodoubleclick.AntiShake
import
com.jobo.alipay.AliPay
import
com.jobo.alipay.AlipayInfoImpl
...
...
@@ -344,18 +347,33 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
if
(
AntiShake
.
check
(
v
?.
id
))
return
when
(
v
?.
id
)
{
// R.id.ic_vip_quit -> {
// if (UserManager.getInstance().newFlag &&
// vipList != null && vipList!!.size > 0
// ) {
// vipAdapter.setPosition(0)
// vipAdapter.notifyDataSetChanged()
// val vipBean = vipList!![0]
// backPayYesDialog(vipBean)
// } else {
// finish()
// }
// }
R
.
id
.
ic_vip_quit
->
{
finish
()
}
R
.
id
.
ic_free_auto
->
{
DialogUtils
.
showDialog
(
this
,
SpanUtils
()
.
append
(
"1、会员属于虚拟商品,一经购买不可退换 \n"
+
"2、未满18岁的未成年人需要在监护人主导、同意下进行相关付费操作;\n"
+
"3、充值一般5分钟内到账,如未到账请在“我的”页面联系客服;"
)
.
setForegroundColor
(
ContextCompat
.
getColor
(
this
,
R
.
color
.
tv_message_recente_money
)
)
.
create
(),
"用户须知"
,
"确定"
,
object
:
DialogListener
()
{
override
fun
onClick
(
dialog
:
Dialog
?,
v
:
View
?)
{
dialog
?.
dismiss
()
}
})
}
// R.id.tvVipPay -> {
// if (vipList != null && vipList!!.size > 0) {
// val vipBean = vipList!![vipAdapter.getPosition()]
...
...
@@ -399,7 +417,7 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
private
fun
initRvView
()
{
if
(
vipList
!=
null
&&
vipList
!!
.
size
>
0
)
{
val
linearLayoutManager
=
GridLayoutManager
(
this
,
2
)
val
linearLayoutManager
=
GridLayoutManager
(
this
,
2
)
// linearLayoutManager.orientation = LinearLayoutManager.HORIZONTAL
rvVip
.
layoutManager
=
linearLayoutManager
vipAdapter
=
VipDialogAdapter
(
vipList
!!
)
...
...
@@ -415,7 +433,8 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
// YoYo.with(Techniques.Pulse).duration(700).repeat(-1).playOn(shimmer_text)
// }, 200)
//
// ic_vip_quit.setOnClickListener(this)
ic_vip_quit
.
setOnClickListener
(
this
)
ic_free_auto
.
setOnClickListener
(
this
)
// tvVipPay.setOnClickListener(this)
// tvVipAgreement.setOnClickListener(this)
// ll_vip_alipay.setOnClickListener(this)
...
...
@@ -429,31 +448,16 @@ class VipForDialogActivity : BaseActivity(), VipView, View.OnClickListener,
//设置content样式
if
(
vipList
!=
null
&&
vipList
!!
.
size
>
0
)
{
setVipContent
(
vipList
!!
[
position
])
// if (vipList!!.size > 2) {
// if (position > 1 && position < vipList!!.size - 2) {
// moveToCenter(view);
// } else if (position in 0..1) {
// rvVip.smoothScrollToPosition(0);
// } else {
// rvVip.smoothScrollToPosition(vipList!!.size - 1);
// }
// }
val
vipBean
=
vipList
!!
[
position
]
setVipContent
(
vipBean
)
vipPresenter
.
getVipPayParams
(
payType
,
vipBean
.
pid
,
isAliPayInstalled
(),
ENTER_TYPE_ACTIVITY
)
}
}
private
fun
moveToCenter
(
itemView
:
View
)
{
val
locationView
=
IntArray
(
2
)
itemView
.
getLocationOnScreen
(
locationView
)
val
viewWidth
=
itemView
.
width
val
wm
=
getSystemService
(
Context
.
WINDOW_SERVICE
)
as
WindowManager
val
dm
=
DisplayMetrics
()
wm
.
defaultDisplay
.
getMetrics
(
dm
)
val
centerX
=
dm
.
widthPixels
/
2
val
distance
=
locationView
[
0
]
-
centerX
+
viewWidth
/
2
rvVip
.
smoothScrollBy
(
distance
,
0
)
}
fun
wxPay
(
wxParanBean
:
WxPayParamBean
,
payToModel
:
Int
)
{
if
(
payToModel
==
1
)
{
...
...
video/app/src/main/java/com/duben/infinitefunjia/ui/adapter/VipDialogAdapter.kt
View file @
89957393
...
...
@@ -6,12 +6,14 @@ import android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
android.widget.FrameLayout
import
android.widget.ImageView
import
android.widget.TextView
import
androidx.recyclerview.widget.RecyclerView
import
com.duben.infinitefunjia.R
import
com.duben.infinitefunjia.mvp.model.VipBean
import
com.duben.infinitefunjia.utils.BubbleUtils
import
com.duben.infinitefunjia.utils.SpanUtils
import
com.duben.library.utils.GlideUtils
class
VipDialogAdapter
(
val
vipList
:
MutableList
<
VipBean
.
ListBean
>)
:
RecyclerView
.
Adapter
<
VipDialogAdapter
.
ViewHolder
>()
{
...
...
@@ -38,6 +40,7 @@ class VipDialogAdapter(val vipList: MutableList<VipBean.ListBean>) :
val
tvVipItemMoney
:
TextView
=
view
.
findViewById
(
R
.
id
.
tvVipItemMoney
)
val
tvVipItemTitle
:
TextView
=
view
.
findViewById
(
R
.
id
.
tvVipItemTitle
)
val
tvVipItemLable
:
TextView
=
view
.
findViewById
(
R
.
id
.
tvVipItemLable
)
val
iv_vip_dialog_finger
:
ImageView
=
view
.
findViewById
(
R
.
id
.
iv_vip_dialog_finger
)
}
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
ViewHolder
{
...
...
@@ -148,7 +151,10 @@ class VipDialogAdapter(val vipList: MutableList<VipBean.ListBean>) :
// R.color.color_FD7E0E
// )
// )
holder
.
iv_vip_dialog_finger
.
visibility
=
View
.
VISIBLE
GlideUtils
.
loadRoundImageViewGif
(
context
,
"https://mints-pkg.oss-cn-beijing.aliyuncs.com/pkg/img/ic_loading.gif"
,
holder
.
iv_vip_dialog_finger
)
}
else
{
holder
.
iv_vip_dialog_finger
.
visibility
=
View
.
GONE
holder
.
rlVipItemRoot
.
setBackgroundResource
(
R
.
drawable
.
shape_vip_adapter_none
)
// holder.tvVipItemCurMoney.setTextColor(
// ContextCompat.getColor(
...
...
video/app/src/main/java/com/duben/library/utils/GlideUtils.kt
View file @
89957393
...
...
@@ -76,6 +76,16 @@ object GlideUtils {
.
into
(
imageView
)
}
fun
loadRoundImageViewGif
(
mContext
:
Context
,
url
:
String
,
imageView
:
ImageView
)
{
val
options
=
RequestOptions
()
.
fitCenter
()
.
diskCacheStrategy
(
DiskCacheStrategy
.
DATA
)
Glide
.
with
(
mContext
)
.
load
(
url
)
.
apply
(
options
)
.
into
(
imageView
)
}
//默认加载
fun
loadImageViewNoAnim
(
mContext
:
Context
?,
path
:
Any
?,
mImageView
:
ImageView
?)
{
Glide
.
with
(
mContext
!!
).
load
(
path
).
dontAnimate
().
skipMemoryCache
(
true
).
into
(
mImageView
!!
)
...
...
video/app/src/main/res/layout/activity_vip_dialog.xml
View file @
89957393
...
...
@@ -3,7 +3,7 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/half_transparent
2
"
android:background=
"@color/half_transparent"
android:orientation=
"vertical"
>
<LinearLayout
...
...
@@ -11,9 +11,43 @@
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_gravity=
"bottom"
android:
layout_marginBottom=
"30dp
"
android:
background=
"@drawable/shape_bg_write
"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/ic_free_auto"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginRight=
"20dp"
android:text=
"付费须知 >"
android:textColor=
"@color/black"
android:textSize=
"16sp"
/>
<ImageView
android:id=
"@+id/ic_vip_quit"
android:layout_width=
"50dp"
android:layout_height=
"50dp"
android:padding=
"4dp"
android:src=
"@mipmap/ic_quit_yuan"
/>
</LinearLayout>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:text=
"超多精彩好剧一键解锁"
android:textColor=
"@color/black"
android:layout_marginBottom=
"4dp"
android:textSize=
"18sp"
android:textStyle=
"bold"
/>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rvVip"
android:layout_width=
"match_parent"
...
...
@@ -25,7 +59,9 @@
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"horizontal"
>
android:orientation=
"horizontal"
android:visibility=
"gone"
>
<LinearLayout
android:id=
"@+id/ll_vip_wx"
...
...
video/app/src/main/res/layout/item_rv_vip_dialog.xml
View file @
89957393
...
...
@@ -3,53 +3,51 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_
marginLeft=
"20dp
"
android:layout_margin
Right=
"2
0dp"
android:layout_
height=
"wrap_content
"
android:layout_margin
Left=
"1
0dp"
android:layout_marginTop=
"10dp"
android:layout_marginRight=
"10dp"
android:layout_marginBottom=
"10dp"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<FrameLayout
android:id=
"@+id/rlVipItemRoot"
android:layout_width=
"match_parent"
android:layout_height=
"1
1
0dp"
android:layout_height=
"1
4
0dp"
android:layout_marginTop=
"8dp"
android:background=
"@drawable/shape_vip_adapter_none"
android:orientation=
"vertical"
>
<
Relative
Layout
<
Linear
Layout
android:layout_width=
"match_parent"
android:layout_marginTop=
"-8dp"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/tvVipItemCurMoney"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
>
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"30dp"
android:textColor=
"#efbc6a"
android:textSize=
"16sp"
tools:text=
"$78"
/>
<TextView
android:id=
"@+id/tvVipItemTitle"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_margin
Left=
"18
dp"
android:layout_margin
Top=
"10
dp"
android:textColor=
"#efbc6a"
android:textSize=
"20sp"
android:layout_centerVertical=
"true"
android:textStyle=
"bold"
tools:text=
"包年会员"
/>
<TextView
android:id=
"@+id/tvVipItemCurMoney"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:layout_alignParentRight=
"true"
android:layout_marginRight=
"18dp"
android:gravity=
"center"
android:textColor=
"#efbc6a"
android:textSize=
"16sp"
tools:text=
"$78"
/>
</LinearLayout>
</RelativeLayout>
<TextView
android:id=
"@+id/tvVipItemMoney"
...
...
@@ -63,6 +61,13 @@
tools:text=
"原价:123"
/>
<ImageView
android:id=
"@+id/iv_vip_dialog_finger"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right|bottom"
android:layout_margin=
"20dp"
android:src=
"@mipmap/ic_launcher_main"
></ImageView>
</FrameLayout>
<TextView
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment