请问一下Android中VideoView的问题

xubo115 2012-03-03 07:10:42
Android的VideoView中默认会有控制条

可以显示进度和拖动的

但是这个进度条会默认在1秒后自动消失,需要点击事件来触发

怎么让这个控制条一直显示呢?
...全文
347 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
傲慢的上校 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dr8737010 的回复:]

楼上的方法比较简单,hide方法就是隐藏控制栏的
[/Quote]直接屏蔽hide方法试一下。。。
BadPattern 2012-03-06
  • 打赏
  • 举报
回复
楼上的方法比较简单,hide方法就是隐藏控制栏的
yuhuaijun 2012-03-05
  • 打赏
  • 举报
回复
也可以尝试重写一下MediaController中的hide()方法,什么也不做,直接返回
xubo115 2012-03-05
  • 打赏
  • 举报
回复
谢谢楼上了,我再研究下
libRA_kin 2012-03-04
  • 打赏
  • 举报
回复
看了下源码
有这么个方法:

private boolean isInPlaybackState() {
return (mMediaPlayer != null &&
mCurrentState != STATE_ERROR &&
mCurrentState != STATE_IDLE &&
mCurrentState != STATE_PREPARING);
}



然后有几个地方调用到:

public void setMediaController(MediaController controller) {
if (mMediaController != null) {
mMediaController.hide();
}
mMediaController = controller;
attachMediaController();
}

private void attachMediaController() {
if (mMediaPlayer != null && mMediaController != null) {
mMediaController.setMediaPlayer(this);
View anchorView = this.getParent() instanceof View ?
(View)this.getParent() : this;
mMediaController.setAnchorView(anchorView);
mMediaController.setEnabled(isInPlaybackState());
}
}

@Override
public boolean onTouchEvent(MotionEvent ev) {
if (isInPlaybackState() && mMediaController != null) {
toggleMediaControlsVisiblity();
}
return false;
}




在onTouchEvent 这个方法里也有 我想也不是说1秒就没有了 这个要看情况 ,我记得是触摸一下就消失再触摸一下又显示的 你看看源码将onTouchEvent 中的方法重写看看 这样可以能一直显示

80,348

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧