欢迎来到天天文库
浏览记录
ID:6493884
大小:48.50 KB
页数:7页
时间:2018-01-15
《android标题栏titlebar全攻略》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、【IT168资讯】很多细心的网友发现Android浏览器的标题栏TitleBar的功能比较多,细心的网友在查看Browser时会发现,从左到右依次为网站图标(favicon)、标题、最右边的动画进度条(圆圈)、背景进度条(和前面的不在一层),今天我们就一起来看看Android标题栏高级实现方法。 在AndroidBrowser程序中标题栏是自绘的,TitleBar类继承于线性布局LinearLayout类,通过LayoutInflater调用layout中的xml布局文件实现相关方法 publicclassTitleBarexte
2、ndsLinearLayout{ privateTextViewmTitle;//标题文字 privateDrawablemCloseDrawable; privateImageViewmRtButton; privateDrawablemCircularProgress;//圆圈进度指示 privateProgressBarmHorizontalProgress;//水平进度条 privateImageViewmFavicon;//网站图标 privateImageViewmLockIcon; privateDraw
3、ablemStopDrawable;//停止状态的图标 privateDrawablemBookmarkDrawable;//是一个书签的图标 privatebooleanmInLoad; privateBrowserActivitymBrowserActivity; privateDrawablemGenericFavicon;//如果站点没有favicon.ico时显示的默认图标 privateintmIconDimension; privateViewmTitleBg;//文字的背景 privateMyHandle
4、rmHandler; privatestaticintLONG_PRESS=1; publicTitleBar(BrowserActivitycontext){ super(context,null); mHandler=newMyHandler(); LayoutInflaterfactory=LayoutInflater.from(context); factory.inflate(R.layout.title_bar,this);//从xml文件创建,android123提示大家,该文件的详细内容在本段代码最下方。
5、 mBrowserActivity=context; mTitle=(TextView)findViewById(R.id.title); mTitle.setCompoundDrawablePadding(5); mTitleBg=findViewById(R.id.title_bg); mLockIcon=(ImageView)findViewById(R.id.lock); mFavicon=(ImageView)findViewById(R.id.favicon); mRtButton=(ImageView)fin
6、dViewById(R.id.rt_btn); Resourcesresources=context.getResources(); mCircularProgress=(Drawable)resources.getDrawable(com.android.internal.R.drawable.search_spinner); mIconDimension=(int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,20f,resources.getDisplayMet
7、rics()); mCircularProgress.setBounds(0,0,mIconDimension,mIconDimension); mHorizontalProgress=(ProgressBar)findViewById(R.id.progress_horizontal); mGenericFavicon=context.getResources().getDrawable(R.drawable.app_web_browser_sm); } privateclassMyHandlerextendsHandle
8、r{ publicvoidhandleMessage(Messagemsg){ if(msg.what==LONG_PRESS){ mTitleBg.setPressed(false); mBrowserActi
此文档下载收益归作者所有