2012-02-04 4 views
1

Newbie Javaの質問 - テキストビューの自動スケーリングに関するすべての投稿で、提供されたクラスの実際の使用方法は誰にも分かりません。よりよい解決策の一つは、チェースのAuto Scale TextView Text to Fit within Bounds範囲内に収まるようにTextViewテキストを自動的にスケールする - どのように呼び出すのですか?

で誰もがあなたがそれを使用する方法のアイデアを持っていているように見えますか?例:

String bigTextString = "This is a test!"; 

TextView t = (TextView)findViewById(R.id.big_text); 
t.setTextSize(returnFontSize(bigTextString)); 
t.setText(bigTextString); 

returnFontSizeは存在せず、例として示しただけです。 AutoResizeTextViewクラスは、独自のファイルに正しく設定されています。


おかげで(StackOverflowのコメントを再編集はできませんバグを持っているとして、以下の短いコメントを無視し、それはまた、512文字に制限されています)。

私はまだ何かが欠けている必要があります。私は2つの行だけを使用する場合、あなたはどこにテキスト文字列を渡すのですか?私は似たようなことを試しましたが、実行するとクラッシュするだけで意味があります。

AutoResizeTextView t = new AutoResizeTextView(this); 
linearMain.addView(findViewById(R.id.big_text)); 

addViewはで失敗「はIllegalStateException:指定された子はすでに親を持っているあなたが最初の子の親にremoveView()を呼び出す必要があります。。」、私はビューを削除しないように奇妙なようです(私は思う)、私はそれがどのように画面上に置く文字列のアイデアを持って表示されません。それはすでにレイアウトで定義されていますよう

は本当に必要addViewです。

私はちょうどそれをテキストを渡したいです。例えば:Androidは「bigTextString」に何があるかに応じて、画面上のテキストを当てはめるの貧しい人々の仕事をしない以外

TextView t = (TextView)findViewById(R.id.big_text); 
t.setTextSize(textSize); 
t.setTextColor(textColor); 
t.setText(bigTextString); 

これは、実行されます。

答えて

0

さてあなたは、オブジェクトを作成および変更する方法について説明したクラスを持っている場合、あなたがする必要があるすべては、それを作成し、そのコンストラクタとメソッドでそれを修正しています。以下はあなたのリンクからのものです。 ID、私はあなたが構築したくないと仮定していますよう:あなたがあなたの活動FontFitTextView textViewName = new FontFitTextView(context, attrs);に呼び出してから、これはあなたがそのアンドロイドによるレイアウトのために使用しているビューを見つける必要があることを意味layoutName.addView(textViewName);によってビューに追加

public FontFitTextView(Context context, AttributeSet attrs) { 
    super(context, attrs); 

    float size = this.getTextSize(); 
    if (size > MAX_TEXT_SIZE) 
     setTextSize(MAX_TEXT_SIZE); 
} 

プログラム的に全体のレイアウト。コンストラクタに

+0

おかげを使用しますが、私はまだ何かが欠けする必要があります - DR;また<packagename.FontFitTextView />

TLによってXMLでコンストラクタを呼び出すことができます。私は2つの行だけを使用する場合: – Frank

+0

まあ、あなたは属性を渡すように設定する必要があり、コースActivityNameのためのコンテキスト - ActivityName.this。また、アクティビティのレイアウトにアクセスするためには、VewById(R.id.layoutName)を見つける必要があります。 – AJcodez

+0

それは私が必要なものです! – Frank

関連する問題