看板 AndroidDev 關於我們 聯絡資訊
事情是這樣子的,我在做鬧鐘有早中晚三個 然後點擊switch選擇是否開關後會利用SP記錄按下的是哪個, 利用pendingIntent 做一個alertDialog 接著我在alertDialog 判斷SP的值 決定dialog的標題 程式碼如下 SharedPreferences getAlarmDetail = PreferenceManager .getDefaultSharedPreferences(getActivity()); switch (gotyou) { case 1: if (getAlarmDetail.getString("morningalarm", "off") == "on”) { ....... 先別管gotyou是什麼值XD 我現在確定它可以跑進去case 1裡面 但是跑到if的時候 條件一直不成立,可是我用system.out印出是on 這樣不是應該要成立嗎? 而且會出錯的時候只有在開啟程式後第一次點switch時,第二次之後就 一切正常了,所以應該是沒有錯字那些的。 麻煩大家了。 我研究了好久可是還是覺得沒有錯啊Q__Q -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.149.193 ※ 文章網址: http://www.ptt.cc/bbs/AndroidDev/M.1412242462.A.7C3.html
nanashi07: 字串用 == ? 用equal吧 10/02 17:47
justbearcry: 改用equal結果一樣...... 10/02 17:51
ckvir: 你用equal的寫法是怎寫? 10/02 18:13
ckvir: 另外你的"on" 後面的雙引號怪怪的 不知道是不是這個問題 10/02 18:18
ckvir: 不然就這樣寫看看 http://pastebin.com/sv8J0qiV 10/02 18:21
最後照著c大的寫就成功了!!! 謝謝兩位 只是為什麼如果用==只有第一次會失敗? ※ 編輯: justbearcry (140.113.149.193), 10/02/2014 20:22:16
charlesdc: 你的share_prefs有存預設值嗎?沒有當然預設是你打的off 10/03 04:26
charlesdc: 看錯...... 你的share_prefs用什麼存? commit? apply? 10/03 04:29
justbearcry: 用commit 10/04 10:20