Android UI

Android UI的重要概念

Android UI 的最重要的三个概念,Activity、View、Layout。

下面对这三个概念作一个初步的理解,先浅尝辄止。这样做的目的是先了解一下这些概念,从总体上对这些概念有一个把握和串通,方便后面的学习。

(一)Activity

1.Activity启动流程

一个应用程序至少有一个Activity。且必须有一个默认的启动Activity。

Android应用程序启动的流程如下:

首先,Android操作系统会去访问你的应用程序中的AndroidManifest.xml这个文件,决定启动哪一个Activity。启动默认的Activity之后,会生成这个Activity的对象,一般情况下是MainActivity。生成这个对象后,会去调用这个对象的onCreat方法。然后在onCreate方法里去读取layout目录下的activity_main.xml布局文件,来决定在应用程序里显示什么内容。

2.Activity与布局文件

我们可以在布局文件里修改文字显示的样式,比如

1 android:textSize="80px" 2 android:background="#FF0000"

所有在res里的文件都会在gen目录里R.java这个文件里生成ID,布局文件也有它的ID。

1 public static final class layout {
2         public static final int activity_main=0x7f030000;
3 }

R.layout.activity_main就代表这个布局文件

然后在activity的onCreate函数中

1 protected void onCreate(Bundle savedInstanceState) {
2         super.onCreate(savedInstanceState);
3        setContentView(R.layout.activity_main);
4 }

setContentView就是显示布局文件的内容。

3.在Activity中获取代表控件的对象

为了满足动态显示的需要,写死在布局文件里的控件显然是不行的。

因此我们用代码取代布局,如图所示。这样就可以动态的控制控件的样式。

下面这行就是获取代表控件的对象:

1 TextView textView = (TextView)findViewById(R.id.textView);

这涉及到View对象,下面就开始介绍View。

(二)View

1.什么是View

View就是控件。如下图:

每一种控件都对应有一个类,View是所有控件的父类。

2.在Activity中获取代表View的对象

首先,我们需要在layout文件里给控件加上一个唯一的ID:

1 android:id="@+id/textView"

然后,在Activity里声明这个控件:

1 private TextView textView;

注:这里需要引用textView所在的包

1 import android.widget.TextView;

在Activity的函数里用findViewById获取这个View,由于findViewById函数的返回类型是View,所以需要向下转型为TextView:

注:这里不是生成对象,只是找到这个对象,对象的生成是由布局文件完成的。

1 textView = (TextView)findViewById(R.id.textView);

3.设置View的属性

转型完毕以后可以在Activity中对这个控件进行修改,控制它的属性。例如:

1 textView.setText(“hello world”);
2 textView.setBackgroundColor(Color.BLUE);

在布局里能做到的事情绝大部分代码里也能做到。

时间: 2024-10-20 04:00:58

Android UI的相关文章

Android UI设计之<十>自定义ListView,实现QQ空间阻尼下拉刷新和渐变菜单栏效果

转载请注明出处:http://blog.csdn.net/llew2011/article/details/51559694 好久没有写有关UI的博客了,刚刚翻了一下之前的博客,最近一篇有关UI的博客是在2014年写的:Android UI设计之<七>自定义Dialog,实现各种风格效果的对话框,在那篇博客写完后由于公司封闭开发封网以及其它原因致使博客中断至今,中断这么久很是惭愧,后续我会尽量把该写的都补充出来.近来项目有个需求,要做个和QQ空间类似的菜单栏透明度渐变和下拉刷新带有阻尼回弹的效

【转】Android UI系列-----时间、日期、Toasts和进度条Dialog

原文网址:http://www.cnblogs.com/xiaoluo501395377/p/3421727.html 您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态. 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦 如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: [email protected] / [email protected] 如果需要转载,请注明出处,谢谢!! 本篇随笔将继续学

Android UI学习 - ListView (android.R.layout.simple_list_item_1是个什么东西)

Android UI学习 - ListView 2010-06-20 18:21:35 标签:Android UI 移动开发 ListView ListActivity 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://android.blog.51cto.com/268543/336162 ListActivity ListActivity是一个专门显示ListView的Activity类,它内置了ListView对象,只要我

Android UI组件进阶(2)——仿Windows对话框

Android UI组件进阶(2)--仿Windows对话框 在开始本章前先祝大家中秋节快乐哈,相信很多上班的朋友都是放三天假的哈! 有时间的话回家陪陪父母吧!树欲静而风不止,子欲养而亲不待!岁月不饶人! 好了,道理和祝福语就说到这里了,今天给大家准备的是模仿Windows风格对话框! 效果图: 相信大部分的AlertDialog都是下面这个样子的: 今天给大家讲解的对话框是下面这样的: 对比两种对话框,站在用户的角度,相信你更加钟情于第二种颜色鲜明的对话框 好了下面就开始讲解如何制作模仿win

android UI设计时需要注意遵循的设计原则

1.Android设备屏幕尺寸分布 首先看一下各种屏幕的尺寸和屏幕密度划分,下图是各种屏幕尺寸对应的范围: 从上图可以看出,对应normal尺寸的屏幕范围集中在常见的3到5寸屏之间,large尺寸对应的就主要是5到7寸的nottpad之类的设备,例如三星的Note和Nexus7平板等,再网上走就是平板电脑了.接下来是屏幕密度(dpi),需要说明的时,平时所说的屏幕分辨率其实不能作为屏幕适配的依据,应该依据屏幕密度和屏幕尺寸来换算,屏幕密度是指每寸屏幕内容纳的像素数,屏幕密度从ldpi到xhdpi

Android UI编程之自定义控件初步——ImageButton

概述: 我想我们在使用一些App的时候,应该不会出现一些"裸控件"的吧.除非是一些系统中的软件,那是为了保持风格的一致性,做出的一些权衡.我这里并非是在指责Android原生的控件不好看,说实在的,我很喜欢Android的一些原生控件.只是有些时候为了风格的一致性,就不得不去花些功夫在美工上.这于美工这一点,我对某讯的产品的确欣赏.下面就让我们开始一点一点学习Android UI编程中的自定义控件. 分析: 自定义控件就点像堆积木,并给它涂上颜色,和功能说明.下面就让我们用一个例子来逐

android UI布局

一.设置重复背景 在drawable文件夹下建一个mybackground.xml文件 在文件中写入: <?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/mybg_img" android:tileMod

Android UI线程和非UI线程

UI线程及Android的单线程模型原则 当应用启动,系统会创建一个主线程(main thread). 这个主线程负责向UI组件分发事件(包括绘制事件),也是在这个主线程里,你的应用和Android的UI组件(components from the Android UI toolkit (components from the android.widget and android.view packages))发生交互. 所以main thread也叫UI thread也即UI线程. 系统不会为

【Android UI】色板

Hex Code Color #FFFFFF   #FFFFCC   #FFFF99   #FFFF66   #FFFF33   #FFFF00   #FFCCFF   #FFCCCC   #FFCC99   #FFCC66   #FFCC33   #FFCC00   #FF99FF   #FF99CC   #FF9999   #FF9966   #FF9933   #FF9900   #FF66FF   #FF66CC   #FF6699   #FF6666   #FF6633   #FF66

Android UI基础

Android UI概述 Android UI由View和ViewGroup组成. ViewGroup是不可见的,用于组织和排版View和ViewGroup. View用户显示内容,以及响应用户的操作. 可以按照需要安排UI的叠放,不过叠放的层数越少,性能上来说越好. Android UI可以在code中生产,不过更加方便的方式是在Android的XML文件中定义UI. Layouts 通过XML方式实现 可以通过2种方式定义界面结构. 1. 在XML定义视图结构 2. 在运行时动态创建视图结构