標籤:android android模擬器 應用程式 android開發
開始建立第一個Android項目:HelloWorld
幾乎所有的語言,剛開始學的時候所寫的第一個項目就是:HelloWorld,那麼如何寫出第一個Android項目呢?
首先,在MyEclipse編譯器中的導覽列中點擊 FIle -> New -> Other -> Android -> Android Application Project ( 圖1 )
此時會彈出建立Android項目的對話方塊。 (圖2)
其中 Application Name 代表應用程式名稱,此應用安裝到手機之後會在
手機上顯示該名稱,這裡我們填入 HelloWorld。Project Name 代表項目名稱,在項目建立完
成後該名稱會顯示在 Eclipse 中,這裡我們填入 HelloWorld(項目名通常不加空格) 。接著
Package Name 代表項目的包名,Android 系統就是通過包名來區分不同應用程式的。
接下來是幾個下拉選擇框,Minimum Required SDK 是指程式最低相容的版本,我的最低版本是4.4的,
Target SDK 是指你在該目標版本上已經做過了充分的測試,系統不會再幫你在這個版本上做向前相容的操作了
Compile With是指程式將使用哪個版本的 SDK 進行編譯
之後一路狂點next就OK了。第一個HelloWorld項目就這樣建立出來了。
右鍵點擊HelloWorld -> Run As -> Android Application
圖 3
這裡需要用到了Android模擬器,推薦一個模擬器 BlueStacks 這個模擬器需要和 “給力助手” 一塊用。
現在我們來分析一下這個Android程式:
展開HelloWorld這個項目我們會看見4所示的目錄結構。
其中
1.src
這個目錄是存放所有Java代碼的地方。
2.gen
這個目錄中的內容都是自動產生的,主要有一個R.java檔案,在項目中添加的任何資源都會在其中產生一個相應的資源id。這個檔案永遠不要手動去修改它。
3.assets
這個目錄用得不多,主要可以存放一些隨程式打包的檔案,在你的程式運行時可以動態讀取到這些檔案的內容。另外,如果你的程式中使用到了 WebView 載入本地網頁的功能,所有網頁相關的檔案也都存放在這個目錄下。
4.bin
這個目錄你也不需要過多關注,它主要包含了一些在編譯時間自動產生的檔案。其中
會有一個你當前項目編譯好的安裝包,展開 bin 目錄你會看到 HelloWorld.apk,把這個
檔案拷到手機上就可以直接安裝了。
5.libs
如果你的項目中使用到了第三方 Jar包, 就需要把這些 Jar 包都放在 libs 目錄下, 放
在這個目錄下的 Jar 包都會被自動添加到構建路徑裡去。
6.res
這個目錄下的內容就有點多了,簡單點說,就是你在項目中使用到的所有圖片、布
局、字串等資源都要存放在這個目錄下,前面提到的 R.java 中的內容也是根據這個目
錄下的檔案自動產生的。 當然這個目錄下還有很多的子目錄, 圖片放在 drawable 目錄下,
布局放在 layout 目錄下,字串放在 values 目錄下,所以你不用擔心會把整個 res 目錄
弄得亂糟糟的。
7. AndroidManifest.xml
這是你整個 Android 項目的設定檔,你在程式中定義的所有四大組件都需要在這
個檔案裡註冊。另外還可以在這個檔案中給應用程式添加許可權聲明,也可以重新指定你
建立項目時指定的程式最低相容版本和目標版本。由於這個檔案以後會經常用到,我們
用到的時候再做詳細說明。
8. project.properties
這個檔案非常地簡單,就是通過一行代碼指定了編譯器時所使用的 SDK 版本。
接下來我們看一下代碼:
package com.example.helloword;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();if (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);}}
HelloWorldActivity 是繼承自 Activity 的。 Activity 是 Android 系統提
供的一個活動基類,我們項目中所有的活動都必須要繼承它才能擁有活動的特性。然後可以
看到 HelloWorldActivity 中有兩個方法,onCreateOptionsMenu()這個方法是用於建立菜單的,
我們可以先無視它,主要看下 onCreate()方法。onCreate()方法是一個活動被建立時必定要執
行的方法。其中只有兩行代碼,並沒有出現HelloWorld的字樣,那麼我們運行顯示的HelloWorld在哪呢。。。
我們再點開res下的layout 會看到activity_main.xml 點開它,圖5,1是布局檔案圖形介面2是布局檔案代碼介面
我們看代碼:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.helloword.MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /></LinearLayout>
其中LinearLayout 是布局的一種,稱作線性布局,android:orientation="vertical" 這一句表明了布局方式是垂直的。
TextView 是一個組件 ,它主要用於在介面上顯示一段文字資訊。
android:layout_width="wrap_content" 指定了控制項的寬度
android:layout_height="wrap_content" 指定了控制項的高度
android:text="@string/hello_world" 指定了控制項所顯示的文字資訊 顯示的string下名為hello_world這個標籤所代表的內容
然後我們再開啟values下的stirngs.xml
<?xml version="1.0" encoding="utf-8"?><resources> <string name="app_name">HelloWord</string> <string name="hello_world">Hello world!</string> <string name="action_settings">Settings</string></resources>
至此,第一個項目已完成。
Android---1---HelloWorld