事先申明:所有android 類型的學習記錄全部基於《第一行代碼 Android》第三版,在此感謝郭霖老師的書籍幫助。 1.手動創建Activity 在Project類型目錄中尋找到 項目/app/src/main/java/com.example.activitytest 在 com.exampl ...
事先申明:所有android 類型的學習記錄全部基於《第一行代碼 Android》第三版,在此感謝郭霖老師的書籍幫助。
1.手動創建Activity
在Project類型目錄中尋找到 項目/app/src/main/java/com.example.activitytest 在 com.example.activitytest包右鍵新建Activity 中選擇Empty Activity 不選擇Generate a Layout File 和Launcher Activity,選擇finish。
這兩個不勾選的選項中Generate a Layout File代表意思為項目創建一個對應的佈局文件,Launcher Activity意思為將此Activity作為主Activity。第二項在你想將這個Activity作為第一個顯示在你android app的頁面時勾選。
創建Activity後,Android Studio自動幫我們重寫了onCreate()方法.實際代碼如下
class FirstActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
}
2.創建佈局和載入佈局
首先,每一個Activity都應該對應一個佈局。
對app/src/main/res/layout文件夾右鍵新建/Layout resource file建立佈局,並且命名,根元素選擇為LinearLayout。
創建完畢後選擇右側右上角的code進入xml文件編輯佈局,
你會看到
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
我們先來實現一個按鈕,主要分為兩個步驟,第一個步驟式使用代碼在佈局中編輯一個button元素,之後第二個步驟是在Activity中將其顯示出來。
首先,佈局文件中在LinearLayout中添加一個button按鈕,添加後編輯一個按鈕,實際代碼如下
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"></Button>
</LinearLayout>
BUTTON元素中,android:id是定義一個唯一的標識符,其中使用的格式xml引入的格式,比如定義一個id,xml中式@+id/button1,引入一個id則是@id/button1。android:layout_width和android:layout_height分別式設置當前元素的寬和高,match_parent表示和父元素一樣的長度,wrap_content則表示夠用就行,而Android:text 則表示元素顯示的文字內容。
其次,我們完成了button元素的設置,現在來將其顯示出來。
在創建好的Activity中的oncreate中添加一行代碼如下
setContentView(R.layout.first_layout)
在這行代碼中,調用了setContentView()方法,功能是給當前的activity載入一個佈局,在這個方法中我們要傳入一個佈局文件的id,此處的R.layout.first_layout中,R代表res,layout代表res中的layout文件夾,first_layout則代表了你要給的佈局名即標識符。
完成這段代碼編輯後點擊右上角Design便可查看效果,效果應該如下