2017-09-18 8 views
0

私はSwiftで最初のアプリを完成させようとしています。 私は題名と背景画像でいくつかのボタンを持っています。異なるデバイス上でシミュレーションを実行すると、それらのスケールが変化するので、ボタンの枠内にタイトルが表示されます。 ない「動的な型は、自動的にフォント調整」私のXcodeでのチェックボックスは、私は、カスタムUIButtonクラスを作り、検査可能VARボタンのフォントをどのように縮尺するには

@IBInspectable var adjustFontSize : Bool { 
    set { titleLabel?.adjustsFontForContentSizeCategory = newValue } 
    get { return titleLabel!.adjustsFontForContentSizeCategory } 

をしたが、これはdoes'tので助け、私は「自動的にフォントが必要で調整してしまった検査官が属性はありません動的タイプのテキストスタイルを使用する」警告

ボタンのサイズと比率を異なるデバイスで変更すると、ボタンのフレームに合わせてボタンのタイトルスケールを変更するにはどうすればよいですか?

+2

あなたは本当にこの質問がスタックオーバーフローについて前に尋ねられていないと信じていますか? – matt

+0

質問はとてもシンプルなようですが、すべてのリソースを検索しても解決策が見つからないと思います。それを私に提供してください。 – DimitryTheBlack

答えて

-2

は、これらの

button.titleLabel!.numberOfLines = 1 
button.titleLabel!.adjustsFontSizeToFitWidth = true 
button.titleLabel!.baselineAdjustment = .alignCenters 

してみたが、それらが機能するためには、ストーリーボードやプログラム的にいずれかのボタン幅の制約を設定する必要があります。

これにより、ボタンの幅に基づいてタイトルのサイズが変更されます。

+0

返事をありがとう。私はこの調整をしようとしましたが、ボタンが水平にスケーリングされているときは役に立ちません。ボタンの上端と下端の端から小滴が飛び出します。 Swiftには "scaleToFitHeight"はありません – DimitryTheBlack

+0

これは私にとってうまくいっているので、2行でタイトルを読み込もうとしています。幅に基づいてテキストのサイズを変更するので、これがうまくいくはずです。または、ボタンの高さが設定している幅に比べて小さすぎるため、タイトルが高さよりも大きくなります。 –

+0

私はボタンにいくつかのシンボルしかないので、2行にする必要はありません( – DimitryTheBlack

関連する問題