新手Java問題 - 在Auto Scaling文本視圖的所有帖子中,沒有人指出實際使用提供的類的方式。它看起來像更好的解決方案之一是大通在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個字符)。我不得不丟失一些東西。如果我只使用兩行代碼,建議你在哪裏傳遞文本字符串?我嘗試了類似的東西,但運行時只是崩潰,這是有道理的。
AutoResizeTextView t = new AutoResizeTextView(this);
linearMain.addView(findViewById(R.id.big_text));
的addView失敗,出現「IllegalStateException異常:指定的孩子已經有一個家長,你必須首先對孩子的父母打電話removeView()。」,因爲我不希望刪除的視圖這似乎很奇怪(我認爲),我不知道它是如何看待屏幕上的字符串的。
是一個真正必要的addView,因爲它已經在佈局中定義了。
我只是想通過它的文字。例如:
TextView t = (TextView)findViewById(R.id.big_text);
t.setTextSize(textSize);
t.setTextColor(textColor);
t.setText(bigTextString);
此運行,除了Android爲配合這取決於什麼是在「bigTextString」屏幕上的文字方面做得很差。
謝謝,但我一定還失去了一些東西。如果我只使用建議的兩條線: – Frank 2012-02-04 22:01:20
嗯,是的,你需要設置一個屬性設置爲傳入,以及課程活動的上下文 - ActivityName.this。你必須找到VewById(R.id.layoutName)才能訪問活動中的佈局。 – AJcodez 2012-02-05 09:11:29
這就是我需要的! – Frank 2012-02-06 21:16:59