android 显示字符串最后一个字,android – 在textview中显示的最后一个单词
我現在不能嘗試這個想法,但讓我們試一試!根據
this post,您可以使用以下方法來確定字符串是否適合textview.
private boolean isTooLarge (TextView text, String newText) {
float textWidth = text.getPaint().measureText(newText);
return (textWidth >= text.getMeasuredWidth ());
}
因此,如果文本始終相同,您可以手動定義每個文本視圖的初始值,然后在增加或減少重新計算的字體時,刪除或添加單詞.
如果不能手動輸入初始值,您可以執行以下操作:
String wordsInTextview = new String();
int lastUsedWord= 0;
int totalNumberOfWords = text.size();
for (int i=lastUsedWord;i
if !(isTooLarge(TextView,wordsInTextview)) {
wordsInTextview = wordsInTextview + text(i); // add the words to be shown
} else {
TextView.setText(wordsInTextView);
lastUsedWord= i;
wordsInTextView = new String(); // no idea if this will erase the textView but shouldn't be hard to fix
}
}
您還需要存儲textView的第一個單詞的位置,因此當您調整文本大小時,您知道從哪里開始!
int firstWordOnTextView = TextView.getText().toString().split(" ")[0]
當它調整大小時,您可以使用相同的方法來計算屏幕上的文本.
lastUsedWord = firstWordOnTextView;
如果你想要更快,你可以跟蹤你在每個頁面上有多少單詞,做一個平均值,并在幾次運行后總是從那里統計你的循環.或者之前的幾句話,以避免不得不迭代.
如果您不必一次顯示太多頁面,我相信這是一個合理的解決方案!
對不起代碼中的錯誤我沒有在哪里嘗試它!有關此解決方案的任何評論非常有趣的問題!
總結
以上是生活随笔為你收集整理的android 显示字符串最后一个字,android – 在textview中显示的最后一个单词的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌Android无障碍套件,谷歌为无障
- 下一篇: android studio 加载ffm