UIView.Draw(CGRect) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Рисует представление в переданном прямоугольнике.
[Foundation.Export("drawRect:")]
[ObjCRuntime.ThreadSafe]
public virtual void Draw (CoreGraphics.CGRect rect);
abstract member Draw : CoreGraphics.CGRect -> unit
override this.Draw : CoreGraphics.CGRect -> unit
Параметры
- rect
- CGRect
Изображение RectangleF для отрисовки.
- Атрибуты
Комментарии
Метод Draw(CGRect) никогда не должен вызываться напрямую. Он вызывается iOS во время обработки цикла выполнения. При первом выполнении цикла он вызывается. После этого он будет вызываться по запросу всякий раз, когда представление помечено как нуждающееся в отображении путем вызова SetNeedsDisplayInRect(CGRect) или SetNeedsDisplayInRect(CGRect).
Core Graphics использует точки, независимые от устройства, а не пиксели. Это позволяет масштабировать код рисования между различными разрешениями. Например, на дисплее Retina 1 точка эквивалентна 2 пикселям, а на дисплеях, отличных от Retina, 1 точка соответствует 1 пикселю.
public override void Draw (RectangleF rect)
{
base.Draw (rect);
var context = UIGraphics.GetCurrentContext ();
context.SetLineWidth(4);
UIColor.Red.SetFill ();
UIColor.Blue.SetStroke ();
var path = new CGPath ();
path.AddLines(new PointF[]{
new PointF(100,200),
new PointF(160,100),
new PointF(220,200)});
path.CloseSubpath();
context.AddPath(path);
context.DrawPath(CGPathDrawingMode.FillStroke);
}
Его можно использовать из фонового потока.