Android UI Layouts: Graphics Design Using the ViewGroup Class

Android ViewGroup Superclass: A Foundation for Layouts

The ViewGroup LayoutParams Class: Layout Parameters

Deprecated Layouts: AbsoluteLayout and SlidingDrawer

absoluteLayout 3 version 1.5

SlidingDrawer 17 version 4.2(DrawerLayout  can replace)

Android’s Experimental Layout: SlidingPaneLayout

“Experimental” means that the layout container could be removed at any time (实验意味着随时都可能被删除) 用例

logical UI design usage of the SlidingPaneLayout container should include pairings of panes with logical use bindings. An example of this would be a phone number list with related dial or tagging features, a city or street list with related map features, a contact list and UI allowing interaction with the contact, or a recent e-mail list with a content pane displaying the message in the selected e-mail.

support the use of weight layout parameter android:layout_weight

Android RelativeLayout Class: Designing Relative Layouts

Android LinearLayout Class: Designing Linear Layouts

To set a weight, use a zero if the layout container is not to be stretched or use a decimal number between 0.0 and 1.0 to prorate any of those extra pixels amongst all of the UI elements (child tags) within the container.

Android FrameLayout Class: Designing Frame Layouts

注意:

It is important to note that child tags (View widgets) that are currently invisible because they’ve been specified via an Android View.GONE constant instead of using View.INVISIBLE will be utilized for FrameLayout container sizing purposes only if the .setConsiderGoneChildrenWhenMeasuring() method is called using a true parameter.

Android GridLayout Class: Designing UI Layout Grids

add in level 14

The Android Space class is a lightweight View subclass that can be used to create empty space between user interface elements in layout containers like GridLayout

does not currently provide support for the parameter called weight(假设须要,请使用LinearLayout)

you should not need to use either of the Android size value constants WRAP_CONTENT or MATCH_PARENT when you are configuring the child tags (UI elements) within your GridLayout container.

能够和数据库数据混合使用

比TableLayout更省内存

能够和FrameLayout结合。做出更复杂的效果

As I mentioned earlier, basic FrameLayout configurations can be nested and accommodated inside the cells of a GridLayout because a single cell can contain multiple View or ViewGroup objects.

To switch between two View or ViewGroup objects, you would place both of them into the same cell, and then leverage each via a visibility parameter by using the constant GONE in order to switch between one ViewGroup to the other ViewGroup (or View) from inside your Java code.

The DrawerLayout Class: Designing UI Drawer Layouts

package:android.support. v4.widget

android:layout_gravity

correspond to the side of the screen from which you want your UI Drawer to dragged out from

使用左右。而不能使用上下(Make absolutely sure not to use the TOP or BOTTOM (or any other constants) layout_gravity settings, as this class is not intended to provide vertical drawers, only horizontal ones, and will likely throw an exception.)

android:layout_height

match_parent

android:layout_width

you would next use the fixed width that you want to use for the UI Drawer width, specified using a DIP value

DrawerLayout.DrawerListener

Java code can do things when the drawer is open, closed, or being dragged.

onDrawerClosed()。onDrawerOpened(),onDrawerSlide(),onDrawerStateChanged()

STATE_IDLE

STATE_DRAGGING。STATE-SETTLING,LOCK_MODE_UNLOCKED,LOCK_MODE_LOCKED_OPEN,LOCK_MODE_LOCKED_CLOSED

DrawerLayout.SimpleDrawerListener

Adding Menu Items to Access the UI Layout Container

顺序(android:orderInCategory)

Creating a Table of Contents Activity for Your UI Design

Creating an XML Table of Contents LinearLayout UI Design

Adding Text UI Widgets to the TOC UI Layout Container

Using onOptionsItemSelected( ) to Add Menu Functionality

Testing the Table of Contents Activity on the Nexus One

《Pro Android Graphics》读书笔记之第六节的更多相关文章

  1. Android群英传》读书笔记 (3) 第六章 Android绘图机制与处理技巧 + 第七章 Android动画机制与使用技巧

    第六章 Android绘图机制与处理技巧 1.屏幕尺寸信息屏幕大小:屏幕对角线长度,单位“寸”:分辨率:手机屏幕像素点个数,例如720x1280分辨率:PPI(Pixels Per Inch):即DP ...

  2. 《Pro Android Graphics》读书笔记之第三节

    Android Frame Animation: XML, Concepts and Optimization Frame Animation Concepts: Cels, Framerate, a ...

  3. 《Pro Android Graphics》读书笔记之第四节

    Android Procedural Animation: : XML, Concepts and Optimization Procedural Animation Concepts: Tweens ...

  4. 《Pro Android Graphics》读书笔记之第二节

    Android Digital Video: Formats, Concepts and Optimization Android Digital Video Formats: MPEG4 H.264 ...

  5. 《Pro Android Graphics》读第三季度票据

    Android Frame Animation: XML, Concepts and Optimization Frame Animation Concepts: Cels, Framerate, a ...

  6. $《第一行代码:Android》读书笔记——第2章 Activity

    (一)创建活动 1.创建活动类 创建没有Activity的项目,发现src文件夹是空的,手动创建一个包com.jyj.demo1,在包中添加一个名为MainActivity的class,该MainAc ...

  7. $《第一行代码:Android》读书笔记——第1章 Android系统

    (一)Android系统架构 1.Linux内核层:各种底层驱动,如显示驱动.音频驱动.电源管理等. 2.系统运行库层:各种库支持,如3D绘图.浏览器内核.数据库等. 3.应用框架层:各种API,各种 ...

  8. $《第一行代码:Android》读书笔记——第3章 UI基础

    (一)Android常用控件及简单用法 1.如下图: 2.补充: (1)margin:外边距:padding:内边距. (2)gravity:子元素的位置:layout_gravity:子元素在父元素 ...

  9. $《第一行代码:Android》读书笔记——第10章 Android网络编程

    (一)WebView的用法 1.WebView也是一个普通的控件. 2.常用用法: WebView webView = (WebView)findViewById(R.id.web_view); we ...

随机推荐

  1. idea 新建的xml文件显示为文本问题

    由于是新手 在用idea 中出现了 显示问题,一开始 都随它去 ,结果发现几次 都一样 由于 mybatis配置的config 我都命名为 mybatis-config.xml 网上搜索了下 没有搜到 ...

  2. 使用springboot完成密码的加密解密

    现今对于大多数公司来说,信息安全工作尤为重要,就像京东,阿里巴巴这样的大公司来说,信息安全是最为重要的一个话题,举个简单的例子: 就像这样的密码公开化,很容易造成一定的信息的泄露.所以今天我们要讲的就 ...

  3. URL模块之parse方法

    url.parse(urlString , boolean , boolean) parse这个方法可以将一个url的字符串解析并返回一个url的对象. 参数: urlString指传入一个url地址 ...

  4. 清理win10过期补丁的命令

    作用是删除已经被新版本取代的旧系统文件 DISM.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase 注1: 执行后, 补丁就无法 ...

  5. python 小白(无编程基础,无计算机基础)的开发之路 辅助知识1 with...as

    这个语法是用来代替传统的try...finally语法的. with EXPRESSION [ as VARIABLE] WITH-BLOCK 基本思想是with所求值的对象必须有一个__enter_ ...

  6. windows服务器下iis的性能优化 服务器

    IIS性能优化 1.调整IIS高速缓存 HKEY_LOCAL_MACHINE SystemCurrentControlSetServicesInetInfoParametersMemoryCacheS ...

  7. API设计相关

    来自HeroKu的HTTP API 设计指南 http://get.jobdeer.com/343.get https://github.com/interagent/http-api-design ...

  8. MySQL索引与Index Condition Pushdown

    实际上,这个页面所讲述的是在MariaDB 5.3.3(MySQL是在5.6)开始引入的一种叫做Index Condition Pushdown(以下简称ICP)的查询优化方式.由于本身不是一个层面的 ...

  9. iOS开发经验总结

    总结了几个月的东西终于能和大家分享了,不多说,直接看东西! 1.禁止手机睡眠 1 [UIApplication sharedApplication].idleTimerDisabled = YES; ...

  10. hibernate:There is a cycle in the hierarchy! 造成死循环解决办法

    下面是报的异常:在网上搜了关于:There is a cycle in the hierarchy!,才知道原来是因为死循环造成的!解决了好久,没有成功,后台不得已请教老大,老大说是因为在使用JSON ...