0

私はアプリを書いています。アプリの一部に1行のテキストが表示されます。そのテキスト行が複数行を占める特定のシナリオがあります。問題は、1行だけを占めるようにしたいことです。また、javaまたはxmlのいずれかで1行だけを占めるように設定すると、テキストが途切れます。テキストのフォントサイズを自動的に調整して、途切れることなく1行だけを占めるようにするにはどうすればよいですか?

4

2 に答える 2

3

Paint.measureText()と一緒にプロポーションを使用します。

(テキストサイズ/メジャーテキスト幅)=(perfectSize / screenWidth)

完璧なテキストサイズを解決する:

perfectSize = (text size / measureText width) * screenWidth;

getWindowManager().getDefaultDisplay().getWidth()画面の幅は、Displayクラスから確認できます。

それを数学の問題に変えました!

于 2011-04-06T00:55:17.517 に答える
0

Paint#measureTextを使用する場合、これを行うのはそれほど難しくありません。

基本的には、フォントの高さを自分の高さよりも小さくしてTextViewから、さまざまなサイズのフォントを繰り返して(またはバイナリ検索を実行して)、の幅よりも小さいフォントを見つけますTextView

フレームワークによって提供される「自動」方法がないため、いくつかの実装が必要です。

于 2011-04-05T22:55:02.733 に答える