2012-01-06 4 views
1

この問題があります。私は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ワード)を含んでおり、ユーザーこれらの単語のいくつかを選択した場合、今、私はこの言葉を配置する必要があり1つのシステムファイル。 私は挿入のためにechoコマンドを使用します。したがって、選択した単語をスピナーから共有の環境設定に文字列として保存できるのが最善の方法です。通常のスピナーではif(possition == 0)を使用しますが、この場合は使用できません。

誰かが私を助けることができますか?あなたのスピナーアダプタで、この配列を渡す

+0

明確にしてください。あなたは何を言おうとしているのか理解できませんでしたか? –

答えて

1

あなたは、コード

   spinner.getSelectedItem().toString(); 

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

これにより、スピナーから選択した単語の名前が表示されます。その文字列を共有設定に使用できるようにします。 –

+0

編集した回答を参照してくださいsharedpreferencesコードも含まれています –

0

は、あなたが何をしたいのか、あなたの完全なアイデア... を得ていないが、私は、1つのアレイにあなたの文字列を分割、あなたはスピナーで選択されたテキストを取得したいと思います。

その後、onItemSelectionメソッドを使用します。このメソッドでは、位置を取得し、配列から対応するレコードを取得します。

0

ArrayAdapterのgetPosition()メソッドを使用してみてください、この行を書き込むことによって、テキストを選択することができます。

spinnerArrayAdapter.getPosition(savedstring);

保存された文字列が配列内に2回目にある場合は、その位置にsetSelection()を呼び出すことができます。そうでなければ、以前の選択が無効であることをユーザーに(たとえばToast経由で)知らせることができます。

関連する問題