控制UI界面
在android中,一共有四种方式。
第一种:使用XML布局文件控制UI界面
关键步骤有2个:
1.在Android应用的res/layout目录下编写,创建一个项目,eclipse会自动生成一个xml文件。同时在gen/目录中会自动生成R.javaw。
2.在Activity中使用以下代码:
setContentView(R.layout.activity_main);
第二种:使用Java代码来控制UI界面。
关键步骤如下:
1.创建布局管理器,可以是帧布局,表格布局,线性布局,相对布局,并设置布局管理器的属性。
例如:在OnCreate()方法中创建一个帧布局管理器
FrameLayout framelayout=new FrameLayout(this);
setContentView(framelayout);
2.创建具体的组件,例如 TextView,ImageView等。
TextView txt1=new TextView(this);
txt1.setText("在代码中控制UI界面");//...设置相应的属性....
3.添加组件到布局管理器中。
framelayout.addView(txt1);
第三种:使用XML和Java代码混合控制UI界面
习惯上把变化小,行为控制较固定的组件放在XML布局文件中,把变化多,行为比较复杂的组件放在java代码中。
第四种:开发自定义View
在android中,所有的UI界面都是有View类和ViewGroup类及其子类组合而成的,其中View类是所有UI组件的基类,而ViewGroup类是容器
第一层 ViewGroup
第二层 ViewGroup View View
第三层 View View
自定义的View组件大致分3个步骤:
1.创建一个android.view.View类的View类,并且重写构造方法。
public class MyView extends View {
public MyView(Context context) { super(context); // TODO Auto-generated constructor stub }
}
2.根据需要重写相应的方法。
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
}
3.在项目活动中,创建并实例化自定义View类,并将其添加到布局管理器中。
MyView myview=new MyView(this);
FrameLayout fl=new FrameLayout(this);
fl.addView(myview);
控制UI界面的更多相关文章
- Android——控制UI界面
一.使用XML布局文件控制UI界面 res\layout\activity_main.xml代码如下: <FrameLayout xmlns:android="http://schem ...
- 使用XML布局文件和Java代码混合控制UI界面
完全使用Java代码来控制UI界面不仅烦琐.而且不利于解耦:而完全利用XML布局文件来控制UI界面虽然方便.便捷,但难免有失灵活.因此有些时候,可能需要混合使用XML布局文件和代码来控制UI界面. 当 ...
- 在代码中控制UI界面
虽然Android推荐使用XML布局文件来控制UI界面,但如果开发者愿意,Android允许开发者完全抛弃XML布局文件,完全在Java代码中控制UI界面. 实例:用编程的方式开发UI界面 packa ...
- Android控制UI界面
⒈使用XML布局文件控制UI界面[推荐] Android推荐使用XML布局文件来控制视图,这样不仅简单.明了,而且可以将应用的视图控制逻辑从Java或Kotlin代码中分离出来,放入XML文件中控制, ...
- 家庭记账本app进度之ui相关概念控制ui界面与布局管理
ui就是用户界面设计的意思. 首先是view,view相当于窗户上的玻璃. 1.android:id属性.android:id="@+id/user".他的id是user前面的@+ ...
- 使用XML文件和Java代码控制UI界面
Android推荐使用XML文件设置UI界面,然后用Java代码控制逻辑部分,这体现了MVC思想. MVC全名是Model View Controller,是模型(model)-视图(view)-控制 ...
- Android学习笔记(9):使用XML文件和Java代码控制UI界面
Android推荐使用XML文件设置UI界面.然后用Java代码控制逻辑部分,这体现了MVC思想. MVC全名是Model View Controller.是模型(model)-视图(view)-控制 ...
- WASD控制UI界面血条加减
using UnityEngine; using System.Collections; using UnityEngine.UI; public class HealthController : M ...
- 使用xml和java代码混合控制UI界面
main.xml.................... <?xml version="1.0" encoding="utf-8"?> <Li ...
随机推荐
- uniapp 用户拒绝授权再次调起授权-语音识别、微信地址、附近地址
小程序重构,采用 uniapp 框架.记录一下踩过的坑.关于用户拒绝再次调起授权,及如何识别语音识别.微信地址.附近地址的处理. 语音识别 组件 语音识别,小程序只有录音功能,若要识别录音文件,常规做 ...
- 用java求整数和
public class JavaAppArguments { /** * @param args */ public static void main(Str ...
- Linux入门(网络配置)
Linux入门之 网络管理及网络配置 网络管理 NetworkManager,是一个为系统自动连接到网络提供检测和配置的程序,NetworkManager对无线和有线网络都可以管理,特别对于无线网 ...
- SystemMetrics
头文件: #define NUMLINES ((int) (sizeof sysmetrics / sizeof sysmetrics [0]))struct { int iIndex ; TCHAR ...
- Java学习笔记之基础语法(数组)
数组 数组概述:是具有相同数据类型的数据的集合 数组的定义:数据类型 数组名 [] 数组特点: 1,数组是引用数据类型. 2,数组值用大括号,元素之间用逗号隔开,元素的个数是0-N个 3,数组长度是固 ...
- Vbox中unbuntu15.10与win10共享文件 及开启复制粘贴功能
学习linux,一直使用的是VMware虚拟机,虽然功能很强大,但总感觉页面切换很麻烦.所以转入Vbox的使用,下面介绍下unbuntu15.10与win10共享文件. 一 共享文件夹 步骤1:启动u ...
- 快速傅里叶变换(FFT)略解
前言 如果我们能用一种时间上比 \(O(n^2)\) 更优秀的方法来计算大整数(函数)的乘法,那就好了.快速傅里叶变换(FFT) 可以帮我们在 \(O(n\log n)\) 的时间内解决问题. 函数乘 ...
- [POJ2356] Find a multiple 鸽巢原理
Find a multiple Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8776 Accepted: 3791 ...
- 在Ubuntu16.0.4安装hipcaffe
1. 安装 AMD ROCm 显卡条件 要安装AMD的 ROCm显卡,必须满足以下条件,只能高于下面信息版本,不能低于. Distribution Kernel GCC GLIBC x86_64 Fe ...
- opencv::模板匹配(Template Match)
模板匹配介绍 模板匹配就是在整个图像区域发现与给定子图像匹配的小块区域. 所以模板匹配首先需要一个模板图像T(给定的子图像) 另外需要一个待检测的图像-源图像S 工作方法,在带检测图像上,从左到右,从 ...