-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
界面需求
有2种布局,区别在于一个有顶部的native标题栏一个没有全透明,剩余的下方均为webview。
透明(无)标题栏(上面蓝色标题栏是h5不是native的):

- 整体高度64dp,上方半透明沉浸式时间电源栏android为23dp,包涵在64dp中。
- 是否使用标题栏取决于transparentTitle参数是否为"true"(为方便与js交互,所有参数均默认string类型)。
- 有标题栏时,左侧的返回按钮是否显示取决于参数hideBackButton是否为"true"。
- 返回按钮图片:https://github.com/uyutech/android/blob/master/app/src/main/res/drawable/left_arrow.png
- 总高宽28dp,margin左右5dp,padding上下4dp,padding左右9dp。
- 点下返回按钮时,并不直接返回,而是调用jsBridge的trigger发出一个back事件,后续逻辑和BackPlugin相关:https://github.com/uyutech/android/blob/master/app/src/main/java/cc/circling/X5Activity.java#L224
- 标题栏颜色垂直从上到下渐变:#8BC4E7到#83BDE5
- 标题栏中间标题水平垂直居中对齐,有2行,主标题和副标题,均可为空,当其中一个为空时仍然保持垂直居中
- 主标题16dp,副标题10dp,均为#FFF
- 有副标题时:
- 标题栏右侧按钮显示取决于参数showOptionMenu是否为"true",内容来自于参数optionMenu
- 宽24dp,字体12dp,右对齐,最多2个字宽度
-
其它容器参数
__url__,容器的webview加载的页面地址,为空时加载"about:blank"titleBgColor,#AARRGGBB或#RRGGBB,标题栏背景色backgroundColor,#AARRGGBB或#RRGGBB,除了标题栏外webview部分背景色readTitle,"true"时读取webview的页面标题设置在title上showOptionMenu,"true"时显示右上角选项optionMenu,右上角选项文字- webview的ua中添加
app/ZhuanQuan/${VERSION}标示
-
其它逻辑
- 当加载的__url__是http://h5.circling.cc 域名时,且类型后缀为html/jpg/jpeg/gif/png/ico/css/js,均拦截加载本地文件
- 加载本地html文件时,注入jsBridge文件:https://github.com/uyutech/android/blob/master/app/src/main/assets/h5_bridge.js ,android时机为webview的readTitle事件和pageFinish事件各注入一次
- 当容器从前台运行到后台暂停时js触发
pause事件,android为onStop时机 - 当容器从后台暂停恢复到前台运行时js触发
resume事件,android为onStart时机


