android 标题栏进度圈使用方法,Android 自定义标题栏 显示网页加载进度的方法实例...

这阵子在做Lephone的适配,测试组提交一个bug:标题栏的文字较长时没有显示完全,其实这并不能算个bug,并且这个问题在以前其他机器也没有出现,只是说在Lephone的这个平台上显示得不怎么美观,因为联想将原生的标题栏UI进行了修改。修改的过程中遇到了一个难题,系统自带的那个标题栏进度总能够到达100%后渐退,但是我每次最后到100%那一段显示不全,尝试了用线程程序死了卡主了不说,还是一样的效果,后来同事一句话提醒了我用动画。确实是这样我猜系统的也是这样实现的,等进度到达100%后,用动画改变它的透明度就ok了。

实现的效果:标题栏显示网页标题并且滚动,并且用进度条显示网页的加载进度(重新自定义标题栏,lephone修改后的都带有一个返回按钮,并且标题文本和进度条是Frame布局的不怎么好看)。

1、首先定义一个RelativeLayout布局文件 broser_custom_title.xml (AlwaysMarqueeTextView这个类重写了TextView,实现一个跑马灯的效果,网上能够找到

xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:id="@+id/tvtitle"

android:layout_width="fill_parent"

android:layout_height="wrap_content" android:focusableInTouchMode="true"

android:singleLine="true" android:ellipsize="marquee"

android:focusable="false" android:marqueeRepeatLimit="marquee_forever"

android:layout_centerVertical="true"/>

android:layout_width="fill_parent" android:layout_height="2sp"

style="?android:attr/progressBarStyleHorizontal"

android:visibility="gone" android:layout_alignParentBottom="true"

>

2、继承WebChromeClient,重写onProgressChanged和onReceivedTitle事件(进度条加载完成后使用动画渐退)

public class MyWebChromeClient extends WebChromeClient {

private Activity activity;

private ProgressBar pb;

private TextView tvtitle;

public MyWebChromeClient(Activity activity) {

this.activity = activity;

}

Animation animation;

@Override

public void onProgressChanged(WebView view, int newProgress) {

pb=(ProgressBar)activity.findViewById(R.id.pb);

pb.setMax(100);

if(newProgress<100){

if(pb.getVisibility()==View.GONE)

pb.setVisibility(View.VISIBLE);

pb.setProgress(newProgress);

}else{

pb.setProgress(100);

animation=AnimationUtils.loadAnimation(activity, R.anim.animation);

// 运行动画 animation

pb.startAnimation(animation);

// 将 spinner 的可见性设置为不可见状态

pb.setVisibility(View.INVISIBLE);

}

super.onProgressChanged(view, newProgress);

}

@Override

public void onReceivedTitle(WebView view, String title) {

tvtitle=(TextView)activity.findViewById(R.id.tvtitle);

tvtitle.setText(title);

super.onReceivedTitle(view, title);

}

}

3、进度条的动画样式 res/anim/animation.xml

4、码设置自定义的标题栏

private WebView browser;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

getWindow().requestFeature(Window.FEATURE_CUSTOM_TITLE);

setContentView(R.layout.main);

getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.broser_custom_title);

browser = (WebView) findViewById(R.id.my_browser);

// currentWebView=browser;

browser.setWebChromeClient(new MyWebChromeClient(Main.this));

browser.loadUrl("https://www.jb51.net");

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526257.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android7.0uri,整理: 解决Android7.0以上文件报FileUriExposedException问题

最近项目Android编译版本改为targetSdkVersion26, 之前隐藏的版本问题暴露出来, 尤其是文件第三方打开及Apk更新问题,这里记录下7.0以后文件相关问题问题描述:安装apk的代码一般写法如下&#xff0c;网上随处可以搜到:public static void installApk(Context context, File fil…

android+使用bmob冲突,bmob开发android遇到的问题

昨天尝试使用bmob&#xff0c;但是在使用文件对象时候遇到问题&#xff0c;但是他们的工作人员周末没上班&#xff0c;问题没解决&#xff0c;昨晚一晚没睡好&#xff0c;之后大清早的来求帮助了。源码如下&#xff1a;String path Environment.getExternalStorageDirectory()…

第一台鸿蒙手机是,第一台预装鸿蒙OS的手机终于登场。

原标题&#xff1a;第一台预装鸿蒙OS的手机终于登场。千呼万唤始出来&#xff0c;之前大家期待了很久的鸿蒙OS它终于真正到来了。据工业和信息化部公布的消息&#xff0c;搭载鸿蒙OS的新款华为手机正式入网了&#xff0c;这也将是华为第一台预装鸿蒙OS的新款手机。但令人完全没…

linux sed 正则转义,Linux运维云升笔记 (一)正则表达式以及文档编辑器sed

正则表达式概述使用单个字符来描述、匹配一系列符合某个语句规则的字符串&#xff0c;由普通字符与特殊字符组成&#xff0c;正则表达式广泛使用在脚本编程、文本编辑器中。正则表达式简写为regex、regexp、RE。再大多数语言当中正则表达式都被包括在两个正斜杠当中“/”正则表…

html 自动切换tab栏,html 实现tab切换的示例代码

tab切换在项目中也算是常用技术&#xff0c;一般实现tab切换都用js或者jq实现&#xff0c;今天介绍两种只用css实现tab切换方法&#xff1a;方法一&#xff1a;原理&#xff1a;通过label标签的关联属性和input的单选类型实现相应div的显示1.创建一个类名为wrap的div当作容器2.…

html匹配属性正则表达式,正则表达式匹配html标签的属性值

html">正则表达式是做文本解析工作必不可少的技能。如Web服务器日志分析&#xff0c;网页前端开发等。很多高级文本编辑器都支持正则表达式的一个子集&#xff0c;熟练掌握正则表达式&#xff0c;经常能够使你的一些工作事半功倍。例如统计代码行数&#xff0c;只需一个…

同一个html页面中两个area,HTML中的map和area标签

1. 标签介绍&#xff1a;(1)map标签&#xff1a; 该标签是指图片的映射&#xff0c;也就是说一张可以点击的图片的映射&#xff1b;属性介绍&#xff1a;<1> id: 中的 usemap 属性可引用 中的 id 或 name 属性(取决于浏览器)<2>name:同上说明&#xff1a;不同的浏览…

html 响应式布局 九宫格,两种方法实现响应式九宫格布局

html布局以及基础样式代码如下响应式九宫格html, body { color:#222; margin:0; padding: 0; text-decoration: none; }ul { list-style: none outside none; margin:0; padding: 0; }body { background-color:#eee; }ul li:nth-child(8n1) {background-color:#36A1DB}ul li:nt…

html跳转网页为什么网页无法访问,朋友的网站被网址跳转,导致官网无法正常访问...

原标题&#xff1a;朋友的网站被网址跳转&#xff0c;导致官网无法正常访问昨天中午接到客户的一个电话&#xff0c;告知其某个网站打开之后直接跳转到其他的网站。客户的这个网站&#xff0c;不是我们做的&#xff0c;但是关系一直保持的不错&#xff0c;所以就顺带给他解决一…

2021中卫一中高考成绩查询,2021年宁夏高中排名及分数线 高考本科升学率排行榜...

2019年宁夏高中排名及分数线 高考本科升学率排行榜如何判断一所高中学校的优劣好坏&#xff0c;人们往往从这几个方面来看&#xff1a;高考/竞赛成绩、生源质量、师资力量、软硬件设施、管理水平等。高考成绩因为最直接&#xff0c;最广为关注&#xff0c;但是很多时候未免有失…

微观经济学如何计算机会成本,【微观经济学】机会成本

概念&#xff1a;机会成本机会成本是指你做了某项选择&#xff0c;而不得不因此失去的其他利益。比如你选择了A&#xff0c;就必须放弃B&#xff0c;B就是A的机会成本。对企业来说&#xff0c;最优方案的机会成本&#xff0c;就是次优方案可能带来的收益。机会成本是听起来很简…

如何注释python中html,Python在HTML中提取带注释的代码,python,html,被

假设被注释代码段如下&#xff1a;html""""""如果直接对此代码段使用pyquery转换并提取from pyquery import PyQuery as pqresponse pq(html)("div.forum_content")print(response)会报错&#xff1a;lxml.etree.ParserError: Docume…

基于蓝墨云平台的计算机教学,基于蓝墨云班课的中职计算机“分层教学”模式探究...

崔月娇一、教学现状概述一方面&#xff0c;我校是面向全国招生&#xff0c;部分欠发达地区的学生由于资源配置导致计算机基础相当薄弱&#xff0c;而来自发达地区的学生早早地接触了计算机&#xff0c;部分计算机基础操作已相当熟练&#xff0c;学生的计算机水平参差不齐&#…

计算机专业和机电专业的区别,12届计算机专业和机电专业.doc

12届计算机专业和机电专业12届计算机1班、12届机电1、2、3、4班《计算应用基础》月考试题学号&#xff1a;_________ 姓名&#xff1a;_________ 班级&#xff1a;_____________考试说明&#xff1a;1、考试时间90分钟2、总分&#xff1a;100分3、应用的班级有12计算机1班、12届…

计算机基础知识上机操作excer,《计算机应用基础》Excel上机操作练习题.doc

《计算机应用基础》Excel上机操作练习题.doc《计算机应用基础》Excel上机操作练习题第1题 建立一工作簿&#xff0c;并作如下操作1&#xff0e; 在Sheet工作表中输入如下内容&#xff1a;在A1单元格中输入&#xff1a;中华人民共和国以数字字符的形式在B1单元格…

angularjs html 缓存,如何删除使用AngularJS的HTML中的浏览器缓存?

如何删除HTML浏览器的缓存&#xff0c;它使用AngularJS&#xff1f;我在我的index.html中使用了以下内容。我也尝试在我的app.js中使用$templateCache&#xff0c;但没用。如何删除使用AngularJS的HTML中的浏览器缓存&#xff1f;app.config([$routeProvider, function($routeP…

dede列表页if判断输出html,首页、列表页调用文章body内容的两种方法

随着源码的开放性&#xff0c;很多SEOER对页面的要求也越来越复杂多样性&#xff0c;很多时候&#xff0c;织梦系统的原有功能并不能满足seoer的页面布置要求&#xff0c;这就需要继续开发页面&#xff0c;做更多的功能调用。今天徐金华SEO给大家讲的是关于首页、列表页调用文章…

计算机如何驱动无线网络,win7如何安装无线网卡驱动 安装无线网卡驱动的方法...

今天告诉大家win7安装无线网卡驱动&#xff1f;无线网卡就是既能接受无线信号&#xff0c;又能发射无线信号的网络设备&#xff0c;但无线网卡就需要安装无线网卡驱动。许多新手用户不懂安装步骤&#xff0c;其实安装方法简单&#xff0c;接下来给大家说明一下win7安装无线网卡…

闽江师范专科高等学校计算机专业在哪个校区,闽江师范高等专科学校有几个校区(官网发布数据)...

闽江师范高等专科学校有几个校区一直都是大家关注的问题之一&#xff0c;根据闽江师范高等专科学校官方网站的学校简介&#xff0c;我们将闽江师范高等专科学校一共有多少个校区的资料缓存到本页&#xff0c;给需要了解的同学参考&#xff0c;最新校区新增&#xff0c;校区合并…

计算机网络技术俄罗斯方块,《The Tetris Effect》:这本新书讲述了俄罗斯方块的传奇故事...

原标题&#xff1a;《The Tetris Effect》:这本新书讲述了俄罗斯方块的传奇故事在游戏发展史上&#xff0c;俄罗斯方块是个传奇。没有一款游戏像它一样影响深远&#xff0c;受到全球不同人的喜爱。在即将出版的《The Tetris Effect》(俄罗斯方块效应)中&#xff0c;科技记者 Da…