Как нарисовать прямоугольник в iphone sdk, используя основную графику
Как нарисовать пунктирную прямоугольную рамку на iphone?
Ответы (3)
Это пять прямоугольников.
Вы создаете CGPath для прямоугольника с пунктирной линией, обводите его, а затем создаете четыре маленьких CGPath для маркеров и обводите их.
Я бы рекомендовал обойтись без ручек. Они имеют смысл, когда вы используете мышь; с сенсорным экраном не очень.
В частности, если вы посмотрите реальную справочную документацию iPhone для CGPath
, вы найдете раздел о CGPathAddRect. После этого вы, вероятно, найдете раздел руководства по 2D на Рисование пути полезно.
CGPathAddRect
Добавляет прямоугольник к изменяемому графическому контуру.
void CGPathAddRect (
CGMutablePathRef path,
const CGAffineTransform *m,
CGRect rect
);
Параметры
путь
Изменяемый путь для изменения.
m
Указатель на матрицу аффинного преобразования или NULL, если преобразование не требуется. Если указано, Quartz применяет преобразование к прямоугольнику перед добавлением его к пути.
rect
Добавляемый прямоугольник.
Обсуждение
Это удобная функция, которая добавляет прямоугольник к пути, используя следующую последовательность операций:
// start at origin
CGPathMoveToPoint (path, m, CGRectGetMinX(rect), CGRectGetMinY(rect));
// add bottom edge
CGPathAddLineToPoint (path, m, CGRectGetMaxX(rect), CGRectGetMinY(rect));
// add right edge
CGPathAddLineToPoint (path, m, CGRectGetMaxX(rect), CGRectGetMaxY(rect);
// add top edge
CGPathAddLineToPoint (path, m, CGRectGetMinX(rect), CGRectGetMaxY(rect));
// add left edge and close
CGPathCloseSubpath (path);
Доступность
Доступно в iPhone OS 2.0 и более поздних версиях.
Объявлено в
CGPath.h