界面编程与视图(View)组件

1、视图组件与容器组件

Android应用绝大部分UI组件都放在Android.widget包及其子包、android.view包及其子包中,其所有UI组件都继承了view类,view组件代表一个空白的矩形区域。

View类还有一个重要的子类:ViewGroup,它通常作为其他组件的容器使用。ViewGroup除了包含普通view组件外,还可包含ViewGroup组件。

所有组件都提供了两种方式来控制组件的行为:

a、在XML布局文件中通过XML属性进行控制。

b、在JAVA程序代码中通过调用方法进行控制。

提示:Drawable是Android提供的一个抽象基类,它代表了“可以被绘制出来的某种东西”,Drawable包括了大量子类,各种Drawable可用于定制UI组件的背景等外观。

ViewGroup容器控制其子组件的分布依赖于ViewGroup.LayoutParams、ViewGroup.MarginLayoutParams两个内部类。这两个内部类中都提供了一些XML属性,ViewGroup容器中的子组件可以指定这些XML属性。指定子组件的布局高度和宽度分别是android:layout_height、Android:layout_width。其属性值有三个

fill_parent:指定子组件的高度、宽度与父容器的高度、宽度相同。

match_parent:与fill_parent相同。

wrap_content:指定子组件的大小恰好能包裹它的内容即可。

ViewGroup.MarginLayoutParams用于控制子组件周围的页边距(也就是组件四周的留白)。

2、使用XML布局文件控制UI界面

当我们在Android应用的res/layout目录下定义一个主文件名任意的XML布局文件之后(R.java会自动收录该布局资源),java代码可通过如下方法在activity中显示该视图:

setContentView(R.layout.<资源文件名字>)

可以为UI组件指定android:id属性,该属性值代表该组件的唯一标识。在java代码中访问该组件:

findViewById(R.id.<android.id属性值>);

一旦在程序中获得了指定UI组件之后,就可以通过代码来控制各UI组件的外观行为,包括为UI组件绑定事件监听器等。

3、在代码中控制UI界面

如果希望在代码中控制UI界面,那么所有的UI组件都将通过new关键字创建出来,然后以合适的方式“搭建”在一起即可。

4、使用XML布局文件和Java代码混合控制UI界面。

习惯上把变化小、行为比较固定的组件放在XML布局文件中管理,而那些变化多、行为控制复杂的组件则交给java代码来管理。

时间: 2024-11-20 18:19:26

界面编程与视图(View)组件的相关文章

关于Android界面编程与视图(View)组件

UI组件--------------->android.widget.* View组件------------->android.view.* 视图(View)组件 所有UI组件都是建立在视图(View)组件.容器(ViewGroup)组件基础之上的. UI组件继承之View组件 ViewGroup----------->作为其他组件的容器使用. ViewGroup包含View组件即 (UI组件---->继承自View组件. ViewGroup组件---->继承自View组件

Android界面编程——Android高级UI组件(三)

Android界面编程 Android高级UI组件 2.4.1适配器组件 适配器的作用 适配器充当适配器控件和该视图数据之间的桥梁.适配器提供访问的数据项,并负责产生数据组中的每个项的视图. 常用的适配器 BaseAdapter:抽象类,具有较高的灵活性. ArrayAdapter:最为简单,智能展示一行文字. SimpleAdapter:有较好的扩充性,可以自定义出各种效果. SimpleCursorAdapter:主要用于操作数据库. 常用的适配器控制 适配器控件扩展自ViewAdapter

Java Swing界面编程(19)---密码输入组件:JPasswordField

JTextField是使用明文方式进行数据显示的,如果现在需要将回显的内容设置成其他字符,则可以使用JPasswordField类. package com.beyole.util; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPasswordField; public class test18 { public static void main(String[] args) { JFrame

Java Swing界面编程(6)---JButton按钮组件

package com.beyole.util; import java.awt.Font; import javax.swing.JButton; import javax.swing.JFrame; public class test5 { public static void main(String[] args) { JFrame frame=new JFrame(); JButton button=new JButton("Click Me!");//new出一个按钮的对象

二、Android应用的界面编程(一)界面编程与视图(View)组件

Android应用的绝大部分UI组件都放在android.widget包及其子包.android.view包及其子包中,Android应用的所有UI组件都继承了View类.它代表一个空白的矩形区域.View类还有一个重要的子类:ViewGroup,但ViewGroup通常作为其他组件的容器使用.Android的所有UI都是建立在View.ViewGroup基础之上的,因此ViewGroup也可以被当成View使用.ViewGroup里除了可以包含普通View组件之外,还可以再次包含ViewGro

part11-2 Python图形界面编程(Tkinter常用组件、对话框(Dialog)、菜单、Canvas绘图)

五. Tkinter 常用组件 Tkinter 各组件的详细用法还需要掌握,也就是掌握各个“积木块”的的详细功能. 1. 使用 ttk 组件 在前面直接使用的 tkinter 模块下的 GUI 组件看上去并不美观.为此 Tkinter 引了一个 ttk 组件作为补充,并使用功能更强大的 Combobox 取代原来的 Listbox,且新增了 LabeledScale(带标签的Scale).Notebook(多文档窗口).Progressbar(进度条).Treeview(树)等组件. ttk 是

02_Android应用界面编程_01_视图(View)组件

1.视图组件与容器组件 Android绝大部分UI组件都放在android.widget和android.view包及其子包,所有的UI组件都继承了View类,ViewGroup则用于其他组件的容器. XML属性 相关方法 说明 android:alpha setAlpha(float) 设置该组件的透明度 android:background setBackgroundResource(int) 设置该组件的背景颜色 android:clickable setClickable(boolean

Android界面编程——Android布局组件(二)

Android界面编程 2.3.1 布局介绍 布局用于定义Activity中UI元素的排列结构,Android提供了LinearLayout线性布局.RelativeLayout相对布局 .FrameLayout帧布局 .TableLayout表格布局.AbsoluteLayout坐标布局 共五种布局,可以通过两种方式声明布局: ? 在 XML 中声明 UI 元素.Android 提供了对应于 View 类及其子类的XML 元素 ? 运行时实例化布局元素.可以通过编程创建 View 对象和 Vi

Android界面编程——日期时间组件(五)

Android界面编程--日期时间组件 2.6日期时间组件 2.6.1 TextClock 以文本的方式显示系统日期和时间,可以自定义显示格式,是 Android4.2(对应API Level 17)提供的新特性. TextClock有两种格式设置方式: 1. 在24小时模式: 属性:android:format24Hour 方法:set Format24Hour(CharSequence) 2. 在12小时模式: 属性:android: format12Hour 方法:set Format12