2015-01-26 4 views
3

У меня есть UITextView с некоторыми текстами. Я хочу, чтобы большой экран имел больший размер шрифта, но формат тот же. Как я могу это сделать?Настройка размера шрифта в UITextView на экране разного размера

+0

Что вы имеете в виду, когда говорите «большой экран»? более крупный экран iPhone, такой как iPhone 6 или 6 плюс по сравнению с iPhone 5? –

ответ

4

Вы можете определить размер экрана устройства, используя UIScreen.mainScreen().bounds.height, и в зависимости от размера экрана вы можете установить другой размер шрифта.

Смотрите пример ниже:

let screenHeight = UIScreen.mainScreen().bounds.height 

switch screenHeight { 
case 480: // 3.5 inch 
    UIFont(name: "Helvetica", size: 16) 
case 568: // 4 inch 
    UIFont(name: "Helvetica", size: 17) 
default: // rest of screen sizes 
    UIFont(name: "Helvetica", size: 20) 
} 

Здесь вы можете проверить экран размером here

9

Я знаю, что это немного более продвинутый, чем кода только решения, которые вы уже нашли, но я побудит вас занять некоторое время и прочитать об адаптивных макетах: это будущее разработки пользовательского интерфейса для разных экранов на iOS.

Например, вы можете настраивать различные размеры и ориентации экрана с помощью классов размеров. Вы можете получить обзор здесь: width & height traits.

Вот несколько советов, если вам нужно, чтобы начать с нуля:

1

Вот все размеры экрана :)

let screenWidth = self.view.frame.size.width 

switch screenWidth { 
     case 320: // iPhone 4 and iPhone 5 
      label.font = UIFont(name: "Avenir-Book", size: 16) 
     case 375: // iPhone 6 
      label.font = UIFont(name: "Avenir-Book", size: 18) 
     case 414: // iPhone 6 Plus 
      label.font = UIFont(name: "Avenir-Book", size: 20) 
     case 768: // iPad 
      label.font = UIFont(name: "Avenir-Book", size: 25) 
     default: // iPad Pro 
      label.font = UIFont(name: "Avenir-Book", size: 30) 
     } 
Смежные вопросы