iT邦幫忙

2021 iThome 鐵人賽

DAY 10
1
自我挑戰組

Android Studio 初學者的30天筆記系列 第 10

DAY10:應用程式元件Activity之簡介

  • 分享至 

  • xImage
  •  

接下來要介紹到的是,最基本的應用程式元件----Activity,要在螢幕上顯示畫面,必須透過畫面配置元件(也就是layout)以及產生控制的應用元件(Activity),也將透過他來顯現圖片或文字或是地圖給使用者,或是將使用者的操作傳送給程式來做控制,所以說,Activity扮演著使用者介面的角色。簡單來說就是若有第二個畫面我們必須寫出第二個畫面的主程式碼,就是第二個Activity。
接下來,要產生一個Activity並對應Layout的名稱,我是用畫面原本預設的,MainActivity2跟activity_main2。
https://ithelp.ithome.com.tw/upload/images/20210925/20140488isA98Tx7uS.png
https://ithelp.ithome.com.tw/upload/images/20210925/20140488DsmxZwbWek.png
按下finish之後就會設立完成,這時候我們就會有兩個Activity以及兩個layout。
https://ithelp.ithome.com.tw/upload/images/20210925/20140488PqNtouemlC.png
接著介紹到切換兩個Activity該怎麼做,我們會利用Intent這個傳遞物件,這個詞字面上是意圖的意思,簡單說就是希望利用Intent使A意圖啟動B,我們需要使用startActivity()這個方法,Intent有兩個參數,第一個是我們要由哪個元件發起這個意圖,第二個是參數被動接受的對象是哪個元件。

Intent可以做到基本的切換之外,也可夾帶一些資料到接受意圖方,我們就要使用Intent傳遞資料的方法,以下是最簡單的傳遞資料語法,主要描述將MainActivity透過Intent切換到MainActivity2的意圖,並透過Intent傳送資料。
Input.putExtra()可以想像是把想傳遞的資料貼上標籤,接收的對象可以標籤去得到所要的資料。

接受到intent被喚起的MainActivity2如果想取得傳過來的資料,intent可以取得MainActivity傳過來的intent,extras可以取得底下夾帶的資料,使用getInt(key)方法找到傳遞的資料,返回值就是夾帶的資料,透過bundle可以一次打包不同的資料型態,打包時,需要依據形態透過putInt()或putString()來儲存資料。

接著介紹到返回資料,其最大的目的在於希望資料可以在了個Activity中往來,這時就會使用到startActivityForResult(),第一步,MainActivity使用startActivityForResult()方法啟動MainActivity2,再來,MainActivity2使用setResult()方法儲存要返回的資料,MainActivity使用finish()結束並返回MainActivity,最後,MainActivity使用onActivityResult()方法取得返回資料。
下一篇會透過小小的實作去應用這些功能。


上一篇
DAY9:元件與監聽事件簡介及實作
下一篇
DAY11:應用程式元件Activity之實作
系列文
Android Studio 初學者的30天筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
zoeke9011
iT邦新手 5 級 ‧ 2021-09-25 18:30:39

小小的實作!很棒耶一路看下來覺得好清楚!雖然很難!!/images/emoticon/emoticon24.gif

我要留言

立即登入留言