Добавить значок кнопки iOS без пользовательского изображения

Есть ли пользовательский значок кнопки X или close, встроенный в iOS7, который можно использовать для кнопки закрытия?

Ответ 1

Ближайшей встроенной иконкой/изображением, которая выглядит как X или Кнопка закрытия на iOS 7, является образ UIBarButtonItemSystemStop. Вот ссылка на документацию от Apple. Ниже изображен системный образ (изображение которого можно подкрасить с помощью параметра iOS 7 tint):

UIBarButtonItemSystemStop

Вы также можете создать свой собственный - графически в Photoshop или просто используя текст (который будет соответствовать дизайну iOS 7). Просто созданный X будет делать! Даже UIBarButtonItem с "X", а затем установите стиль "Готово", вы получите полужирный X.

Другой (частный) пример real-iOS - это личные ресурсы UIKit - кнопка закрытия iAd. Попробуйте использовать приложение, например iOS Artwork Extractor для поиска и загрузки изображений UIKit. Изображения в UIKit принадлежат Apple; поэтому вам нужно будет создать свой собственный. Вы можете использовать изображения, представленные там для вдохновения, а затем создать свою собственную вещь в Photoshop.

Ответ 2

Конечно, это возможно.

UIBarButtonItem *closeButton = [[UIBarButtonItem alloc] 
    initWithBarButtonSystemItem:(UIBarButtonSystemItemStop) 
                         target:self 
                         action:@selector(doneButtonTapped:)];

self.navigationItem.rightBarButtonItem = closeButton;

Он дает вам встроенную кнопку "X", как показывает изображение.

x button

Успешно протестировано в Xcode 5 и iOS 7.

QUOTE FROM Sam:

Даже UIBarButtonItem с "X", а затем установите стиль "Готово", вы получите полужирный X.

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

Ответ 3

Буква X не визуально привлекательна, но символ & times; должен работать очень хорошо.

let buttonItem = UIBarButtonItem(title: "×", style: UIBarButtonItemStyle.Plain, target: nil, action: Selector(""))
let font = UIFont.systemFontOfSize(40)
buttonItem.setTitleTextAttributes([NSFontAttributeName: font], forState: .Normal)

Только я не могу получить вертикальное выравнивание вправо.. Даже с:

buttonItem.setTitlePositionAdjustment(UIOffsetMake(0, 10), forBarMetrics: .Default)

введите описание изображения здесь

Ответ 4

используйте UIBarButtonItem и установите его стиль UIBarButtonSystemItemStop может дать вам кнопку X. но я не уверен, что это то, что вы хотите.

Ответ 5

Символ unicode is близок.

Ответ 6

Это сложный вопрос. В идеале вы можете получить значок, созданный с помощью The Noun Project, чтобы получить более совершенную версию с пикселями.

То, что я использовал сам, это тип кнопки "Добавить контакт", а затем этот код используется для инициализации его во время загрузки, чтобы повернуть его на 45 градусов:

yourUILabel.transform = CGAffineTransform(rotationAngle: CGFloat.pi / 4)

Однако это не идеальное решение в моем варианте.

Надеюсь, это поможет!