UILabel с закругленным углом (Xcode 4.5 и iOS 6)

Я только что добавил компонент UILabel в представление, и я пытаюсь сделать его округленным углом UILabel. Я читал некоторые вопросы и ответы, связанные с одной и той же проблемой, но все они говорят, что мне нужно изменить исходный код. Действительно ли это необходимо в новых Xcode 4.5 и iOS6? Также Im не уверен, что Im способен видеть код, сгенерированный основной версией.

Любая помощь будет оценена.

Большое спасибо, Marcos

Ответ 1

чтобы сделать UILabel с закругленными углами, выполните следующие действия:

#import <QuartzCore/QuartzCore.h>

тогда вы должны обратиться к своему UILabel

yourLabel.layer.cornerRadius = 5;

5 - просто пример, конечно

Ответ 2

Вы можете сделать все это в Interface Builder.
В XCode выберите файл .xib (или раскадровку), чтобы открыть Interface Builder. Нажмите на UILabel и откройте инспектор удостоверений (если вы не знаете, где он находится, перейдите в меню справки XCode и введите "Идентификационный инспектор" ). Нажмите кнопку "плюс" в области "Атрибуты пользовательских параметров выполнения" и напишите layer.cornerRadius для Пути ключей, выберите Number для Типа и 5 (или любого другого номера) для значения.
Если вы запустите сейчас свой проект, вы должны получить круглый угол UILabel.

Ответ 3

Вам нужно #import "QuartzCore/QuartzCore.h" и где-нибудь на вашем коде

label.layer.cornerRadius = 2.0; // or whatever radius you want

Ответ 4

Вы можете сделать это в построителе интерфейса, добавив layer.cornerRadius в качестве одного из ключей в "Определенные пользователем атрибуты времени выполнения" в разделе "Identity Inspector".

Ответ 5

Добавьте фреймворк quartzcore в рамки проекта

import "QuartzCore/QuartzCore.h" 

используйте следующий код -

label.layer.cornerRadius = 2.0; // radius depend on how much rounded corner you want.
label.clipsToBounds = TRUE;

Ответ 6

Я думал, что поделился бы немного лучшим способом сделать это для более новых сред разработки (с Swift). В следующем коде вы получите специальное поле в интерфейсе Builder, которое позволяет установить радиус угла. Внутри Инспектор атрибутов, называемый "Просмотр", появляется новый подраздел, в котором есть элемент под названием "Угловой радиус"

#if !os(watchOS)
    // watchOS UI designer allows setting of a corner radius.  For
    // iOS and tvOS, an Interface Builder extension is needed.
    extension UIView {
        @IBInspectable var cornerRadius: CGFloat {
            get {
                return layer.cornerRadius
            }
            set {
                layer.cornerRadius = newValue
                layer.masksToBounds = newValue > 0
            }
        }
    }
#endif

Ответ 7

Да, это можно сделать только с помощью добавления кода, упомянутого другими парнями здесь. К сожалению, Interface Builder не может этого сделать сейчас.