1

EditTextPreference 値を文字列から int に変更できません。私はこのようにしました:

WifiOnOffValue = (EditTextPreference) findPreference("WifiOnOffValue");
String value = WifiOnOffValue.getText().toString();
if(value != null && !value.isEmpty()) {
    try {
        vedit = Integer.parseInt(value);
    } 
    catch (NumberFormatException ex) {
        ex.printStackTrace();
        vedit = 0;
    }
}

そして、エラーが発生しますjava.lang.Integer cannot be cast to java lang.String... EditTextPreference の値を整数に変換する必要があります。ありがとう

ログ: ここに画像の説明を入力

コード:

        //-- Edittext Wifi
        WifiOnOffValue = (EditTextPreference) findPreference("WifiOnOffValue");

        String value = WifiOnOffValue.getText().toString().trim();
        if(value!=null && !value.isEmpty()){
            try{
                vedit = Integer.parseInt(value);
            } catch (NumberFormatException ex) {
                ex.printStackTrace();
                vedit=0;
            }
        }

解決済み..これが解決策でした.PreferenceActivityのClassCastExceptionは、間違った値を保存しているようです..今、私はアプリを起動でき、うまくいくようです..私にとっての解決策は、単にアプリケーションをアンインストールして再インストールすることでした..とても奇妙です. とにかくみんなに感謝

4

3 に答える 3

0

使用String value = WifiOnOffValue.getText().toString().trim()してログアウトして、の値が何であるかを確認してvalueください

于 2014-04-29T07:46:30.537 に答える
0

変数 vedit の型を確認していただけますか?文字列として間違って宣言されていますか?

于 2014-04-29T07:28:38.000 に答える