iT邦幫忙

2023 iThome 鐵人賽

DAY 12
0
Mobile Development

用30天學習做出我的第一個Flutter App系列 第 12

Day12 [Flutter通訊錄實作]-登入頁面

  • 分享至 

  • xImage
  •  
  • 接著要來製作登入頁面, 會有一個圖片logo、一個密碼輸入框、一個登入按鈕,可以用鍵盤輸入四位密碼

    先放上做好的成果!
    https://ithelp.ithome.com.tw/upload/images/20230927/20163063pPIOelEu29.png

  • 那就開始來寫LoginPage.dart的程式碼

    1. 先import material package和Constants。這裡不需要儲存任何類型的資料,所以建立的是Stateless Widget,接著初始化一個負責處理文字編輯的TextEditingController。然後一樣要實作一個 build 方法。
      https://ithelp.ithome.com.tw/upload/images/20230927/20163063A4HWwwCKNg.png
    2. 接著要在build建立變數
    • Logo圖片
      • 先處理圖片:
        • 將要用的圖片放在我們建好的assets/images資料夾裡。
        • 接著更新一下pubspec.yaml檔案,來告訴Flutter將assets/images/資料夾中的圖像包含在app中。(要放在flutter:區塊才可以!)https://ithelp.ithome.com.tw/upload/images/20230927/20163063tmihtsmq0c.png
      • 回到LoginPage.dart宣告Logo變數
        https://ithelp.ithome.com.tw/upload/images/20230927/20163063ZWz0mf9wX4.png
    • 密碼輸入框
      • 接著是pinCode,是一個TextFormField,可以用來接收使用者輸入的PIN碼。
        https://ithelp.ithome.com.tw/upload/images/20230927/20163063GkWcMrqbzV.png
    • 登入按鈕
      • 這裡文章裡原本使用的是RaisedButton,但RaisedButton在Flutter2.0版本後就被棄用改為使用ElevatedButton了!
        https://ithelp.ithome.com.tw/upload/images/20230927/201630632va9zjW02J.png
    • return Scaffold
      • Scaffold可以將建好的元件在 ListView 中組合在一起。
        https://ithelp.ithome.com.tw/upload/images/20230927/20163063cfzshOJZlZ.png
  • main.dart

    • import LoginPage
    • 將home改為LoginPage()
      https://ithelp.ithome.com.tw/upload/images/20230927/201630635Mop3gchUd.png
  • constants.dart

    • 宣告一些LoginPage會用到的新變數,最後會如下:
      https://ithelp.ithome.com.tw/upload/images/20230927/20163063WpKCKRUsAM.png

參考資料:
https://www.appcoda.com.tw/flutter-basics/


上一篇
Day11 [Flutter通訊錄實作]-製作主頁
下一篇
Day13 [Flutter通訊錄實作]-聯絡人列表頁面(1)
系列文
用30天學習做出我的第一個Flutter App30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言