0

私は現在、AndroidのSharedPreferences.

バインドされた設定をいくつか設定しましたEditTextPreference-したがって、コンテンツはStringタイプであり、次のようにアクセスします:

String defaultValue = "1337";
String value = preferences.getString("key", defaultValue);

intしかし、 valueで作業したい場合はどうでしょうか?

int defaultValue = 1337;
int value = Integer.parseInt(preferences.getString("key", String.valueOf(defaultValue)));

より良い方法はありますか?EditTextPreferenceどういうわけか入力するように設定できますintか?

4

2 に答える 2

1

どういうわけか EditTextPreference を int 型に設定できますか?

いいえ、申し訳ありません。の独自のカスタム サブクラスを作成することができます。DialogPreferenceおそらく のサブクラスでさえEditTextPreference(それがどれほど柔軟かはわかりません)、値を に整数値として保存しますSharedPreferences

于 2012-04-25T23:18:03.913 に答える
1

数値をテキストとして編集したくはありませんが、パワー ユーザー向けの二次的な方法として使用する場合を除きます。値を制限する方法はたくさんあります (例: 最小値/最大値、または列挙値)。構造上正しい結果を返すウィジェットを使用することは理にかなっています。プログラミングの観点とUXの両方から。

于 2012-04-25T23:21:48.920 に答える