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