From f7eebb3f7a2417266523dfa0162f6f6cd652338a Mon Sep 17 00:00:00 2001 From: Li ZongYing Date: Thu, 25 Jan 2024 12:21:16 +0800 Subject: [PATCH] channel allow one num --- .../com/lizongying/mytv/ChannelFragment.kt | 34 ++++++++++--------- .../java/com/lizongying/mytv/MainFragment.kt | 2 ++ 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt b/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt index 493cc78..1154200 100644 --- a/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt +++ b/app/src/main/java/com/lizongying/mytv/ChannelFragment.kt @@ -2,7 +2,6 @@ package com.lizongying.mytv import android.os.Bundle import android.os.Handler -import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -16,6 +15,7 @@ class ChannelFragment : Fragment() { private val handler = Handler() private val delay: Long = 3000 + private var channel = 0 override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, @@ -28,37 +28,39 @@ class ChannelFragment : Fragment() { } fun show(tvViewModel: TVViewModel) { + handler.removeCallbacks(hideRunnable) + handler.removeCallbacks(playRunnable) binding.channelContent.text = tvViewModel.id.value.toString() - handler.removeCallbacks(removeRunnable) view?.visibility = View.VISIBLE - handler.postDelayed(removeRunnable, delay) + handler.postDelayed(hideRunnable, delay) } fun show(channel: String) { + this.channel = "${binding.channelContent.text}$channel".toInt() + handler.removeCallbacks(hideRunnable) + handler.removeCallbacks(playRunnable) if (binding.channelContent.text == "") { binding.channelContent.text = channel - handler.removeCallbacks(removeRunnable) view?.visibility = View.VISIBLE - handler.postDelayed(removeRunnable, delay) + handler.postDelayed(playRunnable, delay) } else { - val ch = "${binding.channelContent.text}$channel".toInt() - (activity as MainActivity).play(ch) - binding.channelContent.text = "" - view?.visibility = View.GONE + handler.postDelayed(playRunnable, 0) } } - override fun onResume() { - super.onResume() - handler.postDelayed(removeRunnable, delay) - } - override fun onPause() { super.onPause() - handler.removeCallbacks(removeRunnable) + handler.removeCallbacks(hideRunnable) + handler.removeCallbacks(playRunnable) } - private val removeRunnable = Runnable { + private val hideRunnable = Runnable { + binding.channelContent.text = "" + view?.visibility = View.GONE + } + + private val playRunnable = Runnable { + (activity as MainActivity).play(channel) binding.channelContent.text = "" view?.visibility = View.GONE } diff --git a/app/src/main/java/com/lizongying/mytv/MainFragment.kt b/app/src/main/java/com/lizongying/mytv/MainFragment.kt index 9c36ce8..084151f 100644 --- a/app/src/main/java/com/lizongying/mytv/MainFragment.kt +++ b/app/src/main/java/com/lizongying/mytv/MainFragment.kt @@ -255,6 +255,8 @@ class MainFragment : BrowseSupportFragment() { this.itemPosition = itemPosition tvListViewModel.setItemPosition(itemPosition) tvListViewModel.getTVViewModel(itemPosition)?.changed() + } else { + Toast.makeText(context, "频道不存在", Toast.LENGTH_SHORT).show() } } }