こんにちはうまくいけば、これはよく書かれた質問であるための基準を満たしています。私はプログラミングに不慣れで、Androidで登山者向けのアプリケーションを作成しようとしています。このアプリケーションは、トレーニング期間中の現在の能力に基づいて、登山者が何を登るべきかをユーザーに通知します。このアプリでは、ユーザーが登山能力と壁の長さを入力する必要があります。
SharedPrefences
これを使用して、数値編集テキストフィールドとリストを使用して設定メニューを設定しました。編集テキストの文字列をfloat/double / intとして使用しようとしたため、最初はクラスキャスト例外が発生しました(3つすべてを試しました!)。
そのエラーを解決するために文字列をdoubleに変換しましたが、解決策を見つけることができなかっDouble = Double.valueof(StringFromPrefernce)
たエラーを生成しています。java.util.FormatFlagsConversionMismatchException: %o does not support ' '
このアプリでは、ユーザーは最初に設定メニューにアクセスできますが、値を設定すると、設定メニューにアクセスしようとすると、この強制終了が発生します。
解決:
私のpreferences.xmlで、文字列を参照していました。その文字列には、強制終了の原因となる%記号が含まれていました。%記号を削除すると、問題が修正されました。