光环助手V4.8.0-多版本下载面板优化(第二期)https://git.ghzs.com/pm/halo-app-issues/-/issues/1157

This commit is contained in:
张玉久
2021-03-01 10:05:35 +08:00
parent 9b8755e035
commit 48b5c7efc1
17 changed files with 238 additions and 176 deletions

View File

@ -84,6 +84,8 @@ class DownloadDialog : BaseDialogFragment(), View.OnTouchListener {
}
}
override fun getThemeRes(): Int = R.style.DialogFragmentDimAmount
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
val createDialog = super.onCreateDialog(savedInstanceState)
createDialog.setCanceledOnTouchOutside(true)

View File

@ -41,7 +41,7 @@ class DownloadDialogInstalledItemViewHolder(val binding: DownloadDialogInstalled
binding.launch.visibility = View.GONE
if (apkCollection != null) {
binding.remark.goneIf(apkCollection.remark.isEmpty())
binding.root.setBackgroundResource(R.drawable.download_dialog_item_collection_background)
// binding.root.setBackgroundResource(R.drawable.download_dialog_item_collection_background)
} else {
binding.remark.goneIf(apkEntity.remark.isEmpty())
}

View File

@ -3,6 +3,7 @@ package com.gh.download.dialog
import android.content.Context
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat
import com.gh.base.BaseActivity
import com.gh.base.BaseRecyclerViewHolder
import com.gh.common.constant.Config
@ -52,18 +53,18 @@ class DownloadDialogItemViewHolder(val binding: DownloadDialogItemBinding) : Bas
remark = apkCollection.remark)
else -> apkEntity
}
binding.root.setBackgroundResource(R.drawable.download_dialog_item_background)
binding.containerView.setBackgroundResource(R.drawable.download_dialog_item_background)
if (apkLink != null) {
binding.downloadStatusIcon.visibility = View.VISIBLE
binding.downloadStatusIcon.visibility = View.GONE
binding.status.visibility = View.VISIBLE
binding.progressbar.visibility = View.GONE
binding.install.visibility = View.GONE
binding.remark.goneIf(apkLink.remark.isEmpty())
binding.status.text = "点击查看"
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_collection_status_link)
binding.root.setBackgroundResource(R.drawable.download_dialog_installed_background)
binding.status.setCompoundDrawablesWithIntrinsicBounds(null, null, ContextCompat.getDrawable(binding.status.context, R.drawable.download_dialog_collection_status_link), null)
binding.containerView.setBackgroundResource(R.drawable.download_dialog_installed_background)
itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.LINK)
} else if (apkCollection != null || (!isCollectionPage && apkEntity.downloadInstruction.isNotEmpty())) {
binding.downloadStatusIcon.visibility = View.VISIBLE
@ -72,12 +73,11 @@ class DownloadDialogItemViewHolder(val binding: DownloadDialogItemBinding) : Bas
binding.status.visibility = View.GONE
if (apkCollection != null) {
binding.remark.goneIf(apkCollection.remark.isEmpty())
binding.root.setBackgroundResource(R.drawable.download_dialog_item_collection_background)
} else {
binding.remark.goneIf(apkEntity.remark.isEmpty())
}
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_status_collection)
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_status_collection_gray)
itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.COLLECTION)
} else {
@ -104,17 +104,17 @@ class DownloadDialogItemViewHolder(val binding: DownloadDialogItemBinding) : Bas
binding.remark.goneIf(apkEntity.remark.isEmpty())
if (PackageUtils.isCanUpdate(apkEntity, gameEntity.id)) {
binding.downloadStatusIcon.visibility = View.VISIBLE
binding.status.visibility = View.VISIBLE
binding.status.text = "可更新"
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_collection_status_update)
binding.status.setCompoundDrawablesWithIntrinsicBounds(null, null, ContextCompat.getDrawable(binding.status.context, R.drawable.download_dialog_collection_status_update), null)
binding.downloadStatusIcon.visibility = View.GONE
itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.UPDATE)
} else if (PackageUtils.getGhId(apkEntity.packageName) == gameEntity.id ||
PackagesManager.isInstalled(apkEntity.packageName) && Config.getSettings()?.gameDownloadBlackList?.contains(apkEntity.packageName) == true) {
binding.downloadStatusIcon.visibility = View.GONE
binding.status.visibility = View.VISIBLE
binding.root.setBackgroundResource(R.drawable.download_dialog_installed_background)
binding.containerView.setBackgroundResource(R.drawable.download_dialog_installed_background)
var isFilter = false
Config.getSettings()?.gameDownloadBlackList?.forEach { pkgName ->
@ -131,12 +131,13 @@ class DownloadDialogItemViewHolder(val binding: DownloadDialogItemBinding) : Bas
// 点击启动
binding.status.text = "点击启动"
itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.LAUNCH)
binding.status.setCompoundDrawablesWithIntrinsicBounds(null, null, ContextCompat.getDrawable(binding.status.context, R.drawable.download_dialog_collection_status_launch), null)
}
} else {
binding.downloadStatusIcon.visibility = View.VISIBLE
binding.status.visibility = View.GONE
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_status_download)
binding.downloadStatusIcon.setImageResource(R.drawable.download_dialog_status_download_gray)
if (PackageUtils.isCanPluggable(apkEntity)) {
itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.PLUGGABLE)
} else {