首页 > 代码库 > android——activity与view

android——activity与view

1.       activity, view概述

进行android开发,只需具有java语言基础即可。入门的开发并不需要一些高深的java知识,如Swing,网络,线程,数据库等。

刚开始进行android开发,会觉得android的架构设计得很好,接口简单,模块独立。特别是像我这种C++程序员来说,没有了框架自动添加的很多消息映射宏,窗口的启动,过多复杂的类等。如android应用程序的基本构成就采用MVC模式,界面与逻辑开发独立,程序员可以只专注于程序逻辑开发,美工可以专注于界面设计。

简单的看,activity可以认为是MVC中的control,用于产生控制逻辑;View则是MVC中的view,用于展示软件界面。而view可以用xml来简单地表示和生成,美工可以采用一些界面设计器来设计界面,而不用理会复杂的java代码。这样android就实现了逻辑与界面的良好分离,软件开发起来简单高效。

怎么将activity与view关联起来呢?

Activity提供了setContentView这个方法,只要继承Activity的子类调用该方法即可呈现view所描述的界面。View既可用xml描述,也可以用java代码来生成。

    例如我们一般在activity中的onCreate函数中调用setContentView(R.layout.main),就要显示出main.xml所描述的界面来。使用setContentView也可以实现一个activity切换多个view。

下面即是android上经典的HelloWorld程序,在主界面中显示Hello.

public class HelloWorld extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

}

xml布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="hello"
    />
</LinearLayout>