人人都是手機控的時代學習Android是不可或缺的潮流與技能。Google以Android配合瀏覽器、搜尋引擎、Nexus手機事業部與各手機大廠結盟的效應已經讓Android系統成為三星、Sony、華碩、HTC、華為、小米等各國廠商都離不開安卓系統的懷抱。
隨著Android的開發版本越來越新,手機的功能也越來越強:拍照、上網、定位、NFC、Raspberry Pi、Andruino,以及各種遊戲軟體Unity、Gamesalad、Corona也都支援的情況下,Android apps已經達到上億個之多。
只要會基本的Java、VB程式就可以入門基礎的安卓程式開發,在Windows、MacOS、Linux上都有相容版本可以免費下載,讓安卓成為世界手機與行動裝置系統的霸主歷久不衰。現在就讓我們一起進入Android的開發世界吧。
TQC+是國內辦理電腦證照的大廠商,極具公信力,考題也很有深度,考取其證照者都必須具有相當程度的專業能力,頗受各大企業認可。市面上對各領域認證都有出版相關書籍和解題秘笈,以入門的TQC+ Android 6來說,題本"TQC+行動裝置應用程式設計認證指南Android 6",對應的解答本就是"TQC+行動裝置應用程式設計認證指南解題秘笈Android 6"。相關訊息可以在TQC+考生網上找到http://www.tqcplus.org.tw/。考取證照可以檢視學習成效並鑑定能力以達求職時提出證明。就讓我們進入TQC+的認證之門吧。
解答本建議採用Android Studio 2.1以上版本,我則是使用最普遍的2.3.3版。
Android的資料夾與檔案結構主要如下:
src / main / java / GDD01.java
/ main / res / layout / main.xml
/ main / res / values / strings.xml
初學者大概會搞不清楚的id/ID有兩個:字串id和資源ID,字串id會儲存在strings.xml裡,而資源ID則是存放在R檔案裡,JAVA程式會引用資源ID。
型式大約如下:
字串id:android:text="@string/amout"
資源ID:android:id="@+id/amout"
因為開發Android app必須要先建立UI再寫程式,在建立UI時就必須要先考慮到設定id/ID以便將來給程式利用。
第一題 整存整付計算機
1. main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/title" />
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/lend" />
<EditText
android:id="@+id/input_lend"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" />
<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/rate" />
<EditText
android:id="@+id/input_rate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/number" />
<EditText
android:id="@+id/input_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" />
<Button
android:id="@+id/submit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/btn" />
<TextView
android:id="@+id/amount"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/amount" />
</LinearLayout>
2. strings.xml
<resources>
<string name="app_name">整存整付計算機</string>
<string name="title">整存整付試算:</string>
<string name="lend">本金(NT$):</string>
<string name="rate">年利率(%):</string>
<string name="number">存款期數:</string>
<string name="btn">計算本利和:</string>
<string name="amount" />
</resources>
3. GDD01.java
package com.daniel.gdd01;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class GDD01 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button submit = (Button) findViewById(R.id.submit);
submit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
EditText input_lend = (EditText) findViewById(R.id.input_lend);
EditText input_rate = (EditText) findViewById(R.id.input_rate);
EditText input_number = (EditText) findViewById(R.id.input_number);
TextView amount = (TextView) findViewById(R.id.amount);
Double lend = Double.parseDouble(input_lend.getText().toString());
Double rate = Double.parseDouble(input_rate.getText().toString());
Double number = Double.parseDouble(input_number.getText().toString());
Double total = lend * Math.pow(rate + 1, number);
amount.setText("本利和: " + total);
}
});
}
}
這樣子完成上述3個檔案就可以跑Genymotion模擬器Custom Phone 7.0.0 API24,或者Android Studio內建的Nexus_6_API啦。簡單吧?
我提供完成檔的連結,是可以直接匯入的專案
若想自行建立專案須注意預設的JAVA程式檔名是MainActivity.java而非TQC+題本光碟中預定的GDD01.java
第二題 GD102 點餐系統
這一題加入了一個檔案,記得要給他複製進來: / res / drawable / ic_launcher_background.xml
第三題 GD103 選擇手機型號
第四題 GD104 手機與平板布局
加入了dimens.xml、colors.xml、新增color.xml與strings.xml內容,detail_view.xml、list_view.xml、main_land.xml、menu_gdd01.xml、AndroidManifest.xml加入兩行:
<activity android:name=".DetailFragment"></activity>
<activity android:name=".ListFragment"></activity>
第五題 GD105 計算BMI值
留言列表