私はアンドロイド用の実験的なアプリの設定を作成しようとしています。しかし、私は働くための環境設定を得ることができます。アンドロイドアプリの設定の値は自動的に保存されますか?
:私は右の言語を表示するには、このコードを使用ListActivityためのその後private String selectLang()
{
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String lang = preferences.getString("lang", "n/a");
return lang;
}
のonCreateメソッド内:
私は表示ラングを決定し、それを取得するために、この機能を使用使用したいの好み
String lang = selectLang();
String title = (lang == "english") ? "English" : "Arabic";
タイトルは、データベース内の列です。コードは機能していないようで、アラビア語は何に関係なく取得します。私はちょうどlangの値を知るためにこのコードを使用しました:
Toast.makeText(this, lang, Toast.LENGTH_LONG).show();
私は "英語"になりますが、英語は表示されません。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="lang">
<item>Arabic</item>
<item>English</item>
</string-array>
<string-array name="langValues">
<item>arabic</item>
<item>english</item>
</string-array>
</resources>
私はSharedPreferenceエディタを使用する必要がありますが、私はそれの完全な作業例を得ることができなかったように、ここでの回答の数で読んだことがある:
ここでは、リストのための私のXMLです。
助けてもらえますか?
ありがとうございました。なぜ私はそれを含むコード行と何かがあることを知っていた。 PHPのバックグラウンドからくると、OOPの設計やJavaなどのコンパイルされた言語を完全に理解することは本当に簡単ではありません。 –
Javaは私の好きな言語ですが、これはJavaのもっとも混乱しやすい構文だと思います(私だけではありません)。 1日あたり約5つ以上の質問があり、根本的な問題と同じ問題があります。 – MByD
最初の質問を参照してください:値を変更して保存するには、環境設定エディタを使用してコミットする必要があります。自動的には保存されません:SharedPreferences.Editor editor = preferences.edit(); editor.commit(); –