`
maoxy
  • 浏览: 141246 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

学习Android界面设计的超级利器HierarchyView.bat(转载)

UI 
阅读更多

存在问题: 
我看到别人的程序,想学习人家的UI布局是怎么做的,如何能窥探一二? 
存在问题: 
在学习ViewGroup和Layout时我们可能会有一个疑问,如果我在Xml布局文件中不放置Layout,直接放TextView等组件的时候,它是用什么方式布局的?
解决方法: 
Android的SDK中自带了一个查看UI布局层级结构的工具:HierarchyView.bat。在模拟器运行的情况下,使用该 工具可以将当前的Activity中的UI组件们以对象树的形式展现出来,每一个组件所包含的属性也能窥探得到。在对象树上的任意节点可以看到该节点及以 下节点的显示效果。使用HierarchyView能深入全面的理解xml布局文件,更可以通过它来学习别人优秀的布局技巧。

 
(看到那个不起眼的hierachyview.bat文件没,哎,竟然它是学习Android界面设计的超级利器)

具体使用方法:待模拟器及想观察的程序启动后,双击Hirerachyview.bat,点击Load View Hierarchy 
 
现在我们先解决第一个问题:分析AndroidQQ的登录界面组成。 
 
从图中可以看到QQ登录界面中的核心部分是用相对布局摆放的,甚至可以看到有的TextView还用的是IDE自动起的ID:TextView01。
下面我们解决第二个问题:找到默认的布局方式是什么?
我们建一个新项目,Main.xml中只放一个TextView,
<?xml version="1.0" encoding="utf-8"?> 
<TextView android:text="hi" android:id="@+id/TV" 
    android:layout_width="wrap_content" android:layout_height="wrap_content" 
    xmlns:android="http://schemas.android.com/apk/res/android" ></TextView>

看看他的布局层次是什么样的:
 
我们可以看到顶级元素是个PhoneWindow,其下有一个线性布局LinearLayout,再下面有一个应用程序标题条,
   

标题条是由一个帧布局FrameLayout和一个TextView组成。 
我们自己写的TextView也放在了一个Layout里,这个Layout就是ID叫做content的FrameLayout。
 
接下来我们再创建一个带有LinearLayout的程序,看看他的层次结构来确定一下,那个ID是content的FrameLayout是固有的还是因为没布局元素由系统自动加上去的。
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout android:id="@+id/LinearLayout01" 
    android:layout_width="fill_parent" android:layout_height="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android" > 
    <TextView android:text="haha" android:id="@+id/TextView01" 
        android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> 
</LinearLayout>
下面是新程序的UI界面层次结构图:
 
这一次我们同样看到了那个Id是content的Framelayout:) 这说明它是窗口布局结构里固有的。
出自:《android学习指南》

分享到:
评论

相关推荐

    Doxygen生成CHM文档之利器,iconv,utf82gbk.bat和makechm.bat

    使用Doxygen可以生成图文并茂的便于程序阅读的文档,但若要生成带目录的CHM文档,iconv,utf82gbk.bat和makechm.bat可以帮助你搞定。http://blog.csdn.net/xk_snail有具体的使用方法,欢迎大家交流。

    Android Studio Dolphin 2021.3.1 Patch 1 (Windows IDE 安装版)

    4. **布局编辑器增强**:布局编辑器现在更加直观,可以实时预览界面,并且支持拖放功能,使得界面设计更为便捷。 5. **Kotlin支持**:Kotlin是Android开发的首选语言,新版本的Android Studio提供了更完善的Kotlin...

    apktool、apktool.jar、apktool.bat

    综上所述,Apktool作为一个强大的Android反编译工具,是开发者、安全研究员和学习者手中的一把利器。然而,由于其涉及到的应用逆向工程,使用时应谨慎,遵守法律法规。如果你在网上很难找到Apktool,可能是因为它...

    dex2jar.bat

    《dex2jar:Android .dex 文件到 Java .class 文件的转换利器》 在Android应用开发领域,Dalvik Executable(.dex)文件是Android应用程序的主要组成部分,它包含了编译后的Java字节码。然而,有时我们需要对这些....

    Android群英传神兵利器.pdf

    《Android群英传神兵利器》16年出版,入门,提高,非常推荐的一本书。

    android-studio-2021.2.1.15-windows

    《Android Studio 2021.2.1.15 Windows版:专业级移动应用开发利器》 Android Studio是Google官方推出的集成开发环境(IDE),专为Android应用程序开发设计。这个版本,即“android-studio-2021.2.1.15-windows”,...

    QuickBF2(bat转exe的利器).rar

    QuickBF2是一款强大的批处理(bat)脚本转换工具,能够将.bat文件转换为可执行的.exe文件。在IT行业中,这种转换有时是必要的,因为.exe文件在Windows系统上具有更好的兼容性和执行效率,同时也能够保护原始脚本不被...

    Android Apk一键反编译工具(Gapktool.bat)

    Android APK文件是Android应用的...总结,GAPKtool.bat是Android开发和逆向工程领域的一款利器,它使得APK的反编译工作变得更加便捷。但同时,使用此类工具时需谨慎,遵循合法合规的原则,尊重软件开发者的劳动成果。

    android-studio-2020.3.1.25-windows(最新版本).zip

    总之,Android Studio 2020.3.1.25是Android开发者的重要利器,它带来了诸多提升,无论是代码编写、调试,还是应用发布,都能感受到其带来的便捷和高效。如果你是一名Android开发者,升级到这个最新版本无疑是明智的...

    第一章android界面设计利器

    第一章 android界面设计利器 一般公司都有专业的前端UI设计师来负责移动端界面的设计但是往往前端UI设计师 很难和程序设计人员配合密切。前端UI设计师的目的在于如何让程序更加美观有些资深 的前端UI设计师...

    无损批量图像增强利器 2012.3.06绿色免费版

    标题中的“无损批量图像增强利器 2012.3.06绿色免费版”指的是一款在2012年3月6日发布的软件,该软件的主要功能是无损地对图像进行批量增强。无损意味着在处理图像时不会降低原始图像的质量,批量处理则意味着用户...

    AppDesigner界面美感的利器.txt

    AppDesigner界面美感的利器.txt

    Android群英传 完整高清版.pdf

    这部分内容深入探讨了Android中各种标准控件的工作原理,并教授开发者如何根据需求定制独特的控件,从而实现更加个性化的设计效果。 ### ListView使用技巧 ListView是一种常用的列表展示控件,能够高效地滚动显示...

    arcgis-android-sdk-v10.2.7.zip

    《ArcGIS Android SDK v10.2.7:构建移动GIS应用的利器》 ArcGIS Android SDK v10.2.7是一款专为Android平台设计的地理信息系统(GIS)开发工具包,它允许开发者创建功能丰富的地图应用程序,将地理信息与移动设备...

    Windows10 系统系统超级精简利器.zip

    为了满足这些需求,"Windows10 系统超级精简利器.zip" 提供了一种解决方案——通过使用NTLite工具来优化和定制Windows10系统。 NTLite是一款强大的Windows部署工具,它允许用户在安装过程中删除不必要的组件和服务...

    droiddraw-r1b16 Android界面设计工具 最新版

    《DroidDraw-R1B16:Android界面设计利器详解》 DroidDraw-r1b16是一款专为Android开发者和设计师打造的图形用户界面(GUI)设计工具,被誉为是Android应用开发中的实用助手。这款工具以其简洁的操作界面和强大的...

    CobaltStrike4.5,渗透利器

    Cobalt Strike是一款高度先进的渗透测试工具,专为网络安全专业人士设计,用于模拟黑客攻击并评估组织的安全防御。在4.5版本中,它继续保持其在红队操作中的领先地位,提供了丰富的功能来支持社会工程学、网络入侵...

    能直接编辑PDF文件的利器工具.zip_遍历器

    在描述中,“能直接编辑PDF文件的利器工具.zip”进一步确认了这是一个专为处理PDF文档设计的软件。 在标签中提到“pdf”,这暗示了该压缩包与PDF格式处理相关,包括创建、修改、阅读或管理PDF文件。接下来我们将...

    下载利器Internet.Download.Manager破解补丁和注册机

    下载利器Internet.Download.Manager破解补丁和注册机

    VS调试利器autoexp.dat

    VS调试利器,可以查看调试时看不到的值,使用方法(以VS2010为例): 1:替换到Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Packages\Debugger  2:重启visual studio

Global site tag (gtag.js) - Google Analytics