Android中关于ScrollView中有视频播放器VideoView时问题的总结

本文总结了在Android ScrollView中使用VideoView时遇到的横竖屏切换问题,包括播放器高度无效、横屏切竖屏后ScrollView位置恢复、滚动时暂停和恢复播放,以及ListView初始位置问题的解决方案,提供了相关代码示例。
摘要由CSDN通过智能技术生成

1.横竖屏切换问题
问题描述:
网上很多封装的视频播放器,也有横竖屏切换,但是发现在Scrollview中时横屏的高度会无效,因为Scrollview是可滚动控件
解决方案:
1)在切换前记录原始播放器的高度传给播放器如(videoPlayer),并告诉影响播放器全屏显示的其它控件列表(List)和播放器所在的父控件
2)竖屏切横屏,设置播放器的LayoutParams的宽高为屏幕的高宽,Gone掉其它控件,播放器的父控件的margin和padding设置为0
3)横屏切竖屏,恢复保存的原始宽高,显示其它控件,恢复父控件的margin和padding
实例代码如下:

/**
 * 竖屏转横屏
 */
public void portrait2landscape(boolean isAuto) {
    changeScreen(isFullScreen);
    ViewGroup.LayoutParams params = this.getLayoutParams();
    params.width = DisplayUtil.getScreenHeight(mContext);
    params.height = DisplayUtil.getScreenWidth(mContext);
    this.setLayoutParams(params);
    if (!isAuto) {
        //强制横屏
        mContext.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        mContext.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    }
    changeScreenBtn.setImageResource(R.drawable.ic_player_suoxiao);
    rlTitile.setVisibility(VISIBLE);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值