Remove the 1px border under UISearchBar
I'm having trouble removing that 1px border directly under the UISearchBar view. Now it doesn't look matched up with my done button view. I've tried:
searchBar.layer.borderWidth = 0;
searchBar.layer.sh开发者_如何学CadowOpacity = 0;
But that doesn't seem to be working. Any ideas?
Nevermind, I just did:
searchBar.layer.borderWidth = 1;
searchBar.layer.borderColor = [[UIColor whiteColor] CGColor];
and it works!
[searchBar setBackgroundImage:[UIImage new]];
For Swift version, tested on iOS9:
searchBar.backgroundImage = UIImage()
It would show like this:
In order to overcome this in Xamarin Forms, you'll need to create a CustomRenderer
to the SearchBar
class.
Like this:
using System;
using Xamarin.Forms.Platform.iOS;
using Xamarin.Forms;
using MyProject.iOS;
[assembly: ExportRenderer(typeof(SearchBar), typeof(CustomSearchBarRenderer))]
namespace MyProject.iOS
{
public class CustomSearchBarRenderer:SearchBarRenderer
{
protected override void OnElementChanged (ElementChangedEventArgs<Xamarin.Forms.SearchBar> e)
{
base.OnElementChanged (e);
if (this.Control == null) return;
this.Control.BackgroundImage = new UIKit.UIImage ();
}
}
}
精彩评论