Как создать uiview, который выглядит так, а также его subview получить тот же эффект. После поиска в Интернете я нашел, что это может сделать CALayer, но у меня недостаточно знаний об этом. Пожалуйста, помогите мне. Заранее спасибо.Как я могу создать кривую UIView/UIImageView не с анимацией?
ответ
Upto моих уровней и моего понимания я сделал некоторые кодирования, которые могут полезно для вас .. Если нет, пожалуйста, игнорировать его ..
первый Создать настраиваемое представление из нового файла
Далее нам нужно изменить класс свойства ViewController's view из UIView на наш класс CustomView. Откройте MainStoryboard.storyboard и в наброске документа нажмите на значок «Вид». Затем откройте инспектор идентификации (опция + команда + 3) и измените имя класса на CustomView.
затем добавить этот код в пользовательском View
- (void)drawRect:(CGRect)rect
{
// Drawing code
UIImage *imageRecipe =[UIImage imageNamed:@"statement_card_1.png"];
UIImageView *imgView = [[UIImageView alloc]initWithFrame:CGRectMake(0 ,0 ,290, 200)];
imgView.image = imageRecipe;
[self addSubview:imgView];
CGPoint secondPoint = CGPointZero;
CGPoint point1 = CGPointZero;
CGPoint initial = CGPointZero;
UIBezierPath *aPath = [UIBezierPath bezierPath];
initial = CGPointMake(30, 60);
[aPath moveToPoint:initial];
CGPoint point = CGPointMake(290, 60);
CGPoint centerPoint = CGPointMake(point.x/2, -10);
[aPath addQuadCurveToPoint:point controlPoint:centerPoint];
secondPoint = CGPathGetCurrentPoint(aPath.CGPath);
[aPath addLineToPoint:CGPointMake(secondPoint.x, 200.0)];
point1 = CGPathGetCurrentPoint(aPath.CGPath);
CGPoint p = CGPointMake(initial.x,point1.y);
CGPoint cp = CGPointMake(point1.x/2 ,point1.y/2 + 30);
[aPath addQuadCurveToPoint:p controlPoint:cp];
[aPath addLineToPoint:CGPointMake(initial.x, secondPoint.y)];
[aPath closePath];
[aPath stroke];
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = imgView.bounds;
maskLayer.path = aPath.CGPath;
imgView.layer.mask = maskLayer;
}
Нет, его не работает, просто нарисуйте кривую на изображении. и замаскировать его. Thnx для ответа – BHASKAR
не будет происходить без OpenGL или какого-либо другого двигателя. вы не можете таким образом преобразовать CALayer. Основная идея слоя заключается в том, что это плоскость.
Возможно, это подделка с изображением и некоторыми повернутыми видами или что-то еще?
- 1. Как я могу создать ступень/кривую лестницы?
- 2. Как я могу взаимодействовать с анимацией?
- 3. Как создать TextSwitcher с анимацией
- 4. Как создать кривую область содержимого?
- 5. Я хочу создать кривую 90 градусов
- 6. Как создать кривую с помощью MatLab Simulink
- 7. Создать эллиптическую кривую границу
- 8. Почему я не могу открыть/закрыть несколько div с анимацией?
- 9. Как я могу сделать этот Jquery animate() с анимацией css3?
- 10. Как я могу оживить функцию scrollTop с анимацией
- 11. Как создать кривую для строк при рукописном
- 12. Как создать меню пользовательских действий с анимацией
- 13. Как создать кривую генератора командной строки?
- 14. Как создать галерею изображений с анимацией
- 15. Как создать кривую Безье в JavaScript?
- 16. RateOfCountsPerSecond32 дает кривую, а не гладкую кривую
- 17. SVG, как создать кривую Безье 180 дегресов?
- 18. R Программирование: как создать настраиваемую кривую соответствия?
- 19. как создать кривую колокола с использованием файла данных
- 20. Как создать кривую хвост для пузыря речи с помощью CSS?
- 21. Javafx: Как я могу создать анимацию с 3D-дорожкой?
- 22. Я не могу создать файл
- 23. Я не могу создать файл
- 24. Создать форму с анимацией на холсте
- 25. Могу ли я открыть макет ящика с анимацией программно?
- 26. Как создать кривую Maya Nurbs в соответствии с общей цепочкой?
- 27. Могу ли я установить LayoutTransition с анимацией (вместо Animator)?
- 28. создать кривую Безье из дуги в javascript
- 29. Как я могу сделать содержимое загрузки UIWebView анимацией?
- 30. Я не могу создать эшафот?
Я не думаю, что вы можете использовать Quartz или UIKit. Конечно, вы можете построить изогнутый путь, используя путь безье, но они применимы только к тому, что он рисовал, а не к subviews или подуровню. Используя кварц и CATransform3D, вы можете достичь своего рода трехмерных перспективных видов.
Что вы хотите сделать, это долг OpenGL. – Andrea
без открытого gl это не возможно? – BHASKAR
В чем проблема с использованием изображения с некоторой прозрачностью? –