- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NYUST CSIE EMISlab NYUST CSIE EMISlab NYUST CSIE EMISlab NYUST CSIE EMISlab * * NYUST CSIE EMISlab Outline 傳送資料到新活動(Intent) Intent傳遞資訊 Intent接收資訊 練習 Reference * NYUST CSIE EMISlab * Activity功能總結 * NYUST CSIE EMISlab * Intent 1.準備好意圖(Intent) 2交給startActivity 傳送 startActivity 地圖 Android 3.Android 框架接收到Intent,開始判斷 4.將Intent(和所帶的資訊)交給適合的Activity處理 瀏覽器 framework 撥號 Activity 傳送資料到新活動(Intent)-1 Q:What is Intent? A:Intent(意圖)是一個動作與內容的集合。 傳送到系統並且藉由其他Activity來處理裡面所指定的動作和內容 Intent包含Activity間切換所需要的動作、分類資料的訊息,可以想像成是Activity之間的宅急便 * NYUST CSIE EMISlab * 傳送資料到新活動(Intent)-2 Intent可分成兩類: 「現成的Intent」 之前的範例 「自訂的Intent 」 一般開發者在程式設計中自行撰寫的Intent,則是透過自訂Intent來處理 例如:切換Activity、在其間傳遞各式的資料 * NYUST CSIE EMISlab * 傳送資料到新活動(Intent)-3 Activity之間透過Intent傳送資訊的動作,可以分成: 「傳遞資訊」 「接收資訊」 * NYUST CSIE EMISlab * Intent傳遞資訊-1 我們將完成應用程式從一個頁面改成兩個頁面: 「輸入頁面」:原本的Activity 從介面上取得輸入數值,透過傳送Intent,將值攜帶到「結果頁面」 「結果頁面」: 從Intent中取得其所攜帶的值,經過計算後產生報告結果 * NYUST CSIE EMISlab * Intent傳遞資訊-2 把使用者輸入的數值、資料加到Bundle 再將Bundle包裝到Intent中,再透過Intent傳送到結果頁面中 * NYUST CSIE EMISlab * 從Bmi 到Report KEY_HEIGHT KEY_WEIGHT bundle Intent Intent傳遞資訊-3 將身高、體重 * NYUST CSIE EMISlab * BMIversion2.java 身高、體重等資料放入Bundle中,再把Bundle打包放到Intent裡 Intent接收資訊 * NYUST CSIE EMISlab * Report.java 接收從上一頁面傳來的Intent,並收到裡面的Bundle,再取出裡面的身高體重資訊作為計算用 練習 實作並完成計算BMI應用程式,使程式能在兩個Activity之間傳值功能,BMI Activity傳值,Report Activity接收BMI Activity的值計算並且顯示結果 有提醒使用者輸入格式功能 有選單列功能(選單列上有圖示) 連結到首頁 結束程式 * NYUST CSIE EMISlab * 程式架構分析 * NYUST CSIE EMISlab * BMI 身高(cm) 體重(kg) 計算 Report 結果 身高: 體重: BMI: 健康評語 首頁 離開 Bundle Intent Android Manifest.xml 執行結果-1 * NYUST CSIE EMISlab * 執行結果-2 * NYUST CSIE EMISlab * 延伸學習-1 在Report.java(Activity 2)中定義一個按鈕-(回上一頁) 當按下按鈕後,返回上一頁面(Activity 1),並且保留之前輸入的相關資訊 方法: 在BMIversion2.java(Activity 1) 使用startActivityForResult(intent名稱,0) 覆寫(Override)onActivityResult() * NYUST CSIE EMISlab * 延伸學習-2 延續上一頁 方法: 在Report.java(Activity 2) 在onClickListener中定義並且使用setResult(ResultCode,intnt名稱) * NYUST CSIE EMISlab * 程式碼 * NYUST CSIE EMISlab * BMIversion2.java 程式碼 * NYUST
原创力文档


文档评论(0)