2012-01-06 25 views
1

我有這個問題。我從一個系統文件中讀取BufferedReader文本,該文本包含例如5個字,但在另一種情況下,它可以包含更少或更多的單詞,然後將該文本(這些單詞)放到一個字符串中並將該字符串保存到共享首選項。然後,我從這個字符串做微調,如何將文本從微調器文件?

代碼在這裏:

Spinner spinner = new Spinner(this); 
    ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, yourString.split(" ")); 
    spinner.setAdapter(spinnerArrayAdapter); 

現在,如果例如微調有5個選項(5個字)和用戶選擇其中的一些話,我需要把這個單詞一個系統文件。 我使用echo命令進行插入。所以最好的情況是,如果我能將spinner中選定的單詞保存爲字符串共享首選項。我使用if(possition == 0)在正常微調器中進行選擇,但我認爲在這種情況下不可能使用它。

有人能幫我嗎?

+0

請說清楚。無法理解你想說什麼? – 2012-01-06 13:09:49

回答

1

可以通過編寫這行代碼

   spinner.getSelectedItem().toString(); 

       SharedPreferences pref = getSharedPreferences(
         "Preferences", 0); 
       SharedPreferences.Editor edit = pref.edit(); 
       edit.putString("ABC", spinner.getSelectedItem().toString()); 
       edit.commit(); 
+0

通過這個你會得到從微調選定的單詞的名稱。以便您可以將該字符串用於共享首選項。 – 2012-01-06 13:11:12

+0

看到編輯答案它也包含sharedpreferences代碼 – 2012-01-06 13:15:01

0

沒有得到你想要做的...... 你的全面的瞭解,但我認爲你想這是在微調選定的文本,然後分割你在一個陣列中字符串傳遞這個數組中的微調適配器。

之後使用onItemSelection方法,在這種方法中,你將獲得位置並從你的數組中獲取相應的記錄。

0

嘗試使用上一個ArrayAdapter中爲getPosition()方法來獲取選定的文本。

spinnerArrayAdapter.getPosition(savedstring);

如果保存的字符串第二次在數組中,那麼您可以將setSelection()調用到該位置,否則讓用戶知道(例如通過Toast)以前的選擇不再有效。