Android应用程序的基本组成

一个最简单的应用由一个activity和一个布局组成。

一、

activity是Activity类的一个具体实例,负责管理用户与信息屏的交互。应用的功能是通过编写一个Activity子类实现的。QuizActivity.java

public class QuizActivity extends Activity {
……
}

该Java类文件包含两个Activity方法:该Java类文件包含两个Activity方法:onCreate(Bundle)和onCreateOptionsMenu(Menu)。 
activity子类的实例创建后,onCreate(Bundle)方法将会被调用。activity创建后,它需要获取并管理属于自己的用户界面。获取activity的用户界面,可调用以下Activity方法: 

public void setContentView(int layoutResID)

通过传入布局的资源ID参数,该方法生成指定布局的视图并将其放置在屏幕上。布局视图生

成后,布局文件包含的组件也随之以各自的属性定义完成实例化。

获取该应用的用户界面为:setContentView(R.layout.main);

二、
布局定义了一系列用户界面对象以及它们显示在屏幕上的位置。组成布局的定义保存在XML文件中,文件名为main.xml,在res/layout/目录下。在该文件中所有的元素定义为一个组件,定义了一些属性,如果在编程中需要使用的需定义资源ID。所有的资源ID都在R.java中,编译时自动生成,可查看。
Android:id=“@+id/true_button"
资源ID即为R.id.true_button。
布局资源的ID为:R.layout.main 

视图组件包含在视图层结构中。

(1)组件属性:

1. android:layout_width和android:layout_height属 几乎每类组件都需要android:layout_width和android:layout_height属性。

它们通常 被设置为以下两种属性值之一。

? match_parent:视图与其父视图大小相同。

? wrap_content:视图将根据其内容自动调整大小。

2. android:orientation属性 android:orientation属性决定了组件是水平放置的还是垂直放置的。

3. android:text属性 TextView与Button组件具有android:text属性。该属性指定组件显示的文字内容 android:text属性值不是字符串字面值,而是对字符串资源(string resources)的引用。 字符串资源包含在一个独立的名为strings的XML文件中,在res/values中。

(2)字符串资源string.xml中定义了所有要显示的组件的字符串值。

<string name ="true_button">True</string>

资源ID为R.string.true_button。

(3)组件引用

可通过以下Activity方法引用已生成的组件:

public View findViewById(int id)

如显示true按钮:

private Button mTrueButton;

mTureButton = (Button)findViewById(R.id.true_button);

(4)设置监听器

为响应某个事件而创建的对象叫做监听器,如监听用户的按钮“单击”事件,监听器需实现View.OnClickListener接口。实现监听器接口需实现onClick(View)方法。所有的监听器都作为匿名内部类来实现。

mTrueButton = (Button) findViewById(R.id.true_button);mTrueButton.setOnClickListener(new View.OnClickListener() {    public void onClick(View v) {
Toast.makeText(QuizActivity.this,R.string.incorrect_toast,Toast.LENGTH_SHORT).show();
    }
});

Toast用来通知用户的简短弹出消息。

时间: 2024-12-26 19:33:37

Android应用程序的基本组成的相关文章

Android应用程序的组成部分

Android应用程序由松散耦合的组件组成,并使用应用程序Manifest绑定到一起:应用程序Manifest描述了每一个组件和它们之间的交互方式,还用于指定应用程序元数据,其硬件和平台要求,外部库以及必需的权限. 下面几个组件提供了应用程序的基本结构模块: Activity:应用程序的表示层.应用程序中的每一个UI都是通过Activity类的一个或多个扩展实现的.Activity使用Fragment和视图来布局和显示信息,以及响应用户动作. Service:应用程序中不可见的工作者.Servi

Android应用程序安装与Launcher启动机制

以下资料摘录整理自老罗的Android之旅博客,是对老罗的博客关于Android底层原理的一个抽象的知识概括总结(如有错误欢迎指出)(侵删):http://blog.csdn.net/luoshengyang/article/details/8923485http://blog.csdn.net/luoshengyang/article/details/12957169 整理by Doing Android系统在启动的过程中,会启动一个应用程序管理服务PackageManagerService,

【苦读官方文档】2.Android应用程序基本原理概述

官方文档原文地址 应用程序原理 Android应用程序是通过Java编程语言来写.Android软件开发工具把你的代码和其它数据.资源文件一起编译.打包成一个APK文件,这个文档以.apk为后缀,保存了一个Android应用程序全部的内容.Android设备通过它来安装相应的应用. 一旦安装到设备上.每一个Android应用程序就执行在各自独立的安全沙盒中: Android系统是一个多用户的Linux系统.每一个应用都是一个用户. Android系统默认会给每一个应用分配一个唯一的用户ID(这个

Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析

http://blog.csdn.net/luoshengyang/article/details/8223770 在前文中,我们分析了Android应用程序窗口的运行上下文环境的创建过程.由此可知,每一个Activity组件都有一个关联的ContextImpl对象,同时,它还关联有一个Window对象,用来描述一个具体的应用程序窗口.由此又可知,Activity只不过是一个高度抽象的UI组件,它的具体UI实现其实是由其它的一系列对象来实现的.在本文中,我们就将详细分析Android应用程序窗口

Android应用程序签名

Android系统要求每一个Android应用程序必须要经过数字签名才能够安卓到系统中.Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系,这个数字签名由应用程序的作者完成,并不需要权威的数字证书签名机构认证,它只是用来让应用程序自我认证的. Android应用程序签名的影响 使用同一个签名证书,则不同签名的应用无法覆盖生成的应用程序,即使包名相同,因此,主要的签名影响有以下两点: 1.应用升级.使用相同签名的升级软件可以正常覆盖安装老版本的软件,否则,系统发现签名证书不

单例访问Android应用程序对象

1.单例模式: 单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例类的特殊类.通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源.如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案. 2.单例模式优势: 由于单例模式在内存中只有一个实例,减少了内存开销 单例模式可以避免对资源的多重占用. 单例模式可以在系统设置全局的访问点,优化和共享资源访问. 2.问题:需要从android应用程序中去访问全局数据 解决

Android卸载程序之后跳转到指定的反馈页面

今天去面试,一面还可以,到了第二面的时候也差不多吧,最后来了一题,说那个360被卸载之后会跳转到指定的反馈页面,是怎么弄的?这个之前没有研究过,但是这个效果是见过的.当时想到了,Android中卸载应用的时候会发送一个广播,我们可以接收到这个广播,然后处理一下.结果他来个反问句:这样可以吗?然后仔细想想,既然他这么问了,应该是有问题,在想想,发现的确是有问题,当应用被卸载了,那个接收到广播处理之后的逻辑代码放在那里执行?好吧,然后就没戏了~~ 回来了,就百度了一下,果然网上似乎有相关的问题的解答

Android应用程序窗口(Activity)与WindowManagerService服务的连接过程分析

在前两文中,我们分析了Activity组件的窗口对象和视图对象的创建过程.Activity组件在其窗口对象和视图对象创建完成之后,就会请求与WindowManagerService建立一个连接,即请求WindowManagerService为其增加一个WindowState对象,用来描述它的窗口状态.在本文中,我们就详细分析Activity组件与WindowManagerService的连接过程. 我们从两方面来看Activity组件与WindowManagerService服务之间的连接.一方

Android应用程序窗口(Activity)的视图对象(View)的创建过程分析

从前文可知道,每一个Activity组件都有一个关联的Window对象,用来描述一个应用程序窗口.每一个应用程序窗口内部又包含有一个View对象,用来描述应用程序窗口的视图.应用程序窗口视图是真正用来实现UI内容和布局的,也就是说,每一个Activity组件的UI内容和布局都是通过与其所关联的一个Window对象的内部的一个View对象来实现的.在本文中,我们就详细分析应用程序窗口视图的创建过程. 在前面Android应用程序窗口(Activity)实现框架简要介绍和学习计划一文中提到,应用程序

android 应用程序框架

在进行Android软件开发时,开发者所开发的Android应用程序都是通过应用程序框架来与Android底层进行交互的,所以开发中接触到最多的部分就是应用程序框架.在整合应用程序框架 中有4个重要的组件,介绍如下. Activities:一个Activities就表示一个程序的显示界面,在一个应用程序中可以包含多个Activities组件,每个Activities组件都拥有各自的生命周期. Intent:当多个应用程序之间需要互相跳转时,就通过Intent完成,开发者所开发的程序也可以利用In