一键连新增 充值更改
This commit is contained in:
parent
8dca2e837d
commit
87bd1e60b7
|
|
@ -10,20 +10,24 @@
|
||||||
<uses-feature
|
<uses-feature
|
||||||
android:name="android.hardware.touchscreen"
|
android:name="android.hardware.touchscreen"
|
||||||
android:required="false" />
|
android:required="false" />
|
||||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
|
||||||
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
|
||||||
|
android:maxSdkVersion="32" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||||
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||||
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
|
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
|
||||||
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
|
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
|
<!-- 适配Android 14以上 -->
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO"/>
|
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>
|
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
|
||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
|
||||||
|
<!-- 适配Android 14以上 google 上架需要注意相关政策 -->
|
||||||
|
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
|
||||||
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||||
<application
|
<application
|
||||||
android:name=".app.MainApplication"
|
android:name=".app.MainApplication"
|
||||||
android:fullBackupContent="@xml/full_backup_content"
|
android:fullBackupContent="@xml/full_backup_content"
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ class VIPRechargeAdapter : RecyclerView.Adapter<VIPRechargeAdapter.VIPRechargeVi
|
||||||
context!!.resources.getString(R.string.laPay) + "${rechargeInfo.grade!![position].amount}" + context!!.resources.getString(
|
context!!.resources.getString(R.string.laPay) + "${rechargeInfo.grade!![position].amount}" + context!!.resources.getString(
|
||||||
R.string.Yuan
|
R.string.Yuan
|
||||||
).replace("$", "")
|
).replace("$", "")
|
||||||
holder.cyn.text = context!!.resources.getString(R.string.everyDay)
|
holder.cyn.text = "¥"
|
||||||
|
|
||||||
if (rechargeInfo.grade!![position].days != null) {
|
if (rechargeInfo.grade!![position].days != null) {
|
||||||
val giftDay = rechargeInfo.grade?.getOrNull(position)?.giftDay ?: 0
|
val giftDay = rechargeInfo.grade?.getOrNull(position)?.giftDay ?: 0
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,8 @@ import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.os.Environment
|
||||||
|
import android.provider.Settings
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.FrameLayout
|
import android.widget.FrameLayout
|
||||||
|
|
@ -264,9 +266,36 @@ class SettingFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatc
|
||||||
|
|
||||||
}
|
}
|
||||||
7->{
|
7->{
|
||||||
// var a=0
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||||
// var c=1/a
|
if (Environment.isExternalStorageManager()) {
|
||||||
checkPermission()
|
showLoading(
|
||||||
|
resources.getString(R.string.UploadingInProgress),
|
||||||
|
requireActivity()
|
||||||
|
)
|
||||||
|
// 已授予权限
|
||||||
|
val directory: File? = requireActivity().getExternalFilesDir("CrashLog")
|
||||||
|
if (directory != null) {
|
||||||
|
val allFilePath = getAllFilePath(directory.path)
|
||||||
|
if (allFilePath.isNotEmpty()) {
|
||||||
|
mainAtyVM.getUploadParameters()
|
||||||
|
} else {
|
||||||
|
android.util.Log.i("checkPermission", "allFilePath is empty")
|
||||||
|
hideLoading()
|
||||||
|
RxToast.info(resources.getString(R.string.NoErrorLogs))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
hideLoading()
|
||||||
|
RxToast.error(resources.getString(R.string.NoErrorLogs))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 未授予权限,跳转到设置页面
|
||||||
|
val intent = Intent(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION)
|
||||||
|
startActivity(intent)
|
||||||
|
hideLoading()
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
checkPermission()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
8->{
|
8->{
|
||||||
val intent = Intent(requireContext(),AgreementAndPrivacyActivity::class.java)
|
val intent = Intent(requireContext(),AgreementAndPrivacyActivity::class.java)
|
||||||
|
|
|
||||||
|
|
@ -4,12 +4,14 @@ import android.annotation.SuppressLint
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
|
import android.os.Build
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.FrameLayout
|
import android.widget.FrameLayout
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.RelativeLayout
|
import android.widget.RelativeLayout
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.appcompat.widget.AppCompatImageView
|
import androidx.appcompat.widget.AppCompatImageView
|
||||||
import androidx.constraintlayout.widget.ConstraintLayout
|
import androidx.constraintlayout.widget.ConstraintLayout
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
|
|
@ -65,6 +67,8 @@ import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.GlobalScope
|
import kotlinx.coroutines.GlobalScope
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import java.text.DecimalFormat
|
import java.text.DecimalFormat
|
||||||
|
import java.text.SimpleDateFormat
|
||||||
|
import java.util.Locale
|
||||||
|
|
||||||
class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers.IO) {
|
class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers.IO) {
|
||||||
|
|
||||||
|
|
@ -78,6 +82,9 @@ class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers
|
||||||
private var selectedGrade: Grade? = null
|
private var selectedGrade: Grade? = null
|
||||||
|
|
||||||
private lateinit var rxDialogShapeLoading: RxDialogShapeLoading
|
private lateinit var rxDialogShapeLoading: RxDialogShapeLoading
|
||||||
|
private lateinit var tvUserName: TextView
|
||||||
|
private lateinit var tvUserTimeEnd: TextView
|
||||||
|
private lateinit var tvTxtShowLink:TextView
|
||||||
private var outTradeNo = ""
|
private var outTradeNo = ""
|
||||||
private var selectedGradeID :Int=0
|
private var selectedGradeID :Int=0
|
||||||
//stripePay 支付
|
//stripePay 支付
|
||||||
|
|
@ -113,6 +120,11 @@ class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers
|
||||||
mainAtyVM = ViewModelProvider(this)[MainAtyVM::class.java]
|
mainAtyVM = ViewModelProvider(this)[MainAtyVM::class.java]
|
||||||
viewModel = ViewModelProvider(this)[RechargeViewModel::class.java]
|
viewModel = ViewModelProvider(this)[RechargeViewModel::class.java]
|
||||||
observe(this, viewModel)
|
observe(this, viewModel)
|
||||||
|
val userName =
|
||||||
|
MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME)
|
||||||
|
|
||||||
|
tvUserName.text=userName
|
||||||
|
setExpireDate()
|
||||||
//获取充值列表
|
//获取充值列表
|
||||||
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
|
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
|
||||||
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
|
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
|
||||||
|
|
@ -127,7 +139,17 @@ class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers
|
||||||
tvPay=view.findViewById(R.id.tvPay)
|
tvPay=view.findViewById(R.id.tvPay)
|
||||||
tvRechargeRecord=view.findViewById(R.id.tvRechargeRecord)
|
tvRechargeRecord=view.findViewById(R.id.tvRechargeRecord)
|
||||||
clCustom=view.findViewById(R.id.clCustom)
|
clCustom=view.findViewById(R.id.clCustom)
|
||||||
|
|
||||||
|
tvUserName=view.findViewById(R.id.tvUserName)
|
||||||
|
tvUserTimeEnd=view.findViewById(R.id.tvUserTimeEnd)
|
||||||
|
tvTxtShowLink=view.findViewById(R.id.tvTxtShowLink)
|
||||||
|
|
||||||
|
|
||||||
swipeLayout.setColorSchemeColors(Color.rgb(47, 223, 189))
|
swipeLayout.setColorSchemeColors(Color.rgb(47, 223, 189))
|
||||||
|
|
||||||
|
tvTxtShowLink.setOnClickListener {
|
||||||
|
startActivity(Intent(requireActivity(), CustomerServiceWebView::class.java))
|
||||||
|
}
|
||||||
swipeLayout.setOnRefreshListener {
|
swipeLayout.setOnRefreshListener {
|
||||||
selectedGrade = null
|
selectedGrade = null
|
||||||
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
|
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
|
||||||
|
|
@ -548,4 +570,75 @@ class vipFragment : BaseFragment(), CoroutineScope by CoroutineScope(Dispatchers
|
||||||
baseLoadingView?.cancel()
|
baseLoadingView?.cancel()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
fun setExpireDate() {
|
||||||
|
val isExpire = checkExpire()
|
||||||
|
var endTimeInfo = "--"
|
||||||
|
if (isExpire) {
|
||||||
|
if (isAdded) {
|
||||||
|
endTimeInfo = resources.getString(R.string.AccountExpired)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
val validPeriod = MMKV.defaultMMKV().decodeLong(BZYConstants.MMKV_KEY_VPN_VALID_PERIOD)
|
||||||
|
val decodeString = MMKV.defaultMMKV().decodeString(BZYConstants.languageInfo, "")
|
||||||
|
if (decodeString.isNullOrEmpty()) {
|
||||||
|
//获取当前系统语言
|
||||||
|
val config = resources.configuration
|
||||||
|
val language = config.locale.language
|
||||||
|
if (language.equals("en")) {
|
||||||
|
val dateFormat = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
val localEN = Locale.ENGLISH
|
||||||
|
SimpleDateFormat("MM/dd/yyyy HH:mm", localEN)
|
||||||
|
} else {
|
||||||
|
val localEN = Locale.ENGLISH
|
||||||
|
SimpleDateFormat("MM/dd/yyyy HH:mm", localEN)
|
||||||
|
}
|
||||||
|
endTimeInfo = dateFormat.format(validPeriod)
|
||||||
|
} else {
|
||||||
|
val dateFormat = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
|
||||||
|
SimpleDateFormat("yyyy年MM月dd日 HH:mm")
|
||||||
|
} else {
|
||||||
|
SimpleDateFormat("yyyy年MM月dd日 HH:mm")
|
||||||
|
|
||||||
|
}
|
||||||
|
endTimeInfo = dateFormat.format(validPeriod)
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (decodeString == "English") {
|
||||||
|
val dateFormat = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
val locale = Locale.ENGLISH
|
||||||
|
SimpleDateFormat("MM/dd/yyyy HH:mm", locale)
|
||||||
|
} else {
|
||||||
|
val locale = Locale.ENGLISH
|
||||||
|
SimpleDateFormat("MM/dd/yyyy HH:mm", locale)
|
||||||
|
}
|
||||||
|
endTimeInfo = dateFormat.format(validPeriod)
|
||||||
|
} else {
|
||||||
|
val dateFormat = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
SimpleDateFormat("yyyy年MM月dd日 HH:mm")
|
||||||
|
} else {
|
||||||
|
SimpleDateFormat("yyyy年MM月dd日 HH:mm")
|
||||||
|
}
|
||||||
|
endTimeInfo = dateFormat.format(validPeriod)
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tvUserTimeEnd.text =resources.getString(R.string.expire_date)+endTimeInfo
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun checkExpire(): Boolean {
|
||||||
|
val validPeriod = MMKV.defaultMMKV().decodeLong(BZYConstants.MMKV_KEY_VPN_VALID_PERIOD)
|
||||||
|
if (validPeriod > 0) {
|
||||||
|
val nowTime = System.currentTimeMillis()
|
||||||
|
Log.d("validPeriod==>$validPeriod, nowTime==>$nowTime")
|
||||||
|
if (validPeriod >= nowTime) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||||
|
<!-- This is the main color -->
|
||||||
|
<item>
|
||||||
|
<shape>
|
||||||
|
<!-- 边框颜色 -->
|
||||||
|
<gradient android:startColor="#FFFA6407" android:endColor="#FFFF9345" android:angle="0"/>
|
||||||
|
<corners android:radius="16dp"/>
|
||||||
|
</shape>
|
||||||
|
</item>
|
||||||
|
<!-- 给View的上 左 右设置8dp的边框 -->
|
||||||
|
<item android:top="1dp" android:left="1dp" android:right="1dp" android:bottom="1dp" >
|
||||||
|
<shape>
|
||||||
|
<!-- View填充颜色 -->
|
||||||
|
<solid android:color="#fff" />
|
||||||
|
<corners android:radius="16dp"/>
|
||||||
|
</shape>
|
||||||
|
</item>
|
||||||
|
|
||||||
|
</layer-list>
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:aapt="http://schemas.android.com/aapt"
|
||||||
|
android:width="65dp"
|
||||||
|
android:height="20dp"
|
||||||
|
android:viewportWidth="65"
|
||||||
|
android:viewportHeight="20">
|
||||||
|
<path
|
||||||
|
android:pathData="M0,10C0,4.477 4.477,0 10,0H32.5H61C63.209,0 65,1.791 65,4V10C65,15.523 60.523,20 55,20H0V10Z">
|
||||||
|
<aapt:attr name="android:fillColor">
|
||||||
|
<gradient
|
||||||
|
android:startX="0"
|
||||||
|
android:startY="10"
|
||||||
|
android:endX="65"
|
||||||
|
android:endY="10"
|
||||||
|
android:type="linear">
|
||||||
|
<item android:offset="0" android:color="#FFC36BBF"/>
|
||||||
|
<item android:offset="1" android:color="#FFFF465E"/>
|
||||||
|
</gradient>
|
||||||
|
</aapt:attr>
|
||||||
|
</path>
|
||||||
|
</vector>
|
||||||
|
|
@ -7,7 +7,7 @@ android:color="#BFD5D5D5" >
|
||||||
android:angle="360"
|
android:angle="360"
|
||||||
android:endColor="@color/white"
|
android:endColor="@color/white"
|
||||||
android:startColor="@color/white" />
|
android:startColor="@color/white" />
|
||||||
<corners android:topRightRadius="30dp" android:topLeftRadius="30dp" android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp"/>
|
<corners android:topRightRadius="13dp" android:topLeftRadius="13dp" android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp"/>
|
||||||
</shape>
|
</shape>
|
||||||
</item>
|
</item>
|
||||||
</ripple>
|
</ripple>
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:color="#BFD5D5D5" >
|
||||||
|
<item>
|
||||||
|
<shape>
|
||||||
|
<gradient
|
||||||
|
android:angle="360"
|
||||||
|
android:endColor="@color/white"
|
||||||
|
android:startColor="@color/white" />
|
||||||
|
<corners android:radius="13dp"/>
|
||||||
|
</shape>
|
||||||
|
</item>
|
||||||
|
</ripple>
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:layout_marginTop="12dp"
|
android:layout_marginTop="48dp"
|
||||||
>
|
>
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
android:id="@+id/aiBack"
|
android:id="@+id/aiBack"
|
||||||
|
|
@ -52,362 +52,367 @@
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<androidx.core.widget.NestedScrollView
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
android:layout_width="match_parent"
|
||||||
android:id="@+id/clUser"
|
android:layout_height="0dp"
|
||||||
android:layout_width="match_parent"
|
app:layout_constraintTop_toBottomOf="@+id/clTitle"
|
||||||
android:layout_height="wrap_content"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
>
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
android:layout_marginStart="@dimen/dp_10"
|
|
||||||
android:layout_marginEnd="@dimen/dp_10"
|
|
||||||
android:layout_marginTop="10dp"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/clTitle"
|
|
||||||
>
|
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
|
||||||
android:id="@+id/clCustom"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:background="@drawable/setting_head_bg"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
android:layout_marginTop="10dp"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/userIcon"
|
|
||||||
android:layout_width="40dp"
|
|
||||||
android:layout_height="40dp"
|
|
||||||
android:src="@mipmap/yjl_usericon"
|
|
||||||
android:layout_marginTop="18dp"
|
|
||||||
android:layout_marginBottom="18dp"
|
|
||||||
android:layout_marginStart="10dp"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/userIcon"
|
|
||||||
app:layout_constraintEnd_toStartOf="@+id/aivStart"
|
|
||||||
app:layout_constraintTop_toTopOf="@+id/userIcon"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/userIcon"
|
|
||||||
android:layout_marginStart="10dp"
|
|
||||||
android:layout_marginEnd="5dp"
|
|
||||||
android:orientation="vertical"
|
|
||||||
>
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvUserName"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="ID:33333AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
|
||||||
android:textColor="#FF333333"
|
|
||||||
android:textSize="16sp"
|
|
||||||
android:maxLines="1"
|
|
||||||
android:ellipsize="end"
|
|
||||||
android:drawableRight="@drawable/ic_s_copy"
|
|
||||||
android:drawablePadding="5dp"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvUserTimeEnd"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="ID:33333AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
|
||||||
android:textColor="#FFF96B10"
|
|
||||||
android:textSize="16sp"
|
|
||||||
android:layout_marginTop="10dp"
|
|
||||||
android:maxLines="1"
|
|
||||||
android:ellipsize="end"
|
|
||||||
android:drawableRight="@drawable/ic_refresh"
|
|
||||||
android:drawablePadding="5dp"
|
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/aivStart"
|
|
||||||
android:layout_width="49dp"
|
|
||||||
android:layout_height="49dp"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
app:layout_constraintBaseline_toBottomOf="parent"
|
|
||||||
android:layout_marginEnd="5dp"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
android:src="@mipmap/vipbg"
|
|
||||||
/>
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="0dp"
|
android:layout_height="match_parent">
|
||||||
android:background="@drawable/yjl_login_bg"
|
|
||||||
app:layout_constraintBottom_toTopOf="@+id/clButton"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/clUser"
|
|
||||||
android:layout_marginBottom="12dp"
|
|
||||||
>
|
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/textView3"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginStart="16dp"
|
|
||||||
android:layout_marginTop="12dp"
|
|
||||||
android:text="@string/SelectDuration"
|
|
||||||
android:textColor="@color/black_4F4F4F"
|
|
||||||
android:textSize="16sp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
|
|
||||||
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
|
||||||
android:id="@+id/swipeLayout"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_marginTop="@dimen/dp_10"
|
|
||||||
android:layout_marginBottom="16dp"
|
|
||||||
app:layout_constraintBottom_toTopOf="@+id/clCustomTxt"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/textView3"
|
|
||||||
tools:layout_editor_absoluteX="10dp">
|
|
||||||
|
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
|
||||||
android:id="@+id/rvRechargeList"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent" />
|
|
||||||
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:id="@+id/clCustomTxt"
|
android:id="@+id/clUser"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintBottom_toTopOf="@+id/tvPay"
|
|
||||||
android:layout_marginBottom="14dp"
|
|
||||||
>
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/aivNosee"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:src="@drawable/vector_notice_pick"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
android:layout_marginStart="16dp"
|
|
||||||
/>
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvTxtShow"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/aivNosee"
|
|
||||||
android:text="@string/VipSerTxt"
|
|
||||||
android:layout_marginStart="5dp"
|
|
||||||
android:textColor="#FF333333"
|
|
||||||
android:textSize="14sp"
|
|
||||||
android:padding="5dp"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvTxtShowLink"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:padding="5dp"
|
|
||||||
android:layout_marginEnd="5dp"
|
|
||||||
android:text="@string/LinekCustom"
|
|
||||||
android:textColor="#FFFC4863"
|
|
||||||
android:textSize="14sp"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/tvTxtShow"
|
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvPay"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginStart="@dimen/dp_10"
|
android:layout_marginStart="@dimen/dp_10"
|
||||||
android:layout_marginEnd="@dimen/dp_10"
|
android:layout_marginEnd="@dimen/dp_10"
|
||||||
android:layout_marginBottom="14dp"
|
|
||||||
android:background="@drawable/oc_login_bg"
|
|
||||||
android:gravity="center"
|
|
||||||
android:paddingTop="13dp"
|
|
||||||
android:paddingBottom="13dp"
|
|
||||||
android:text="开通VIP (¥36.8)"
|
|
||||||
android:textColor="@color/white"
|
|
||||||
android:textSize="16sp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintHorizontal_bias="0.0"
|
|
||||||
app:layout_constraintStart_toStartOf="parent" />
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
||||||
|
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
|
||||||
android:id="@+id/clButton"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
android:background="@drawable/yjl_login_bg"
|
|
||||||
>
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:id="@+id/aivTabTxt"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:background="@drawable/img_line_bg"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
android:layout_marginStart="70dp"
|
|
||||||
android:layout_marginEnd="70dp"
|
|
||||||
android:layout_marginTop="8dp"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/aivTabTxt"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
android:gravity="center"
|
|
||||||
android:orientation="horizontal"
|
|
||||||
android:layout_marginTop="10dp"
|
android:layout_marginTop="10dp"
|
||||||
android:layout_marginBottom="8dp"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
>
|
>
|
||||||
|
|
||||||
<LinearLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:id="@+id/linearLayout"
|
android:id="@+id/clCustom"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="24dp"
|
android:background="@mipmap/yjl_vip_hear"
|
||||||
android:gravity="center"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:orientation="vertical"
|
android:layout_marginTop="10dp"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
android:layout_width="wrap_content"
|
android:id="@+id/userIcon"
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="40dp"
|
||||||
android:src="@drawable/buton_a" />
|
android:layout_height="40dp"
|
||||||
|
android:src="@mipmap/yjl_usericon"
|
||||||
<TextView
|
android:layout_marginTop="18dp"
|
||||||
android:layout_width="wrap_content"
|
android:layout_marginBottom="18dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_marginStart="10dp"
|
||||||
android:layout_marginTop="8dp"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
android:text="@string/jstime"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:textColor="#FF5E2A12"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
android:textSize="14sp"
|
|
||||||
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TextView
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="2dp"
|
app:layout_constraintStart_toEndOf="@+id/userIcon"
|
||||||
android:text="@string/jstimeStr"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:textColor="#FF5E2A12"
|
app:layout_constraintTop_toTopOf="@+id/userIcon"
|
||||||
android:textSize="14sp"
|
app:layout_constraintBottom_toBottomOf="@+id/userIcon"
|
||||||
|
android:layout_marginStart="10dp"
|
||||||
|
android:layout_marginEnd="108dp"
|
||||||
|
android:orientation="vertical"
|
||||||
|
>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvUserName"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="ID:33333AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
||||||
|
android:textColor="#FF333333"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:drawableRight="@drawable/ic_s_copy"
|
||||||
|
android:drawablePadding="5dp"
|
||||||
|
/>
|
||||||
|
|
||||||
/>
|
<TextView
|
||||||
|
android:id="@+id/tvUserTimeEnd"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="ID:33333AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
|
||||||
|
android:textColor="#FFF96B10"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:drawableRight="@drawable/ic_refresh"
|
||||||
|
android:drawablePadding="5dp"
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:gravity="center"
|
|
||||||
android:orientation="vertical"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toStartOf="@+id/linearLayout2"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/linearLayout"
|
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:src="@drawable/buton_b" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="8dp"
|
|
||||||
android:text="@string/jstime"
|
|
||||||
android:textColor="#FF5E2A12"
|
|
||||||
android:textSize="14sp"
|
|
||||||
|
|
||||||
/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="2dp"
|
|
||||||
android:text="@string/jstimeStr"
|
|
||||||
android:textColor="#FF5E2A12"
|
|
||||||
android:textSize="14sp"
|
|
||||||
|
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:id="@+id/linearLayout2"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginEnd="24dp"
|
|
||||||
android:gravity="center"
|
|
||||||
android:orientation="vertical"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatImageView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:src="@drawable/button_c" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="8dp"
|
|
||||||
android:text="@string/jstime"
|
|
||||||
android:textColor="#FF5E2A12"
|
|
||||||
android:textSize="14sp"
|
|
||||||
|
|
||||||
/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="2dp"
|
|
||||||
android:text="@string/jstimeStr"
|
|
||||||
android:textColor="#FF5E2A12"
|
|
||||||
android:textSize="14sp"
|
|
||||||
|
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/clVipPay"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:background="@drawable/yjl_login_bg_icon"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/clUser"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
>
|
||||||
|
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/textView3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="@string/SelectDuration"
|
||||||
|
android:textColor="@color/black_4F4F4F"
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
|
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||||
|
android:id="@+id/swipeLayout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="350dp"
|
||||||
|
android:layout_marginTop="@dimen/dp_10"
|
||||||
|
android:layout_marginBottom="16dp"
|
||||||
|
app:layout_constraintBottom_toTopOf="@+id/clCustomTxt"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/textView3"
|
||||||
|
tools:layout_editor_absoluteX="10dp">
|
||||||
|
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/rvRechargeList"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/clCustomTxt"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintBottom_toTopOf="@+id/tvPay"
|
||||||
|
android:layout_marginBottom="14dp"
|
||||||
|
>
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/aivNosee"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/vector_notice_pick"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvTxtShow"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/aivNosee"
|
||||||
|
android:text="@string/VipSerTxt"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
|
android:textColor="#FF333333"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:padding="5dp"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvTxtShowLink"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:layout_marginEnd="5dp"
|
||||||
|
android:text="@string/LinekCustom"
|
||||||
|
android:textColor="#FFFC4863"
|
||||||
|
android:textSize="14sp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/tvTxtShow"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvPay"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="@dimen/dp_10"
|
||||||
|
android:layout_marginEnd="@dimen/dp_10"
|
||||||
|
android:layout_marginBottom="14dp"
|
||||||
|
android:background="@drawable/oc_login_bg"
|
||||||
|
android:gravity="center"
|
||||||
|
android:paddingTop="13dp"
|
||||||
|
android:paddingBottom="13dp"
|
||||||
|
android:text="开通VIP (¥36.8)"
|
||||||
|
android:textColor="@color/white"
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintHorizontal_bias="0.0"
|
||||||
|
app:layout_constraintStart_toStartOf="parent" />
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:id="@+id/clButton"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/clVipPay"
|
||||||
|
android:background="@drawable/yjl_login_bg"
|
||||||
|
android:visibility="visible"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
>
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:id="@+id/aivTabTxt"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@drawable/img_line_bg"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
android:layout_marginStart="70dp"
|
||||||
|
android:layout_marginEnd="70dp"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/aivTabTxt"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:layout_marginTop="10dp"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginStart="24dp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:src="@drawable/buton_a" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:text="@string/jstime"
|
||||||
|
android:textColor="#FF5E2A12"
|
||||||
|
android:textSize="12sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:text="@string/jstimeStr"
|
||||||
|
android:textColor="#FF908F8D"
|
||||||
|
android:textSize="10sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toStartOf="@+id/linearLayout2"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/linearLayout"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:src="@drawable/buton_b" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:text="@string/liuliangStr"
|
||||||
|
android:textColor="#FF5E2A12"
|
||||||
|
android:textSize="12sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:text="@string/liuliangStrEd"
|
||||||
|
android:textColor="#FF908F8D"
|
||||||
|
android:textSize="10dp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/linearLayout2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginEnd="24dp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<androidx.appcompat.widget.AppCompatImageView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:src="@drawable/button_c" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:text="@string/liuliangStrAA"
|
||||||
|
android:textColor="#FF5E2A12"
|
||||||
|
android:textSize="14sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:text="@string/liuliangStrEdAAA"
|
||||||
|
android:textColor="#FF908F8D"
|
||||||
|
android:textSize="10sp"
|
||||||
|
|
||||||
|
/>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
</androidx.core.widget.NestedScrollView>
|
||||||
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
@ -20,7 +20,7 @@
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:background="@drawable/oc_language_bg"
|
android:background="@drawable/vip_item_nochoose_bg"
|
||||||
android:layout_marginTop="@dimen/dp_10"
|
android:layout_marginTop="@dimen/dp_10"
|
||||||
>
|
>
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
android:id="@+id/tvDayTxt"
|
android:id="@+id/tvDayTxt"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textColor="#B36C1B"
|
android:textColor="#FF333333"
|
||||||
android:textSize="21sp"
|
android:textSize="16sp"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
|
|
@ -59,7 +59,7 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:text="@string/laPay"
|
android:text="@string/PAYiNG"
|
||||||
android:textColor="#FF8A04"
|
android:textColor="#FF8A04"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
|
|
||||||
|
|
@ -68,7 +68,8 @@
|
||||||
android:id="@+id/tvDayAverage"
|
android:id="@+id/tvDayAverage"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textColor="#FF8A04"
|
android:textColor="#FFF89F25"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
android:text="36.8"
|
android:text="36.8"
|
||||||
android:textSize="18sp"
|
android:textSize="18sp"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
|
|
@ -80,7 +81,7 @@
|
||||||
android:id="@+id/tvDiscount"
|
android:id="@+id/tvDiscount"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textColor="@color/gray_828282"
|
android:textColor="#FF9EA3A5"
|
||||||
android:text="¥36.8/月"
|
android:text="¥36.8/月"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
android:layout_marginTop="5dp"
|
android:layout_marginTop="5dp"
|
||||||
|
|
@ -96,22 +97,25 @@
|
||||||
android:id="@+id/clRandomlySend"
|
android:id="@+id/clRandomlySend"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="@drawable/pay_title_bg"
|
android:background="@drawable/vip_item_zs_bg"
|
||||||
android:visibility="invisible"
|
android:visibility="gone"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:layout_marginStart="30dp"
|
|
||||||
android:layout_marginEnd="30dp"
|
|
||||||
>
|
>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvRandomlySend"
|
android:id="@+id/tvRandomlySend"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:padding="5dp"
|
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:text=""
|
android:text=""
|
||||||
|
android:maxWidth="80dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginStart="7dp"
|
||||||
|
android:layout_marginEnd="7dp"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="12sp"
|
android:textSize="12sp"
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 128 KiB |
|
|
@ -468,4 +468,9 @@
|
||||||
<string name="NewNotice">最新通知</string>
|
<string name="NewNotice">最新通知</string>
|
||||||
<string name="vipTimeStrEd">你的会员还有$天到期</string>
|
<string name="vipTimeStrEd">你的会员还有$天到期</string>
|
||||||
<string name="goEnd">去完成</string>
|
<string name="goEnd">去完成</string>
|
||||||
|
<string name="liuliangStr">流量限制</string>
|
||||||
|
<string name="liuliangStrEd">不限流量</string>
|
||||||
|
<string name="liuliangStrAA">解锁流媒体</string>
|
||||||
|
<string name="liuliangStrEdAAA">智能连接</string>
|
||||||
|
<string name="PAYiNG">¥</string>
|
||||||
</resources>
|
</resources>
|
||||||
Loading…
Reference in New Issue