2022/03/28 - Xamarin.Forms WPF Font

Xamarin.Forms 5.0.0にアップデートしてずっと困っていた問題が解決。ようやくウェザタイのWindows Desktop版がまともに動くようになった。

Xamarin.Forms 4.8からWPFのフォント指定ができなくなった。ウェザタイの?ボタン等にGoogleのマテリアルアイコンを使っているのだが、豆腐になってしまう。GitHubのバグ報告にもあがっていて5.0.1で修正されることになっていたので待っていたのだが、1年以上そのまま。.NET MAUIに移行しようにもまだ正式リリースされないため、Visual StudioのPreview版を入れると環境がおかしくなるのでやりたくない。

ということでウェザタイのバージョンアップが止まっていたのだが、いろいろ大会や配信なども行われていて、修正したいところが増えてきたため、本格的に調査。

Xamarinの該当するソースコードを読んでみて、組み込んで実行してみると、どうもURLを指定する方法からリソースファイルを取ってくる方法に変わっている。で、いろいろ探っているとフォントを指定する新しい方法が紹介されていた。各プラットフォームでそれぞれフォントを指定していたのを、共通のプロジェクトで指定できるようになったらしい。これを設定したら表示されるようになった。

だったら、「(古い方法が使えなくなったのは)バグだから修正する」ではなく「新しい方法を使ってくれ」と言って欲しいのだが・・・。


コメントする