Как добавить прямоугольник с закругленными углами (или прямоугольник) в интерфейсе iphone? - PullRequest
0 голосов
/ 03 декабря 2009

Я хочу добавить прямоугольник с закругленными углами в интерфейсе iphone, но библиотека iphone не имеет этого объекта. Как мне это сделать?

Ответы [ 3 ]

3 голосов
/ 03 декабря 2009

Вы создаете подкласс UIView, в котором вы

#import <QuartzCore/QuartzCore.h>

и установите свойство cornerRadius его слоя в коде на определенную величину:

self.layer.cornerRadius = 5;
self.clipsToBounds = YES;

Если хотите, вы можете создать свойство вашего объекта, скажем roundedCornerRadius, и прослушать его изменения, используя KVO , во фрагменте кода, похожем на

[self addObserver: self forKeyPath:@"roundedCornerRadius" options:0 context:nil];

//implement in your UIView subclass
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object                 
         change:(NSDictionary *)change context:(void *)context
{
    if ([keyPath isEqual: @"roundedCornerRadius"])
               self.layer.cornerRadius = roundedCornerRadius;
}
0 голосов
/ 07 июня 2010

Ответ Лювьера работал на меня.

Создан подкласс UIView для хранения подвидов, которые мне нужны, чтобы закруглить углы. (Я использовал IB).

Установите это представление как представление UIViewController.

Перегружен viewDidLoad в контроллере представления для вызова пользовательского метода "viewDidLoad" в настраиваемом представлении.

Вот где я устанавливаю угловой радиус для подпредставлений, которым нужны закругленные углы.

0 голосов
/ 03 декабря 2009

Создайте изображение прямоугольника со скругленными углами, которое вас интересует. Вы можете добавить это изображение к различным элементам управления пользовательского интерфейса.

...