2、从头学Android之第一个Activity程序

来源:互联网 发布:遇到网络诈骗怎么半 编辑:程序博客网 时间:2024/04/29 19:25

一、类层次结构:

 

二、什么是Activity,如何理解Activity

1、  用户与应用程序的交互的接口

2、  控件的容器,我们要把控件摆放在这个容器中

 

 

三、如何创建一个Activity

新建一个类:

1、  继承Activity类

[java] view plaincopyprint?
  1. package com.jiahui.activity;  
  2.   
  3.    
  4.   
  5. import android.app.Activity;  
  6.   
  7. import android.os.Bundle;  
  8.   
  9.    
  10.   
  11. public class MyActivity01Activity extends Activity {  
  12.   
  13.     /** Called when the activity is first created. */  
  14.   
  15.     @Override  
  16.   
  17.     public void onCreate(Bundle savedInstanceState) {  
  18.   
  19.         super.onCreate(savedInstanceState);  
  20.   
  21.         setContentView(R.layout.main);  
  22.   
  23.     }  
  24.   
  25. }  


2、  重写onCreate()方法,Activity第一次运行时就会调用这个方法,这个方法的调用者是由应用程序框架系统调用

3、  在AndroidMainfest.xml中注册(至于AndroidMainfest.xml)

  

[html] view plaincopyprint?
  1. <activity android:name=".MyActivity01Activity"  
  2.   
  3.              android:label="@string/app_name">  
  4.   
  5.        <intent-filter>  
  6.   
  7.            <action android:name="android.intent.action.MAIN" />  
  8.   
  9.            <category android:name="android.intent.category.LAUNCHER" />  
  10.   
  11.        </intent-filter>  
  12.   
  13.    </activity>  


这样一个Activity就被创建了

为了显示好看,我们可以为Activity中添加一些必要的控件,在这里我们添加一个TextView

打开Layout文件下的main.xml中所有的控件都必须在这里注册

[html] view plaincopyprint?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  4.   
  5.    android:orientation="vertical" android:layout_width="fill_parent"  
  6.   
  7.    android:layout_height="fill_parent">  
  8.   
  9.    <TextView android:id="@+id/myText" android:layout_width="fill_parent"  
  10.   
  11.       android:layout_height="wrap_content" android:text="@string/hello" />  
  12.   
  13.    <Button android:id="@+id/myButton" android:layout_width="fill_parent"  
  14.   
  15.       android:layout_height="wrap_content" />  
  16.   
  17. </LinearLayout>  
  18.   
  19.    


回到前面在onCreate方法里

可以通过findViewById()方法得到每个控件,这个方法返回的是一个View对象所以我们要向下强转成所要的控件类

 

[java] view plaincopyprint?
  1. package com.jiahui.activity;  
  2.   
  3.    
  4.   
  5. import android.app.Activity;  
  6.   
  7. import android.os.Bundle;  
  8.   
  9. import android.widget.Button;  
  10.   
  11. import android.widget.TextView;  
  12.   
  13.    
  14.   
  15. public class MyActivity01Activity extends Activity {  
  16.   
  17.          
  18.   
  19.        public void onCreate(Bundle savedInstanceState) {  
  20.   
  21.    
  22.   
  23.               super.onCreate(savedInstanceState);  
  24.   
  25.    
  26.   
  27.               setContentView(R.layout.main);// 设置这个Activtiy使用的布局文件  
  28.   
  29.    
  30.   
  31.               TextView myTextView = (TextView) findViewById(R.id.myText);  
  32.   
  33.               Button myButton = (Button) findViewById(R.id.myButton);  
  34.   
  35.    
  36.   
  37.               myTextView.setText("我的第一个TextView");  
  38.   
  39.               myButton.setText("我的第一个按钮");  
  40.   
  41.    
  42.   
  43.        }  
  44.   
  45. }  
  46.   
  47.    


运行结果:

0 0
原创粉丝点击