Created
February 14, 2019 17:44
-
-
Save ufukhawk/02722f7ae8f6eafe4fd501b14ffaf311 to your computer and use it in GitHub Desktop.
Burada ortak katmanda oluşturduğum Entry'i çağırarak verdiğim özelliklere göre revize edeceğim.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
namespace UISampleApp.iOS.Renderers | |
{ | |
public class ImageEntryRenderer : EntryRenderer | |
{ | |
protected override void OnElementChanged(ElementChangedEventArgs<Entry> e) | |
{ | |
base.OnElementChanged(e); | |
if (e.OldElement != null || e.NewElement == null) | |
return; | |
var element = (ImageEntry)this.Element; | |
var textField = this.Control; | |
if (!string.IsNullOrEmpty(element.Image)) | |
{ | |
switch (element.ImageAlignment) | |
{ | |
case ImageAlignment.Left: | |
textField.LeftViewMode = UITextFieldViewMode.Always; | |
textField.LeftView = GetImageView(element.Image, element.ImageHeight, element.ImageWidth); | |
break; | |
case ImageAlignment.Right: | |
textField.RightViewMode = UITextFieldViewMode.Always; | |
textField.RightView = GetImageView(element.Image, element.ImageHeight, element.ImageWidth); | |
break; | |
} | |
} | |
textField.BorderStyle = UITextBorderStyle.None; | |
CALayer bottomBorder = new CALayer | |
{ | |
Frame = new CGRect(0.0f, element.HeightRequest - 1, this.Frame.Width, 1.0f), | |
BorderWidth = 2.0f, | |
BorderColor = element.LineColor.ToCGColor() | |
}; | |
textField.Layer.AddSublayer(bottomBorder); | |
textField.Layer.MasksToBounds = true; | |
} | |
private UIView GetImageView(string imagePath, int height, int width) | |
{ | |
var uiImageView = new UIImageView(UIImage.FromBundle(imagePath)) | |
{ | |
Frame = new RectangleF(0, 0, width, height) | |
}; | |
UIView objLeftView = new UIView(new System.Drawing.Rectangle(0, 0, width + 10, height)); | |
objLeftView.AddSubview(uiImageView); | |
return objLeftView; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment