ViewGroup类提供的主要方法 类名 功能描述 ViewGroup() 构造方法 void addView(View child) 用于添加子视图,以View作为参数,将该View增加到视图组中 removeView(View view) 将指定的View从视图组中移除 updateViewLayout(View view,ViewGroup.LayoutParams 用于更新某个View的布局 params) void bringChildToFront(View child) 将参数所指定的视图移动到所有视图之前显示 boolean clearChildFocus(View child) 清除参数所指定的视图的焦点 boolean dispatchKeyEvent(KeyEvent event) 将参数所指定的键盘事件分发给当前焦点路径的视图。 boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent 将参数所指定的事件分发给当前焦点路径的视图 event) boolean dispatchSetSelected(boolean selected) 为所有的子视图调用setSelected0方法 ViewGroup继承了View类,虽然可以当成普通的View来使用,但习惯上将ViewGroup当容器来使用。由于 注意 ViewGroup是一个抽象类,在实际应用中通常使用ViewGroup的子类作为容器,例如各种布局管理器。 Android软件开发 主讲:王海
Android软件开发 主讲:王海 类名 功能描述 ViewGroup() 构造方法 void addView(View child) 用于添加子视图,以View作为参数,将该View增加到视图组中 removeView(View view) 将指定的View从视图组中移除 updateViewLayout(View view, ViewGroup.LayoutParams params) 用于更新某个View的布局 void bringChildToFront(View child) 将参数所指定的视图移动到所有视图之前显示 boolean clearChildFocus(View child) 清除参数所指定的视图的焦点 boolean dispatchKeyEvent(KeyEvent event) 将参数所指定的键盘事件分发给当前焦点路径的视图。 boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) 将参数所指定的事件分发给当前焦点路径的视图 boolean dispatchSetSelected(boolean selected) 为所有的子视图调用setSelected()方法 ViewGroup View View ViewGroup ViewGroup ViewGroup ViewGroup类提供的主要方法
ViewGroup继承结构 ViewGroup的继承者大部分位于android.widget包中。 View ViewGroup AdapterView<T> AbsoluteLayout FrameLayout LinearLayout RelativeLayout FragmentBreadCrumbs AbsListView AbsSpinner ScrollView Tabhost TabelLayout RadioGroup TabelRow A GridView ListView Gallery Spinner Android软件开发 主讲:王海
Android软件开发 主讲:王海 ViewGroup继承结构 • ViewGroup的继承者大部分位于android.widget包中。 View ViewGroup AdapterView<T> AbsoluteLayout FrameLayout LinearLayout RelativeLayout FragmentBreadCrumbs AbsListView AbsSpinner ScrollView Tabhost TabelLayout TabelRow GridView ListView Gallery Spinner RadioGroup
布局参数类 在Android布局文件中,每个组件所能使用的XML属性有三类: -组件本身的XML属性 -组件祖先类的XML属性; 一组件所属容器的布局参数。 ViewGroup容器使用两个内部类来控制子组件在其中的分布位置: ViewGroup.LayoutParams ViewGroup.MarginLayoutParams XML属性 功能描述 android:layout_width 设定该组件的子组件布局的宽度 android:layout_height 设定该组件的子组件布局的高度 Android软件开发 主讲:王海
Android软件开发 主讲:王海 布局参数类 在Android布局文件中,每个组件所能使用的XML属性有三类: – 组件本身的XML属性; – 组件祖先类的XML属性; – 组件所属容器的布局参数。 ViewGroup容器使用两个内部类来控制子组件在其中的分布位置: – ViewGroup.LayoutParams – ViewGroup.MarginLayoutParams XML属性 功能描述 android:layout_width 设定该组件的子组件布局的宽度 android:layout_height 设定该组件的子组件布局的高度
布局参数类 ·ViewGroup.MarginLayoutParams用于控制子组件周围的页边距 XML属性 功能描述 android:layout_marginTop 指定该子组件上面的页边距 android:layout marginRight 指定该子组件右面的页边距 android:layout marginBottom 指定该子组件下面的页边距 android:layout marginLeft 指定该子组件左面的页边距 由于LayoutParams-也具有继承关系,因此LinearLayout的子类除了可以使用 LinearLayout..LayoutParams)所提供的XML属性外,还可以使用其祖先类 注意 ViewGroup.LayoutParams的XML属性。 Android软件开发 主讲:王海
Android软件开发 主讲:王海 LayoutParams LinearLayout LinearLayout.LayoutParams XML ViewGroup.LayoutParams XML XML属性 功能描述 android:layout_marginTop 指定该子组件上面的页边距 android:layout_marginRight 指定该子组件右面的页边距 android:layout_marginBottom 指定该子组件下面的页边距 android:layout_marginLeft 指定该子组件左面的页边距 • ViewGroup.MarginLayoutParams用于控制子组件周围的页边距
布局管理 View 布局管理器可以根据运行平 台来调整组件的大小 ViewGroup AbsoluteLayout GridView 所有的布局管理器都是 ViewGroupl的子类 LinearLayout FrameLayout RelativeLayout TableLayout Android软件开发 主讲:王海
Android软件开发 主讲:王海 布局管理 • 布局管理器可以根据运行平 台来调整组件的大小 • 所有的布局管理器都是 ViewGroup的子类 View AbsoluteLayout ViewGroup GridView RelativeLayout LinearLayout TableLayout FrameLayout