diff --git a/HISTORY.md b/HISTORY.md
index d6f18f38..a65205c5 100644
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -1,5 +1,15 @@
## 更新日志
+### v1.9.4(通用)
+
+* 修复默认时间不显示问题
+* 设置页居中
+* 频道号和时间对齐
+
+### v1.9.2(通用)
+
+* 修复一个重试的错误
+
### v1.9.0(通用)
* 减少视频播放失败情况
diff --git a/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt b/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt
index 5bec0bea..602e8e9a 100644
--- a/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt
@@ -39,6 +39,7 @@ class ChannelFragment : Fragment() {
binding.channel.layoutParams = layoutParams
binding.content.textSize = application.px2PxFont(binding.content.textSize)
+ binding.time.textSize = application.px2PxFont(binding.time.textSize)
binding.main.layoutParams.width = application.shouldWidthPx()
binding.main.layoutParams.height = application.shouldHeightPx()
diff --git a/app/src/main/java/com/lizongying/mytv/MainActivity.kt b/app/src/main/java/com/lizongying/mytv/MainActivity.kt
index 55cb15e3..3c5584dd 100644
--- a/app/src/main/java/com/lizongying/mytv/MainActivity.kt
+++ b/app/src/main/java/com/lizongying/mytv/MainActivity.kt
@@ -1,8 +1,5 @@
package com.lizongying.mytv
-import android.content.Context
-import android.net.ConnectivityManager
-import android.net.Network
import android.os.Build
import android.os.Bundle
import android.os.Handler
@@ -34,7 +31,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
private val playerFragment = PlayerFragment()
private val errorFragment = ErrorFragment()
- // private val loadingFragment = LoadingFragment()
+ private val loadingFragment = LoadingFragment()
private val mainFragment = MainFragment()
private val infoFragment = InfoFragment()
private val channelFragment = ChannelFragment()
@@ -86,7 +83,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
// }
if (savedInstanceState == null) {
- supportFragmentManager.beginTransaction()
+ val transaction = supportFragmentManager.beginTransaction()
.add(R.id.main_browse_fragment, playerFragment)
.add(R.id.main_browse_fragment, errorFragment)
// .add(R.id.main_browse_fragment, loadingFragment)
@@ -96,9 +93,14 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
.add(R.id.main_browse_fragment, mainFragment)
.hide(mainFragment)
.hide(errorFragment)
-// .hide(loadingFragment)
- .hide(timeFragment)
- .commit()
+
+ if (!SP.time) {
+ transaction.hide(timeFragment)
+ } else {
+ transaction.show(timeFragment)
+ }
+
+ transaction.commitNow()
}
gestureDetector = GestureDetector(this, GestureListener())
@@ -120,9 +122,6 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
// Log.i(TAG, "net ${Build.VERSION.SDK_INT}")
// ready++
// }
-
- showTime()
- mainFragment.changeMenu()
}
fun showInfoFragment(tvViewModel: TVViewModel) {
@@ -152,6 +151,14 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
.commit()
}
+ fun showLoadingFragment() {
+ showFragment(loadingFragment)
+ }
+
+ fun hideLoadingFragment() {
+ hideFragment(loadingFragment)
+ }
+
fun showPlayerFragment() {
if (playerFragment.isVisible) {
return
@@ -222,8 +229,6 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
fun settingDelayHide() {
handler.removeCallbacks(hideSetting)
handler.postDelayed(hideSetting, delayHideSetting)
- showTime()
- mainFragment.changeMenu()
}
fun settingNeverHide() {
@@ -342,14 +347,12 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
return
}
- Log.i(TAG, "settingFragment ${settingFragment.isVisible}")
- if (!settingFragment.isVisible) {
- settingFragment.show(supportFragmentManager, "setting")
- settingDelayHide()
- } else {
- handler.removeCallbacks(hideSetting)
- settingFragment.dismiss()
+ if (settingFragment.isVisible) {
+ return
}
+
+ settingFragment.show(supportFragmentManager, TAG)
+ settingDelayHide()
}
private val hideSetting = Runnable {
@@ -421,6 +424,11 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}, 2000)
}
+ private fun active() {
+ if (settingFragment.isVisible) {
+ settingDelayHide()
+ }
+ }
fun onKey(keyCode: Int): Boolean {
Log.i(TAG, "keyCode $keyCode")
@@ -511,6 +519,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}
KeyEvent.KEYCODE_ENTER -> {
+ active()
switchMainFragment()
}
@@ -519,6 +528,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}
KeyEvent.KEYCODE_DPAD_UP -> {
+ active()
channelUp()
}
@@ -527,6 +537,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}
KeyEvent.KEYCODE_DPAD_DOWN -> {
+ active()
channelDown()
}
@@ -535,6 +546,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}
KeyEvent.KEYCODE_DPAD_LEFT -> {
+ active()
if (mainFragment.isHidden && !settingFragment.isVisible) {
switchMainFragment()
return true
@@ -542,6 +554,7 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
}
KeyEvent.KEYCODE_DPAD_RIGHT -> {
+ active()
if (mainFragment.isHidden && !settingFragment.isVisible) {
showSetting()
return true
@@ -570,6 +583,12 @@ class MainActivity : FragmentActivity(), Request.RequestListener {
override fun onResume() {
Log.i(TAG, "onResume")
super.onResume()
+ }
+
+ override fun onResumeFragments() {
+ super.onResumeFragments()
+ mainFragment.changeMenu()
+
if (!mainFragment.isHidden) {
handler.postDelayed(hideMain, delayHideMain)
}
diff --git a/app/src/main/java/com/lizongying/mytv/MainFragment.kt b/app/src/main/java/com/lizongying/mytv/MainFragment.kt
index 7c196b6c..1e19168f 100644
--- a/app/src/main/java/com/lizongying/mytv/MainFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/MainFragment.kt
@@ -1,7 +1,5 @@
package com.lizongying.mytv
-import android.content.res.Resources
-import android.graphics.Color
import android.os.Bundle
import android.util.Log
import android.view.KeyEvent
@@ -162,8 +160,10 @@ class MainFragment : Fragment(), CardAdapter.ItemListener {
if (tvViewModel.errInfo.value == "") {
(activity as? MainActivity)?.showPlayerFragment()
(activity as? MainActivity)?.hideErrorFragment()
+ (activity as? MainActivity)?.hideLoadingFragment()
} else {
(activity as? MainActivity)?.hidePlayerFragment()
+ (activity as? MainActivity)?.hideLoadingFragment()
(activity as? MainActivity)?.showErrorFragment(tvViewModel.errInfo.value.toString())
}
}
diff --git a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
index 1fc1a328..bdd94d9b 100644
--- a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
@@ -1,5 +1,6 @@
package com.lizongying.mytv
+import android.os.Build
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
@@ -23,6 +24,11 @@ class SettingFragment : DialogFragment() {
dialog?.window?.apply {
addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN)
decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
+ attributes.layoutInDisplayCutoutMode =
+ WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
+ setAttributes(attributes)
+ }
}
}
diff --git a/app/src/main/java/com/lizongying/mytv/TimeFragment.kt b/app/src/main/java/com/lizongying/mytv/TimeFragment.kt
index c92f9e81..93738d23 100644
--- a/app/src/main/java/com/lizongying/mytv/TimeFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/TimeFragment.kt
@@ -1,6 +1,5 @@
package com.lizongying.mytv
-import android.content.res.Resources
import android.os.Bundle
import android.os.Handler
import android.view.LayoutInflater
@@ -36,10 +35,18 @@ class TimeFragment : Fragment() {
binding.time.layoutParams = layoutParams
binding.content.textSize = application.px2PxFont(binding.content.textSize)
+ binding.channel.textSize = application.px2PxFont(binding.channel.textSize)
binding.main.layoutParams.width = application.shouldWidthPx()
binding.main.layoutParams.height = application.shouldHeightPx()
+ if (SP.time) {
+ handler.removeCallbacks(showRunnable)
+ handler.postDelayed(showRunnable, 0)
+ } else {
+ handler.removeCallbacks(showRunnable)
+ }
+
(activity as MainActivity).fragmentReady(TAG)
return binding.root
}
diff --git a/app/src/main/res/layout/channel.xml b/app/src/main/res/layout/channel.xml
index d0c25b61..f08da0ef 100644
--- a/app/src/main/res/layout/channel.xml
+++ b/app/src/main/res/layout/channel.xml
@@ -1,5 +1,6 @@
-
+ android:layout_marginTop="15dp"
+ android:layout_marginEnd="170dp"
+ android:gravity="end|bottom" >
-
+ android:textSize="40sp"
+ tools:text="99"
+ android:layout_alignBaseline="@+id/time"/>
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/setting.xml b/app/src/main/res/layout/setting.xml
index bb7dabb3..f0a29910 100644
--- a/app/src/main/res/layout/setting.xml
+++ b/app/src/main/res/layout/setting.xml
@@ -40,7 +40,6 @@
android:id="@+id/check_version"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginEnd="10dp"
android:textSize="14sp"
android:text="@string/check_version"
/>
diff --git a/app/src/main/res/layout/time.xml b/app/src/main/res/layout/time.xml
index e8c3540c..e4cb06de 100644
--- a/app/src/main/res/layout/time.xml
+++ b/app/src/main/res/layout/time.xml
@@ -1,5 +1,6 @@
-
+ android:layout_marginTop="15dp"
+ android:layout_marginEnd="50dp"
+ android:gravity="end|bottom" >
+
-
+ android:textSize="32sp"
+ tools:text="12:34" />
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 228e008c..c03be020 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -6,5 +6,5 @@
开机自启
频道列表采用网格样式
显示时间
- 退出
+ 退出应用
\ No newline at end of file