私はあなたが私を助けてくれることを願っています:)私はsharedpreferencesからフォントファイルパスの文字列を取得したいです、そして文字列がない場合はアセットにデフォルトのフォントをロードします、大丈夫です。状態を安定させようとすると問題が発生します。こちらをご覧ください。
String filePath = new String(preferences.getString(String.valueOf(v.getId()+"font"),"default"));
Log.d("","choosed font: "+filePath);
if (filePath == "default"){
v.setTypeface((Typeface.createFromAsset(getAssets(),"fonts/Default.ttf")),preferencias.getInt(String.valueOf(v.getId()+"style"), 0));
}else{
v.setTypeface(Typeface.createFromFile(filePath),preferencias.getInt(String.valueOf(v.getId()+"style"), 0));
}
ご覧のとおり、filePath = defaultの場合、プログラムはデフォルトのフォントをロードしますが、プログラムは常に「else」内の順序を実行します。
ログを表示する順序は明確に示されています:選択されたフォント:デフォルト。私はputStringを一度もしたことがないので
では、なぜこの条件が満たされないのですか?