2017-04-19 13 views
0

ログインと呼ばれるボタンがあります。ボタンのフォントサイズを見ると、すべてのデバイスで同じに見えますが、ボタンの幅と高さは変わります。どのようにデバイスごとに異なるフォントサイズを定義する?私はiPhoneの肖像画だけについて話しています。だから、サイズクラスとしての解決策を提示しないでください。異なるデバイスの異なるフォントサイズをUIButtonに設定する

+0

を試してみてください。 – KKRocks

+1

[異なるデバイスの単一サイズクラス内の異なるフォントサイズのiOS]の可能な複製(http://stackoverflow.com/questions/28076020/ios-different-font-sizes-within-single-size-class-for-different-デバイス) – KKRocks

答えて

0

ストーリーボードでフォントサイズのバリエーション - フォントサイズを定義することができます。下の画像を見て、フォントサイズを定義する方法を示します。

enter image description here

Fontプロパティのほかに、小さな+ボタンをクリックし、ポップアップが表示されます。

上記の画像に示すように、さまざまなバリエーションに対してWidthHeightのサイズを定義できます。

0

iPhoneデバイスのサイズを確認してから、if-elseループでボタンのフォントサイズロジックを適用できます。

#define iPhoneVersion ([[UIScreen mainScreen] bounds].size.height == 568 ? 5 : ([[UIScreen mainScreen] bounds].size.height == 480 ? 4 : ([[UIScreen mainScreen] bounds].size.height == 667 ? 6 : ([[UIScreen mainScreen] bounds].size.height == 736 ? 7 : ([[UIScreen mainScreen] bounds].size.height == 736 ? 61 : ([[UIScreen mainScreen] bounds].size.height == 736 ? 61 : (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? 10 :61))))))) 

if (iPhoneVersion == 4) 
{ 
    mybutton.titleLabel.font = [UIFont systemFontOfSize:12]; 
} 
else if (iPhoneVersion == 5) 
{ 
    mybutton.titleLabel.font = [UIFont systemFontOfSize:14]; 
} 
else if (iPhoneVersion == 6) 
{ 
    mybutton.titleLabel.font = [UIFont systemFontOfSize:16]; 
} 
else if (iPhoneVersion == 7) 
{ 
    mybutton.titleLabel.font = [UIFont systemFontOfSize:17]; 
} 

と同じです。

0

は、あなたがこのためにサイズクラスを使用することができ、この

if UIScreen.mainScreen().bounds.size.height == 480 { 
    // iPhone 4 
    mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)  
} else if UIScreen.mainScreen().bounds.size.height == 568 { 
    // IPhone 5 
    mybutton.titleLabel.fontt = mybutton.titleLabel.font.fontWithSize(20) 
} else if UIScreen.mainScreen().bounds.size.width == 375 { 
    // iPhone 6 
    mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20) 
} else if UIScreen.mainScreen().bounds.size.width == 414 { 
    // iPhone 6+ 
    mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20) 
} else if UIScreen.mainScreen().bounds.size.width == 768 { 
    // iPad 
    mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20) 
} 
関連する問題