本文是第二篇的Android 教學.
第一篇
在此聲明本人學寫Android Apps只有很短時間, 以下的教學大多是自己經驗加上網上搜來再整理的, 說不上專業, 但希望能夠幫助剛剛學寫或希望寫Android Apps 的朋友, 有錯請指正.
Android App 最基本第一個要說就是Activity,基本上Activity 可以說是一個"畫面". Activity 有四種狀態:
一個Activity 主要既流程可以到http://developer.android.com/guide/topics/fundamentals/activities.html 會有更詳細既說明
一個Activity 上會所有的Button , Text , CheckBox 等稱為View , View 之上其實會有一個Layout 去控制所有View 的位置及其他特性.簡單說一個簡單Application 架構是這樣: Application > Activity > Layout > View. Android 可以由Java Code 去控制Button , Text 等在Activity 上既出現, 另一個做法係編寫.xml. Eclipse 提供一個Graphical Interface 方便用戶去設計所有View 的位置, 同一時間Eclipse 會產生對應的.xml.
以下做一個簡單的App 去實現Button , TextView 等
開一個新Android Project , File>New>AndroidProject
Project Name: HelloWorld
PackName: com.helloworld
於Project Explorer , Right Click剛剛的Project > Run> Run Configuration> Target 選擇目標VM
之後按 Run 會彈出VM,unlock Android 之後應該會出現Hello 字句,可以保留VM
返回Eclipse>Project Explorer > HelloWorld > res> layout> main.xml, 右面應該看到Graphical Interface, 可以在Form 選擇Button 並拉入去
Double Click Button 彈到XML 碼的一頁,可以看到最外層是LinearLayout之後下面有一個TextView 及剛剛創造的Button 修改TextView 入面的 android:id 為 "@+id/message" 及 Button 的 android:id 為 "@+id/mybutton".這裡可以修改Button 顯示的字句,修改Button 入面的 android:text="Click me"
<?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="@string/hello"
android:id="@+id/message" />
<Button
android:text="Click Me"
android:id="@+id/mybutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
></Button>
</LinearLayout>
到Eclipse > Project Explorer> HelloWorld >src> com.helloworld> HelloWorldActivity.java
找到OnCreate , 這裡是Activity Initalize 的地方, 把以下的全部copy and paste 到整個HelloWorldActivity
package com.helloworld;
import android.app.Activity; import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class HelloWorldActivity extends Activity {
/** Called when the activity is first created. */
private Button MyButton;
private TextView Message;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MyButton=(Button)findViewById(R.id.mybutton); Message=(TextView)findViewById(R.id.message);
MyButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
Message.setText("Hi!!Hello World!!!!");
}}
);
}
}
以下是上面Code的詳細說明
以下的是Android 一些package/ library
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener; import android.widget.Button;
import android.widget.TextView;
創造了兩個Variable一個係Button 類的mMybutton , 一個係TextView類mMessage, 並於OnCreate內以
FindViewById () 找到他們與xml 部份,建立"connection"
private Button MyButton;
private TextView Message;
.
.
.
MyButton=(Button)findViewById(R.id.mybutton);
Message=(TextView)findViewById(R.id.message);
其實在左面Project Explorer > HelloWorld>gen 可以找到R.java , 這個是Eclipse 自己根據main.xml 產生出來,不用多理,以後想連到 layout , View 等只要用 R.layout.XX 或 R.id.XX 去找即可
以下是把MyButton Set 一個onClickListener , onClickListener的作用就是只要MyButton 被Click 的時侯就會觸發. 把想觸發的事件寫入OnClick
MyButton.setOnClickListener(new OnClickListener(){
@Override public void onClick(View arg0) {
Message.setText("Hi!!Hello World!!!!");
}}
);
嘗試Run HelloWorld Project
第一篇
在此聲明本人學寫Android Apps只有很短時間, 以下的教學大多是自己經驗加上網上搜來再整理的, 說不上專業, 但希望能夠幫助剛剛學寫或希望寫Android Apps 的朋友, 有錯請指正.
Android App 最基本第一個要說就是Activity,基本上Activity 可以說是一個"畫面". Activity 有四種狀態:
- Active/Running : Activity 在螢幕疊的最上方
- Paused : Activity 仍可在螢幕上看到(遮了一半或半透明的狀態, 多數是有Pop up, e.g.Alert Dialog ,彈出的時候)
- Stopped : Activity 不再顯示螢幕上 , 被完全遮敝, 但所有資料仍儲在Memory 上
- Kill: Activity 被系統殺死, Memory 放出資料
一個Activity 主要既流程可以到http://developer.android.com/guide/topics/fundamentals/activities.html 會有更詳細既說明
一個Activity 上會所有的Button , Text , CheckBox 等稱為View , View 之上其實會有一個Layout 去控制所有View 的位置及其他特性.簡單說一個簡單Application 架構是這樣: Application > Activity > Layout > View. Android 可以由Java Code 去控制Button , Text 等在Activity 上既出現, 另一個做法係編寫.xml. Eclipse 提供一個Graphical Interface 方便用戶去設計所有View 的位置, 同一時間Eclipse 會產生對應的.xml.
以下做一個簡單的App 去實現Button , TextView 等
開一個新Android Project , File>New>AndroidProject
Project Name: HelloWorld
PackName: com.helloworld
於Project Explorer , Right Click剛剛的Project > Run> Run Configuration> Target 選擇目標VM
之後按 Run 會彈出VM,unlock Android 之後應該會出現Hello 字句,可以保留VM
返回Eclipse>Project Explorer > HelloWorld > res> layout> main.xml, 右面應該看到Graphical Interface, 可以在Form 選擇Button 並拉入去
Double Click Button 彈到XML 碼的一頁,可以看到最外層是LinearLayout之後下面有一個TextView 及剛剛創造的Button 修改TextView 入面的 android:id 為 "@+id/message" 及 Button 的 android:id 為 "@+id/mybutton".這裡可以修改Button 顯示的字句,修改Button 入面的 android:text="Click me"
<?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="@string/hello"
android:id="@+id/message" />
<Button
android:text="Click Me"
android:id="@+id/mybutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
></Button>
</LinearLayout>
到Eclipse > Project Explorer> HelloWorld >src> com.helloworld> HelloWorldActivity.java
找到OnCreate , 這裡是Activity Initalize 的地方, 把以下的全部copy and paste 到整個HelloWorldActivity
package com.helloworld;
import android.app.Activity; import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class HelloWorldActivity extends Activity {
/** Called when the activity is first created. */
private Button MyButton;
private TextView Message;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MyButton=(Button)findViewById(R.id.mybutton); Message=(TextView)findViewById(R.id.message);
MyButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
Message.setText("Hi!!Hello World!!!!");
}}
);
}
}
以下是上面Code的詳細說明
以下的是Android 一些package/ library
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener; import android.widget.Button;
import android.widget.TextView;
創造了兩個Variable一個係Button 類的mMybutton , 一個係TextView類mMessage, 並於OnCreate內以
FindViewById () 找到他們與xml 部份,建立"connection"
private Button MyButton;
private TextView Message;
.
.
.
MyButton=(Button)findViewById(R.id.mybutton);
Message=(TextView)findViewById(R.id.message);
其實在左面Project Explorer > HelloWorld>gen 可以找到R.java , 這個是Eclipse 自己根據main.xml 產生出來,不用多理,以後想連到 layout , View 等只要用 R.layout.XX 或 R.id.XX 去找即可
以下是把MyButton Set 一個onClickListener , onClickListener的作用就是只要MyButton 被Click 的時侯就會觸發. 把想觸發的事件寫入OnClick
MyButton.setOnClickListener(new OnClickListener(){
@Override public void onClick(View arg0) {
Message.setText("Hi!!Hello World!!!!");
}}
);
嘗試Run HelloWorld Project
請按此登錄後留言。未成為會員? 立即註冊