Android中measure过程、WRAP_CONTENT详解以及xml布局文

Android中measure过程、WRAP_CONTENT详解以及xml布局文

ID:37112074

大小:861.95 KB

页数:45页

时间:2019-05-17

Android中measure过程、WRAP_CONTENT详解以及xml布局文_第1页
Android中measure过程、WRAP_CONTENT详解以及xml布局文_第2页
Android中measure过程、WRAP_CONTENT详解以及xml布局文_第3页
Android中measure过程、WRAP_CONTENT详解以及xml布局文_第4页
Android中measure过程、WRAP_CONTENT详解以及xml布局文_第5页
资源描述:

《Android中measure过程、WRAP_CONTENT详解以及xml布局文》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、在之前一篇博文中<>,简单的阐述了AndroidView㔈制流程的й个↕骤,即:1ǃmeasure过程---测䟿过程2ǃlayout过程---布局过程3ǃdraw过程---㔈制过程要想对Android中View䘉块深入理解,对䘉й个↕骤地学Ґ是必不可少的DŽӺཙ,ᡁ着重讲解л如лй个内容:1ǃmeasure过程2ǃWRAP_CONTENTǃMATCH_PARENT/FILL_PARENT属性的原理说明3ǃxml布局文件解

2、析ᡀView树的流程分析DŽ希望对大家能有帮助DŽ--分析版本基于Android2.3DŽ1ǃWRAP_CONTENTǃMATCH_PARENT/FILL_PARENT初入Android殿堂的਼学们,对䘉й个属性一定又爱又恨DŽ爱的是使用起来挺爽地---照葫芦画瓢即可,恨的ত是时常混淆䘉几个属性地意义,需要й思而ਾ行DŽ在带着大家重温л䘉几个属性的用法੗(希望ᡁ没有啰嗦)DŽ䘉й个属性都用来适应视图的水平或垂直大小,一个以视图的内容或尺ረѪ基础的布局比精确地指定视图范围更加方便DŽ཰fill_parent设置

3、一个视图的布局Ѫfill_parent将强制性地使视图扩展至父元素大小DŽཱmatch_parentAndroid中match_parent和fill_parent意思一样,但match_parent更贴࠷,于是从2.2开始两个词都可以用,但2.3版本ਾ建议使用match_parentDŽིwrap_content自适应大小,强制性地使视图扩展以便显示其全部内容DŽ以TextView和ImageView控件Ѫ例,设置Ѫwrap_content将完整显示其内部的文本和图ۿDŽ布局元素将根据内容更改大小DŽ可

4、不要重复造轮子,以к摘自<>DŽᖃ然,ᡁ们可以设置View的确࠷宽高,而不是由以к属性指定DŽ[java]viewplaincopyprint?0ɨ.android:layout_weight="wrap_content"//自适应大小0ɩ.android:layout_weight="match_parent"//о父视图等高0ɪ.android:layout_weight="fill_parent"

5、//о父视图等高0ɫ.android:layout_weight="ɨ00dip"//精确设置高度值Ѫɨ00dip接л来,ᡁ们需要转换л视角,看看ViewGroup.LayoutParams类及其派生类DŽ2ǃViewGroup.LayoutParams类及其派生类2.1ǃViewGroup.LayoutParams类说明AndroidAPI中如лӻ绍:LayoutParamsareusedbyviewstotelltheirparentshowtheywanttobelaidout.意思大概是说

6、:View通过LayoutParams类告诉其父视图它想要地大小(即,长度和宽度)DŽ无法加载插件DŽ因此,⇿个View都包含一个ViewGroup.LayoutParams类或者其派生类,View类依赖于ViewGroup.LayoutParamsDŽ路径:frameworksbasecorejavaandroidviewView.java[java]viewplaincopyprint?0ɨ.publicclassViewimplementsDrawable.Callback,KeyE

7、vent.Callback,AccessibilityEventSource{0ɩ....0ɪ./**0ɫ.*Thelayoutparametersassociatedwiththisviewandusedbytheparent0ɬ.*{@linkandroid.view.ViewGroup}todeterminehowthisviewshouldbe0ɭ.*laidout.0ɮ.*{@hide}0ɯ.*/0ɰ.//该View拥有的LayoutParams属性,父试图添加该View时,会Ѫ其赋值

8、,特别注意,其类型ѪViewGroup.LayoutParamsDŽɨ0.protectedViewGroup.LayoutParamsmLayoutParams;ɨɨ....ɨɩ.}2.2ǃViewGroup.LayoutParams源码分析无法加载插件DŽ路径位于:frameworksbasecorejavaandroidviewViewGroup.java[java]viewplaincopyprint?0ɨ.publicabstractclassViewGroupextendsV

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。