Ответ 1
В руководстве по человеческому интерфейсу конкретно описывается, как работают UIButtons в системном стиле по умолчанию. В нем объясняется, что кнопка системы:
- По умолчанию не имеет границы или фона...
- Поддержка пользовательских украшений, таких как рамка или фоновое изображение (до
добавьте пользовательский внешний вид, используйте кнопку типа
UIButtonTypeCustom
и поставьте пользовательское фоновое изображение).
Однако страница UIButton HIG предоставляет немного больше информации, в частности:
Если вы не указали явно цвет оттенка, кнопка наследует цвет его оттенков.
Это объясняет, почему после изменения вашей кнопки на UIButtonTypeSystem
вам вдруг придется reset (удалить) цвет оттенка. В iOS7 (почти) все имеет цвет оттенка. A UIButtonTypeSystem
более подходит для ваших нужд сейчас в iOS7 (немного боль, если есть много, чтобы изменить вручную, хотя...)
Что касается того, почему кнопки уменьшаются в iOS7... Я согласен с комментарием @Joseph относительно фреймов просмотра UIViewController
в iOS7. Вероятно, у вас есть определенное отношение к размеру кнопок, которые не играют хорошо, когда кадр ViewController изменяется в iOS7 (см. этот вопрос SO для обсуждения). Как вам посоветовали, ознакомьтесь с руководство по переходу iOS7, чтобы узнать, идет ли что-то, что вы делаете в IB, против нового iOS7-зерна.