20155328 實驗四 Android程序設計
第24章 初識Android
提交點1:完成HelloWorld並顯示自己的學號
安裝Android Studio后,創建了屬於自己的Project(用駝峰命名法命名),Project中含有兩個主要的結點,app和gradle scripts。
app節點下有:
-
manifests:其中包含一個叫AndroidManifest.xml的清單文件,包含一個或多個activity元素,描述了app中的活動。主活動充當應用程序的入口點。
-
java:包含了所有的java應用程序和測試類。
-
res:drawable中包含用於各種屏幕分辨率的圖像,layout包含布局文件,menu包含了菜單文件,values包含了字符串和其他值。
在創建完自己的項目,配置好SDK及虛擬安卓機器后,要完成HelloWorld並顯示自己的學號,只需將activity_main.xml中的android:text="Hello World!"
改成android:text="Hello World!Hello 20155328!"
即可。
在虛擬機器上運行APP如圖所示:
第25章 活動
提交點2:創建ThirdActivity並顯示自己的學號,修改代碼讓MainActivity啟動ThirdActivity
調用ThirdActivity,需在AndroidManifest.xml中再添加一個activity...>,並建立對應的ThirdActivity.java,還需修改MainActivity,讓其啟動ThirdActivity.
運行截圖如下:
第26章 UI組件
提交點3:修改代碼讓Toast消息中顯示自己的學號信息
使用UI工具所做的都會反映到布局文件中,以XML元素的形式體現出來。
activity_main代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.lxkj.commitzyq3.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="20155328"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintHorizontal_bias="0.318"
app:layout_constraintVertical_bias="0.226" />
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:layout_editor_absoluteY="16dp"
tools:layout_editor_absoluteX="5dp" />
</android.support.constraint.ConstraintLayout>
MainActivity.java代碼如下:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnshow1 = (Button) findViewById(R.id.btn1);
btnshow1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast toast = Toast.makeText(MainActivity.this, "20155328", Toast.LENGTH_LONG);
toast.show();
}
});
}
運行結果如圖:
第27章 布局
提交點4:修改布局讓P290頁的界面與教材不同
運行截圖如下:
第28章 監聽器
提交點5:構建項目,運行教材相關代碼
運行截圖如下:
二、實驗中遇到的問題及解決辦法
-
問題1:第一次創建Project時,gradle building速度過慢。
-
解決方法:雖然Android Studio不是翻牆下載的,但gradle的下載依然很慢,如果事先下載好gradle就好了。在 C:\Users\【你當前的 用戶名】 .gradle中打開wrapper文件夾中的dists文件夾,里面只有一個叫gradle-3.3-all的文件夾,說明gradle的版本號是3.3,就在官網上找到對應版本號的gradle壓縮文件並下載,即下載了gradle-3.3-all.zip,下載之后再次打開project,速度就快了很多。
-
問題2:在寫完代碼后想用虛擬機器運行一下,結果出現下圖所示的錯誤提示:
-
解決方法:錯誤提示說的是電腦的BIOS配置出了錯。重啟電腦,在開機時按F2進入到BIOS配置中,選擇config→CPU→Intel→Virtualization Technology,將這個選項開啟。開機后再打開Android Studio並用虛擬機器運行app,就沒有問題了。
-
問題3:在運行app時出現錯誤提示:error while lauching activity,如圖:
- 解決方法:在Build選項卡中clean一下project,再重啟項目即可。
三、實驗時間
|步驟 |耗時 |百分比 |
| -------- | :----------------😐
|需求分析 |30min | 17.65% |
|設計 |30min | 17.65% |
|代碼實現 |25min | 14.71% |
|測試 | 50min | 29.41% |
|分析總結 |35min | 20.59% |
四、實驗感想
這次實驗是第一次使用Android Studio來進行開發,雖然過程中有很多波折,在用虛擬機器運行app時也比較慢,但能在虛擬機器上看見自己的小程序運行了還是很開心。
參考資料: