IOS(13)の最新バージョンは、検索バーの背景色を無視しているようです。
iOS 13 UISearchBarの色合いの変更、同じ結果を達成することはできません
私はこれを使用しており、以下のすべてのバージョンで動作しますが、13では背景色を無視して白くします
<SearchBar HeightRequest="35" BackgroundColor="#2A4880" TextColor="White"></SearchBar>
これは既知の問題ですか?回避策はありますか?
これはIOS 13で私のために働きました、このバグに関するGithubディスカッションをチェックしてください
UISearchBar.SearchTextField.BackgroundColor = UIColor.White;
https://github.com/xamarin/Xamarin.Forms/issues/8041#issuecomment-544658047
GitHubの問題は https://github.com/xamarin/Xamarin.Forms/issues/8041
修正された最も単純なレンダラー
using App.Mobile.iOS.CustomRenderers;
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
[Assembly: ExportRenderer(typeof(SearchBar), typeof(FixedSearchBarRenderer))]
namespace App.Mobile.iOS.CustomRenderers
{
public class FixedSearchBarRenderer : SearchBarRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<SearchBar> e)
{
base.OnElementChanged(e);
if (UIDevice.CurrentDevice.CheckSystemVersion(13, 0) && Control != null)
{
Control.SearchTextField.BackgroundColor = UIColor.FromRGB(255, 255, 255);
}
}
}
}