編輯:Android開發實例
前言
本章內容是android.widget.TableRow,版本為Android 3.0 r1,翻譯來自"Snail"。
TableRow
譯者署名:Snail
譯者鏈接:http://blog.csdn.net/zuolongsnail
版本:Android 3.0 r1
類結構
public class TableRow extends LinerLayout
java.lang.Object
android.view.View
android.view.ViewGroup
android.widget.LinearLayout
android.widget.TableRow
類概述
按照水平方向來組織子視圖的布局。TableRow應該總是作為TableLayout的子視圖。如果TableRow的父視圖不是TableLayout,那麼TableRow將相當於一個水平方向布局的LinearLayout。
在XML配置文件中TableRow的子視圖不需要詳細指定其layout_width和layout_height屬性值。TableRow總是強制將這兩個屬性分別賦值為MATCH_PARENT和WRAP_CONTENT。
可參考android.widget.TableRow.LayoutParams的布局屬性。
內部類
class TableRow.LayoutParams
適用於TableRow的子視圖的屬性設置
構造函數
public TableRow (Context context)
為給定的上下文創建TableRow布局。
參數
context 應用程序環境
public TableRow (Context context, AttributeSet attrs)
使用指定的屬性集合為給定的上下文創建TableRow布局。
參數
context 應用程序環境
attrs 屬性集合
公共方法
public TableRow.LayoutParams generateLayoutParams (AttributeSet attrs)
返回一組基於提供的屬性集合的布局參數集合。
參數
attrs 用於生成布局參數的屬性集
返回值
ViewGroup.LayoutParams或其子類的實例
public View getVirtualChildAt (int i)
返回指定索引的視圖。這個方法被重載時應當考慮到其虛擬子視圖。參見TableLayout和TableRow的示例代碼。
參數
i 子視圖的索引
返回值
指定索引的子視圖
public int getVirtualChildCount ()
返回虛擬子視圖的個數。如果這個布局支持子視圖,此數量可能與實際子視圖數量不同。 參見TableLayout和TableRow的示例代碼。
返回值
虛擬子視圖的數量
public void setOnHierarchyChangeListener (ViewGroup.OnHierarchyChangeListener listener)
注冊一個回調函數,當從視圖中添加或移除子視圖時被調用。
參數
listener 層次結構變更時執行的回調函數
受保護方法
protected boolean checkLayoutParams (ViewGroup.LayoutParams p)
(譯者注:檢測是不是AbsoluteLayout.LayoutParams的實例)
protected LinearLayout.LayoutParams generateDefaultLayoutParams ()
返回寬度為MATCH_PARENT,高度為WRAP_CONTENT且沒有跨度的布局參數集合。
返回值
默認布局參數集合或空
protected LinearLayout.LayoutParams generateLayoutParams (ViewGroup.LayoutParams p)
返回一組合法的受支持的布局參數集合。當一個ViewGroup傳遞一個布局參數沒有通過checkLayoutParams(android.view.ViewGroup.LayoutParams)檢測的視圖時,此方法將被調用。此方法會返回一組新的適合當前ViewGroup的布局參數,可能從指定的一組布局參數集合中復制適當的屬性。
參數
p 被轉換成一組適合當前ViewGroup的布局參數
返回值
一個ViewGroup.LayoutParams的實例或者其中的一個子節點
protected void onLayout (boolean changed, int l, int t, int r, int b)
在此視圖設置其子視圖的大小及位置時調用。派生類可以重寫此方法並重新為其子類布 局。
參數
changed 這是當前視圖的一個新大小或位置
l 相對於父節點的左邊位置
t 相對於父節點的頂點位置
r 相對於父節點的右邊位置
b 相對於父節點的底部位置
protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec)
測量視圖及其內容,以確定其寬度和高度。此方法由measure(int, int)調用。需要被子類重寫以提供准確、高效的測量其內容的方法。
約定:當重寫此方法時,必須調用setMeasuredDimension(int, int)來保存當前視圖的寬度和高度。如果調用不成功將會導致一個IllegalStateException異常,由measure(int, int)拋出。要有效的調用父類的onMeasure(int, int)方法。
基類的實現是以背景大小為默認大小,除非MeasureSpec(測量細則)允許更大的背景。子類應重寫onMeasure(int, int)以對其內容提供更合適的大小。
如果此方法被重寫,那麼子類要確保其測量高度和測量寬度要大於視圖的最小寬度和最小高度(getSuggestedMinimumHeight()和getSuggestedMinimumWidth())。
參數
widthMeasureSpec 父視圖要求的橫向空間大小。該要求由View.MeasureSpec進行編碼
heightMeasureSpec 父視圖要求的縱向空間大小。該要求由View.MeasureSpec進行編碼
TableRow.LayoutParams
譯者署名:madgoat
譯者鏈接:http://madgoat.cn
版本:Android 3.0 r1
類結構
public class TableRow extends LinerLayout
java.lang.Object
android.view.ViewGroup.LayoutParams
android.view.ViewGroup.MarginLayoutParams
android.widget.LinearLayout.LayoutParams
android.widget.TableRow.LayoutParams
類概述
設置在表格行中使用的布局參數
參見
TableLayout.LayoutParams
XML屬性
屬性名稱
描述
android:layout_column
該子元素所在的列的索引值。必須是一個整數值,例如“100”。
android:layout_span
定義此子元素跨越多少列。必須>=1。必須是一個整數值,例如“100”。
字段
public int column
單元格cell在widget上代表的列索引。
public int span
widget跨越的列數
構造函數
public TableRow.LayoutParams (Context c, AttributeSet attrs)
public TableRow.LayoutParams (int w, int h)
設置子元素的寬度和高度
參數
w 期望高度
h 期望寬度
public TableRow.LayoutParams (int w, int h, float initWeight)
參數
w 期望高度
h 期望寬度
initWeight 期望權重(weight)
public TableRow.LayoutParams ()
設置子元素的寬度為ViewGroup.LayoutParams
,高度參數為WRAP_CONTENT
。
public TableRow.LayoutParams (int column)
設置指定列上的視圖的寬度參數為MATCH_PARENT
,高度參數為WRAP_CONTENT
參數
column 視圖中列的索引
public TableRow.LayoutParams (ViewGroup.LayoutParams p)
public TableRow.LayoutParams (ViewGroup.MarginLayoutParams source)
公共方法
protected void setBaseAttributes (TypedArray a, int widthAttr, int heightAttr)
從提供的參數中提取出布局參數
參數
a 從布局參數中提取的樣式屬性
widthAttr 寬度屬性的標識符
heightAttr 高度屬性的標識符
登錄應用程序的屏幕,詢問憑據登錄到一些特定的應用。可能需要登錄到Facebook,微博等本章介紹了,如何創建一個登錄界面,以及如何管理安全問題和錯誤嘗試。首先,必須定義兩
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
目前智能電視終端(智能電視和智能電視盒子)已經越來越火,過去主打視頻功能,如今的智能電視終端不僅會繼續完善視頻功能,還會加入電視游戲功能,同時這也趕上了“電視游戲
酷酷的外表已經具備了,那就開始讓我們真正把它的功能給實現起來吧,外強中干,花拳繡腿可不行哦,我們需要真正的本領,需要一顆自強不息的心哦,常常想想自己的夢想什麼,這