編輯:Android開發實例
前言
本章內容android.view.Gravity章節,版本為Android 4.0 r1,翻譯來自:"ShoZ"。
Gravity
譯者署名:ShoZ
譯者鏈接:http://weibo.com/shostyle
版本:Android 4.0 r1
結構
繼承關系
public class Gravity extends Object
java.lang.Object
android.view.Gravity
類概述
用來在一個更大容器中布置對象的標准常量和工具。
常量
public static final int AXIS_CLIP
原始位控制右/底邊界是否被剪切到它的容器中,基於已應用的對齊方向。
常量值: 8 (0x00000008)
public static final int AXIS_PULL_AFTER
原始位控制右/底邊界如何被放置
常量值: 4 (0x00000004)
public static final int AXIS_PULL_BEFORE
原始位控制左/頂邊界如何被放置
常量值: 2 (0x00000002)
public static final int AXIS_SPECIFIED
原始位標明一個已指定的軸的對齊方向
常量值: 1 (0x00000001)
public static final int AXIS_X_SHIFT
橫軸位定義
常量值: 0 (0x00000000)
public static final int AXIS_Y_SHIFT
垂直軸位定義
常量值: 4 (0x00000004)
public static final int BOTTOM
將對象推至容器底部但不改變它的尺寸
常量值: 80 (0x00000050)
public static final int CENTER
把對象放置於其容器的垂直軸和橫軸的中間而不改變其尺寸(譯者注:即全居中)
常量值: 17 (0x00000011)
public static final int CENTER_HORIZONTAL
把對象放置於橫軸的中間而不改變其尺寸(譯者注:水平居中)
常量值: 1 (0x00000001)
public static final int CENTER_VERTICAL
把對象放置於垂直軸的中間而不改變其尺寸(譯者注:垂直居中)
常量值: 16 (0x00000010)
public static final int CLIP_HORIZONTAL
標志剪切對象在其容器中沿橫軸的邊界
常量值: 8 (0x00000008)
public static final int CLIP_VERTICAL
標志裁剪對象在其容器中沿垂直軸的邊界
常量值: 128 (0x00000080)
public static final int DISPLAY_CLIP_HORIZONTAL
使裁剪沿水平層面整體顯示的特殊常量。這在使用apply(int, int, int, Rect, int, int, Rect)的默認情況下是不適用的;你必須自己調用applyDisplay(int, Rect, Rect)來做。
常量值: 16777216 (0x01000000)
public static final int DISPLAY_CLIP_VERTICAL
使裁剪沿垂直層面整體顯示的特殊常量。這在使用apply(int, int, int, Rect, int, int, Rect)的默認情況下是不適用的;你必須通過調用applyDisplay(int, Rect, Rect)來做。
常量值: 268435456 (0x10000000)
public static final int END
將對象推至其所在容器的X軸的末尾而不改變其尺寸
常量值: 8388613 (0x00800005)
public static final int FILL
拉伸對象的水平和垂直的尺寸以完全填滿其所在容器
常量值: 119 (0x00000077)
public static final int FILL_HORIZONTAL
拉伸對象的水平尺寸以完全填滿其所在容器(譯者注:垂直尺寸不變)
常量值: 7 (0x00000007)
public static final int FILL_VERTICAL
拉伸對象的垂直尺寸以完全填滿其所在容器(譯者注:水平尺寸不變)
常量值: 112 (0x00000070)
public static final int HORIZONTAL_GRAVITY_MASK
用來得到一個對齊方向的絕對水平對齊方向的二進制掩碼。
常量值: 7 (0x00000007)
public static final int LEFT
將對象推至其所在容器的左邊而不改變其尺寸
常量值: 3 (0x00000003)
public static final int NO_GRAVITY
用來標明沒有設定對齊方向。
常量值: 0 (0x00000000)
public static final int RELATIVE_HORIZONTAL_GRAVITY_MASK
水平對齊方向和腳本的特定方向位的二進制掩碼
常量值: 8388615 (0x00800007)
public static final int RELATIVE_LAYOUT_DIRECTION
原始位控制布局方向是否是相對布局(用START/END 代替絕對布局的 LEFT/RIGHT)
常量值: 8388608 (0x00800000)
public static final int RIGHT
將對象推至其所在容器的右邊而不改變其尺寸
常量值: 5 (0x00000005)
public static final int START
將對象推至其所在容器X軸起點的位置而不改變其尺寸
常量值: 8388611 (0x00800003)
public static final int TOP
將對象推至其所在容器的頂端而不改變其尺寸
常量值: 48 (0x00000030)
public static final int VERTICAL_GRAVITY_MASK
用來得到一個對齊方向的垂直對齊方向的二進制掩碼
常量值: 112 (0x00000070)
公共方法
public static void apply (int gravity, int w, int h, Rect container, Rect outRect)
為一個對象應用一個對齊方向常量
參數
gravity 所需放置的對象,由該類中的常量定義
w 對象的水平尺寸
h 對象的垂直尺寸
container 容器空間的框架,將用來放置指定對象,應該足夠大,以包含對象的寬和高。
outRect 接收對象在其容器中的計算幀(computed frame)
public static void apply (int gravity, int w, int h, Rect container, int xAdj, int yAdj, Rect outRect)
為一個對象應用一個對齊方向常量
參數
gravity 所需放置的對象,由該類中的常量定義
w 對象的水平尺寸
h 對象的垂直尺寸
container 容器空間的框架,將用來放置指定對象,應該有足夠大,以包含對象的寬和高。
xAdj 應用於X軸的偏移,如果對齊方向是LEFT那麼將對象向右推;如果對齊方向是RIGHT那麼將對象向左推;如果對齊方向是CENTER_HORIZONTAL那麼將其向左或右推移;其他情況忽略
yAdj 應用於Y軸的偏移,如果對齊方向是TOP那麼將對象向下推移;如果對齊方向是BOTTOM那麼將對象向上推移;如果對齊方向是CENTER_VERTICAL那麼將其向上或下推移;其他情況忽略
outRect 接收對象在其容器中的計算幀(computed frame)
public static void applyDisplay (int gravity, Rect display, Rect inoutObj)
應用於對一個已存在對象整體“顯示”的額外對齊方向行為。可用於apply(int, int, int, Rect, int, int, Rect)之後來使對象可見.移動或剪切的對象在默認情況下是可見的.對齊方向標志DISPLAY_CLIP_HORIZONTAL和DISPLAY_CLIP_VERTICAL可用於改變該行為
參數
gravity 用來修改顯示中位置的對齊方向常量
display 用來放置對象的矩形顯示框
inoutObj 提供當前對象的位置;如果需要適應顯示窗則返回已修改後的值
public static boolean isHorizontal (int gravity)
表明提供的對齊方向是否能橫向的拉伸。
參數
gravity 待檢查的是否能橫向的拉伸的對齊方向
返回值
若能橫向的拉伸返回真
public static boolean isVertical (int gravity)
表明提供的對齊方向是否能垂直的拉伸。
參數
gravity 待檢查是否能垂直的拉伸的對齊方向
返回值
若能垂直拉伸返回真
初學Android編程,Android SDK中提供的Sample代碼自然是最好的學習材料。 &nb
今天模仿安卓QQ空間,效果如下: 打開程序的啟動畫面和導航頁面我就不做了,大家可以模仿微信的那個做一下,很簡單。這次主要做一下主頁面的實
一、 實現拍照、選擇圖片並裁剪圖片效果 按照之前博客的風格,首先看下實現效果。 二、 uCrop項目應用 想起之前看到
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個