2011-03-10 10 views
1

私はユニバーサルiPhone/iPadアプリを持っています。メインメニューには、UIImageとUILabelがあり、現在の気象状況を外部に示しています。 UILabelは現在の温度を表示します。アプリがiPadで開いているときの位置UILabel

私は両方のバージョンで同じXIBを使用しています。私は高解像度を使用しているすべてのグラフィックスを作成したので、iPadに適しています。

iPhone版では、UIImageのすぐ下にラベルが中央に表示されています。これは私がしたいことです。 iPadにロードすると、UIImageはもっと大きくなりますが、ラベルは画面の左に同じ位置にとどまり、大きな画像の下に中央に表示されません。私はIBの中心にそれを得るために多くの異なったことを試みました、そして私はそれを得ることができません。

iPadに読み込んだときにテキストサイズを大きくすることは可能でしょうか?

iPhone版: http://img855.imageshack.us/i/iphonei.png/

iPad版:ここ

は、私が何を言っているか描写するためにいくつかの画像であり、ラベルの問題について http://img163.imageshack.us/i/ipadh.png/

答えて

2

わからないが、テキストのサイズを変更しますiPadの場合、あなたがiPad上にいるかどうかをテストし、それを使って必要に応じてコードを変更する機能を作成します。これは仕事をするための関数です。

BOOL isIPad() 
{ 
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) 
    { 
     return YES; 
    } 
    return NO; 
} 

次に条件コードを書きます。たとえば:

if (isIPad()) 
{ 
     [[self mainLabel] setFont: [UIFont systemFontOfSize: 18.0]]; 
} 
else 
{ 
     [[self mainLabel] setFont: [UIFont systemFontOfSize: 14.0]]; 
} 

Interface Builderは、あなたが悲しみ与えている場合は、あなたも同じアプローチを使用することができます。

あなたのケースでは
UIButton *infoCircle; 

    if (isIPad()) 
    { 
     infoCircle = [UIButton buttonWithType:UIButtonTypeInfoDark]; 
    } 
    else 
    { 
     infoCircle = [UIButton buttonWithType:UIButtonTypeInfoLight]; 
    } 

は、あなたのような何かをラベルのフォントサイズを調整したいと思いますプログラムでUILabelの位置を変更します。場合によっては、インターフェイスが落ち着いてからは、特にこれが早い場合もあります。

+0

ありがとうございます!ラベルを正しく配置し、TextAlignmentを左に設定して、必要な場所に移動させることができました。私はまだラベルのテキストサイズを大きくすることができませんでした。私はsizeWithFontを使ってみましたが、フォントサイズを変更しませんでした。 – RyanG

+0

私の答えには、ラベルを変更するテキストサイズを取得する私のアプリで使用するいくつかのコードを追加しました。どのようにUILabelのサイズを変更するかに応じて、フレームを設定するために使用しているCGRectを調整するか、ラベルを設定してビューに追加した後にsizeToFitメッセージを送信する必要があります。お役に立てれば。 IBでlabelを設定した場合、adjustsFontSizeToFitWidthプロパティを設定していないことを再度確認することができます。もしそうなら、iOSはフォントサイズをラベルサイズに縮小します。あなたの場合、あなたが望むものではないかもしれません。 – Obliquely

+0

フォントサイズが調整されました。 – RyanG

関連する問題