2017-04-11 45 views
0

因此昨天我介紹了sharedprefrences並開始構建一些代碼。我有一個簡單的輸入,用戶輸入3個字符串和3個時鐘時間。根據sharedPreferences中保存的內容在alertdialog上顯示的具體輸出

因此,這是數量

String kolicina_main = sharedPreferences.getString("dnevna_kolicina",null); 

這是basicly你每天有多少時間做一些事情。然後:

String ura1_main = sharedPreferences.getString("ura1",null); 
         String ura2_main = sharedPreferences.getString("ura2",null); 
         String ura3_main = sharedPreferences.getString("ura3",null); 

這些是用戶設置的3個clocs。

這是我的問題。例如,如果用戶每天選擇1x時間,我想只在第一次顯示alertdialog。如果他每天選擇2次,我想顯示clock1和clock2。

到目前爲止,如果我在模擬器上輸入數據,並選擇每天3次一次顯示了3個,如果我選擇2次就說明2.問題是,當我關閉仿真器,然後重新打開,我點擊顯示我的數據即使它說我每天需要2次,也能獲得0個時鐘。

任何想法,我錯了。

public void viewAll(){ 

     pregled_nastavitev.setOnClickListener(
       new View.OnClickListener(){ 
        @Override 
        public void onClick (View view){ 
         SharedPreferences sharedPreferences = getSharedPreferences("nastavitve_uporabnika", Context.MODE_PRIVATE); 
         String bolecina_main = sharedPreferences.getString("bolecina",null); 
         String zdravilo_main = sharedPreferences.getString("zdravilo",null); 
         String kolicina_main = sharedPreferences.getString("dnevna_kolicina",null); 
         String ura1_main = sharedPreferences.getString("ura1",null); 
         String ura2_main = sharedPreferences.getString("ura2",null); 
         String ura3_main = sharedPreferences.getString("ura3",null); 

         String bolecina_main1 = bolecina.getText().toString(); 
         String zdravilo_main1 = zdravilo.getText().toString(); 
         String kolicina_main1 = kolicina_zdravila.getText().toString(); 
         String ura1_main1 = ura1.getText().toString(); 
         String ura2_main1 = ura2.getText().toString(); 
         String ura3_main1 = ura3.getText().toString(); 

         if (bolecina_main == null && zdravilo_main == null && kolicina_main == null && ura1_main == null && ura2_main == null && ura3_main == null){ 
           showMessage("Napaka","Ni najdenih podatkov!"); 
          return; 
         } 
         else { 
         StringBuffer buffer = new StringBuffer(); 

          buffer.append("Vaša bolečina: "+ sharedPreferences.getString("bolecina", "")+"\n"); 
          buffer.append("Vaše zdravilo: "+ sharedPreferences.getString("zdravilo", "")+"\n"); 
          buffer.append("Zdravilo vzamem: "+ sharedPreferences.getString("dnevna_kolicina", "")+" x dnevno!"+"\n"); 

          if (kolicina_zdravila.getText().toString().equals("1")){ 
           buffer.append("Prvič ob: "+ sharedPreferences.getString("ura1", "")+"\n"); 
          } 
          if (kolicina_zdravila.getText().toString().equals("2")){ 
           buffer.append("Prvič ob: "+ sharedPreferences.getString("ura1", "")+"\n"); 
           buffer.append("Drugič ob: "+ sharedPreferences.getString("ura2", "")+"\n"); 
          } 
          if (kolicina_zdravila.getText().toString().equals("3")) { 
           buffer.append("Prvič ob: " + sharedPreferences.getString("ura1", "") + "\n"); 
           buffer.append("Drugič ob: " + sharedPreferences.getString("ura2", "") + "\n"); 
           buffer.append("Tretjič ob: " + sharedPreferences.getString("ura3", "") + "\n"); 
          } 

          showMessage("Vaši podatki",buffer.toString()); 
        } 
        } 
       } 
     ); 


    } 

    public void showMessage (String title, String message){ 

     AlertDialog.Builder builder=new AlertDialog.Builder(this); 
     builder.setCancelable(true); 
     builder.setTitle(title); 
     builder.setMessage(message); 
     builder.show(); 
    } 
} 

回答

0

我自己發現了錯誤。正在檢查錯誤的情況。

    if (sharedPreferences.getString("dnevna_kolicina", "").toString().equals("1")){ 
         buffer.append("Prvič ob: "+ sharedPreferences.getString("ura1", "")+"\n"); 

        } 
        if (sharedPreferences.getString("dnevna_kolicina", "").toString().equals("2")){ 
         buffer.append("Prvič ob: "+ sharedPreferences.getString("ura1", "")+"\n"); 
         buffer.append("Drugič ob: "+ sharedPreferences.getString("ura2", "")+"\n"); 

        } 
        if (sharedPreferences.getString("dnevna_kolicina", "").toString().equals("3")) { 
         buffer.append("Prvič ob: " + sharedPreferences.getString("ura1", "") + "\n"); 
         buffer.append("Drugič ob: " + sharedPreferences.getString("ura2", "") + "\n"); 
         buffer.append("Tretjič ob: " + sharedPreferences.getString("ura3", "") + "\n"); 

        }