markdown
#說明
這偏要修理登入時的 Bug,因為在跳轉頁面時,若未登入成功,還是可以進入登入後頁面,下面會有流程圖影片補充說明。
#說明流程圖
#說明影片
#操作流程
- 流程分為以下幾點:
1.加入 public static
2.startActivityForResult
3.getintent
4.override
5.getstring(獲取輸入的帳號密碼)
6.log 顯示
##1.加入 public static
``` public static final int FUNC_LOGIN =1 ; ``` 這裡可以先說明 static 在 java 上的意義, static 是一個靜態類別變數,final 的意義在於不可改變 所以他是唯一值且不可改變的變數。 ##2.startActivityForResult
``` startActivityForResult(intent,FUNC_LOGIN); ``` startActivityForResult 是 activity 在轉換過程中,可以把值回傳回來。 參考: https://blog.xuite.net/viplab/blog/199238588-Intent%E3%80%81Bundle%E5%8F%8AstartActivityForResult%E6%95%99%E5%AD%B8 ##3.getintent
``` getIntent().putExtra("LOGIN_USERID",uid); getIntent().putExtra("LOGIN_PASSWD",pw); setResult(RESULT_OK,getIntent()); finish(); ``` 存取 intent 值 ##4.override
參考: 函數覆寫 ##5.getstring(獲取輸入的帳號密碼)
``` if (requestCode == FUNC_LOGIN) { if (resultCode == RESULT_OK) { String uid = data.getStringExtra("LOGIN_USERID"); String pw = data.getStringExtra("LOGIN_PASSWD"); Log.d("RESULT", uid + "/" + pw); } else { finish(); } } ``` ##6.log 顯示
``` public static final int FUNC_LOGIN =1 ; ``` 這裡可以先說明 static 在 java 上的意義, static 是一個靜態類別變數,final 的意義在於不可改變 所以他是唯一值且不可改變的變數。 ##2.startActivityForResult
``` startActivityForResult(intent,FUNC_LOGIN); ``` startActivityForResult 是 activity 在轉換過程中,可以把值回傳回來。 參考: https://blog.xuite.net/viplab/blog/199238588-Intent%E3%80%81Bundle%E5%8F%8AstartActivityForResult%E6%95%99%E5%AD%B8 ##3.getintent
``` getIntent().putExtra("LOGIN_USERID",uid); getIntent().putExtra("LOGIN_PASSWD",pw); setResult(RESULT_OK,getIntent()); finish(); ``` 存取 intent 值 ##4.override
參考: 函數覆寫 ##5.getstring(獲取輸入的帳號密碼)
``` if (requestCode == FUNC_LOGIN) { if (resultCode == RESULT_OK) { String uid = data.getStringExtra("LOGIN_USERID"); String pw = data.getStringExtra("LOGIN_PASSWD"); Log.d("RESULT", uid + "/" + pw); } else { finish(); } } ``` ##6.log 顯示
留言
張貼留言