使用PlaybackOverlayFragment隐藏当前时间

时间:2016-09-13 15:01:09

标签: android android-layout android-tv

我正在为AndroidTV编写一个应用程序来观看VOD视频和直播。目前,对于播放器控制器,我正在使用PlaybackOverlayFragment和VOD视频没有问题。我在Live Stream中隐藏当前时间只是一个小问题。有没有办法隐藏TextView?我注意到将“总时间”设置为< 0 ViewHolder中的PlaybackControlsPresenter设置为GONE mTotalTimemProgressBar。是否有可能以简单的方式对mCurrentTime做同样的事情?

1 个答案:

答案 0 :(得分:2)

您可以通过其ID this.mCurrentTime = (TextView)rootView.findViewById(id.current_time);直接访问该视图,然后将其上的可见性设置为View.INVISIBLE。您可以在PlaybackOverlayFragmentonCreateView() onStart()中执行此操作。更新leanback库时,这可能会中断,但这样可以使用最少的代码行为您提供最大的控制权。

如果你想沿着兔子洞走下去:控件行视图在PlaybackControlsRowPresenter这里设置:mPlaybackControlsPresenter = new PlaybackControlsPresenter(R.layout.lb_playback_controls);

您也可以覆盖该布局文件(我认为这是leanback团队推荐的)并根据您的喜好自定义您的布局(只要ID保持不变)。或者您也可以覆盖当前时间文本视图的样式:

<style name="Widget.Leanback.PlaybackControlsTimeStyle">
    <item name="android:textAlignment">viewStart</item>
    <item name="android:textAppearance">@style/TextAppearance.Leanback.PlaybackControlsTime</item>
</style>

但这会影响两种时间风格(当前和总数)。

基本上,如果您想要控制库存leanback组件,您需要覆盖某些。您选择覆盖的内容取决于您需要更改的数量。