5

私は Stackoverflow と google を検索しました。私が見つけたのは、フォントを同じサイズのままにしたいが、画面が大きくなったときにフォントを大きくしたいという人への答えです。

具体的には、アプリケーションで非常に大きなフォントが必要です。私の携帯電話では、高さは 1/2 インチで、完璧です。私の問題は、私の 7 インチのタブレットでも高さが 1/2 インチであり、スケールアップして高さを約 1 インチにしたいということです。sp モードと dp モードを試しましたが、どちらもフォントの物理的な高さを同じに保ちますが、これは私が望むものではありません。3.2 以降のタブレットには新しい機能があるようですが、2.3 以降のデバイスをサポートしたいと考えています。テキストの幅に合わせてフォントを自動スケーリングするという複雑なコードを見たことがありますが、それは私が必要としているものではありません。フォントを、電話では 100sp、タブレットでは 200sp に相当するものにしたいと考えています。画面にはグラフィックスがなく、要素がほとんどない単純な相対レイアウトしかありません。大きな画面では、いくつかのテキストサイズを大きくする必要があります。私はそれが簡単だと思うだろうが、私はできる」

これは典型的なテキスト ビュー エントリです。

    <TextView
    android:id="@+id/textDistance"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/labelDistance"
    android:layout_centerHorizontal="true"
    android:text=""
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ffffff"
    android:textSize="100sp" />

これを行うための比較的簡単で簡単な方法はありますか?

4

2 に答える 2

5

「dp」または「dip」寸法 - 異なる画面で同じになるように特別に作られています。したがって、あなたの仕事に特別な次元はありません。

さまざまなテキスト サイズを実装するには、いくつかのスタイルを作成し、それらをフォルダーvalues-xlargevalues-largevalues-normalおよびに配置する必要がありますvalues-small

1 つのスタイルは次のようになります。

<style name="BigTextStyle">
    <item name="android:textSize">50dp</item> <!-- different values in different folders  -->
</style>

そして、テキストビューでスタイルリファレンスを提供するだけです:

<TextView 
    style="@style/BigTextStyle"
    ...
/>
于 2012-07-16T15:53:00.627 に答える
3

私はここでメソッドを使用しました:http://developer.android.com/guide/topics/resources/more-resources.html#Dimensionそしてdimens.xlsファイルに1行を追加しました:

<resources>

<dimen name="padding_small">8dp</dimen>
<dimen name="padding_medium">16dp</dimen>
<dimen name="padding_large">16dp</dimen>
<dimen name="font_size">200sp</dimen>

上記はviews-largeのファイルです。ビューファイルには、200spではなく100spがあります。

これで、タブレットのフォントが大きくなりました。ドキュメントによると、これはいくつかの新しい電話、5インチのもので問題になる可能性があり、それが新しいバージョンのAndroidでこれに対処する方法がある理由ですが、私はこれを古い電話で動作させたいので、 7インチのタブレット、これは私の問題を解決します。私をこれに導いた上記の解決策もうまくいくと確信しています。それはより単純に見え、Googleによってかなりよく文書化されていたので、私はこれを使用しました。

レイアウトファイルで、フォントサイズの特定のコールアウトを次のように変更しました。

    <TextView
    android:id="@+id/textDistance"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/labelDistance"
    android:layout_centerHorizontal="true"
    android:text=""
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#ffffff"
    android:textSize="@dimen/font_size" />
于 2012-07-16T20:29:07.113 に答える