当前位置: 首页 > news >正文

网站页面布局优化怎么利用代码做网站

网站页面布局优化,怎么利用代码做网站,app程序开发制作公司,赣州网络营销项目管理平台 涉及主控: RK3566 Android: 11/13 问题 在使用GLSurfaceView播放视频的过程中, 增加了一个播放控制面板, 覆盖在视频上方. 默认隐藏setVisibility(View.INVISIBLE);点击屏幕再显示出来. 然而, 在RK3566上这个简单的功能却无法正常工作. 通过缩小视频窗口可以看到, 实际… 平台 涉及主控: RK3566 Android: 11/13 问题 在使用GLSurfaceView播放视频的过程中, 增加了一个播放控制面板, 覆盖在视频上方. 默认隐藏setVisibility(View.INVISIBLE);点击屏幕再显示出来. 然而, 在RK3566上这个简单的功能却无法正常工作. 通过缩小视频窗口可以看到, 实际UI是已经展示, 但是被GLSurfaceView 覆盖了. 在Pixel Android 13 上不存在这个问题 如上图 红色 框选区域, 显示不出来. 分析 后续测试发现问题复现需要2个条件: 覆盖层默认布局设置了隐藏: android:visibilityinvisible布局中使用了SurfaceView / GLSurfaceView 参考代码: 布局 ?xml version1.0 encodingutf-8? RelativeLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:backgroundcolor/blackandroid:idid/rlRootRelativeLayout android:idid/rlScreenandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent/RelativeLayout android:idid/rlMenuandroid:layout_width480dpandroid:layout_height320dpandroid:layout_alignParentBottomtrueandroid:layout_centerHorizontaltrueandroid:layout_marginBottom100dpandroid:visibilityinvisibleandroid:backgrounddrawable/selector_beauty_window_bgTextViewandroid:textOverlay Menuandroid:layout_centerInParenttrueandroid:layout_widthwrap_contentandroid:layout_heightwrap_content//RelativeLayout /RelativeLayoutActivity文件 import android.media.MediaPlayer; import android.os.Bundle; import android.util.Log; import android.view.SurfaceView; import android.view.TextureView; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.RelativeLayout;import com.ansondroider.acore.BaseActivity; import com.ansondroider.acore.media.VideoPlayer; import com.ansondroider.apitester.gl.GLVideoView;import java.io.IOException;public class GlMenuOverlay extends BaseActivity {MediaPlayer mmp;GLVideoView glView;RelativeLayout rlScreen;RelativeLayout rlMenu;boolean playVideo false;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.test_gl_menu_overlay);findViewById(R.id.rlRoot).setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {showOrHideMenu();}});rlScreen (RelativeLayout) findViewById(R.id.rlScreen);rlMenu (RelativeLayout) findViewById(R.id.rlMenu);RelativeLayout.LayoutParams lp new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT);if(playVideo) {glView new GLVideoView(this);rlScreen.addView(glView, lp);}/*ImageView iv new ImageView(this);iv.setImageResource(R.mipmap.ic_launcher);iv.setScaleType(ImageView.ScaleType.FIT_XY);RelativeLayout.LayoutParams lp new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT);rlScreen.addView(iv, lp);*/VideoPlayer player new VideoPlayer();SurfaceView texture new SurfaceView(this);rlScreen.addView(texture, lp);player.setDisplay(texture);player.setDataSource(/sdcard/Movies/10012271.mp4);player.play();}void showOrHideMenu(){Log.d(TAG, showOrHideMenu);rlMenu.setVisibility(rlMenu.getVisibility() View.VISIBLE ? View.INVISIBLE : View.VISIBLE);}Overrideprotected void onStart() {super.onStart();if(playVideo) {mmp new MediaPlayer();try {mmp.setDataSource(/sdcard/Movies/10012271.mp4);mmp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {Overridepublic void onPrepared(MediaPlayer mediaPlayer) {glView.onVideoPrepared(mediaPlayer);}});mmp.prepare();mmp.setLooping(true);} catch (IOException e) {e.printStackTrace();}}}Overrideprotected void onStop() {super.onStop();if(mmp ! null){mmp.stop();mmp.release();}} } 解决 在需要展示覆盖层的时候调用一次requestLayout, 比如: void showOrHideMenu(){Log.d(TAG, showOrHideMenu);rlMenu.setVisibility(rlMenu.getVisibility() View.VISIBLE ? View.INVISIBLE : View.VISIBLE);////((RelativeLayout)findViewById(R.id.rlRoot)).requestLayout();rlMenu.requestLayout();}调用父容器 rlRoot 或 rlMenu本身 的requestLayout 都可以 参考 Android自定义GLSurfaceView SurfaceView、GLSurfaceView、SurfaceTexture、TextureView简单对比
http://www.hkea.cn/news/14538568/

相关文章:

  • 关键词分析工具网站伊春网站建设
  • 怎么样做贷款网站做网站的一般都包维护吗
  • 做网站网页需要多久北京海淀房管局网站
  • 嘉兴网站制作案例山东阳信建设局网站
  • 网站点击软件排名企业网站优化应该怎么做
  • 免费做简历的软件网站网站推广工具 刷链接
  • 佛山建站模板厂家什么网站建设
  • 呼和浩特企业网站大型网站开发方案
  • 淄博网站建设公司傻瓜建网站
  • 布吉网站设计做响应式网站字体需要响应么
  • 微信开放平台 网站开发西宁做网站的有吗
  • 怎样快速仿做网站动漫与游戏制作专业有前途吗
  • 温州服务网站建设西安网站开发公司排行榜
  • 网站建设來选宙斯站长网站开发包括哪些工作
  • 衡水移动网站建设报价济南免费建站
  • 怎么免费开网站数商云网络科技
  • 长沙公司网站高端网站建设wordpress破解文章密码
  • 辽宁鞍山建设工程信息网站网站创意策划方案
  • 成都建设规划网站济南哪有做网站的
  • 休闲咖啡厅网站开发目标网络公司名字四个字
  • 品牌微信网站建设网络及it维护外包
  • 建设网站的目的饮食类计算机网站开发项目
  • 微信引流推广网站建设挂马网站教程
  • 免费建造网站商城网站建设怎么建设
  • 网站找到后台了 如何破解账号 密码wordpress数据改网址
  • 网站制作和app制作wordpress标题设置方法
  • 邯郸网站建设费用做菠菜网站有没有被骗的
  • 郑州铭功路网站建设企业做什么需要有网站
  • 四川省建设厅的注册中心网站如何做彗聪网站呢
  • 呼和浩特可以做网站的公司免费wordpress 模板