计算最大length的Text的宽高度
*/
private void measureTextWidthHeight() {
Rect rect = new Rect();
for (int i = 0; i < adapter.getItemsCount(); i++) {
String s1 = getContentText(adapter.getItem(i));
paintCenterText.getTextBounds(s1, 0, s1.length(), rect);
}
在数据量较大的情况下效率太低,测试列表20000条数据出现明显延迟,是否可以优化成
private void measureTextWidthHeight() {
String temp = "";
Rect rect = new Rect();
int count = adapter.getItemsCount();
for (int i = 0; i < count; i++) {
String s1 = getContentText(adapter.getItem(i));
WheelView类里面 ` /**
计算最大length的Text的宽高度 */ private void measureTextWidthHeight() { Rect rect = new Rect(); for (int i = 0; i < adapter.getItemsCount(); i++) { String s1 = getContentText(adapter.getItem(i)); paintCenterText.getTextBounds(s1, 0, s1.length(), rect);
}
在数据量较大的情况下效率太低,测试列表20000条数据出现明显延迟,是否可以优化成
private void measureTextWidthHeight() { String temp = ""; Rect rect = new Rect(); int count = adapter.getItemsCount(); for (int i = 0; i < count; i++) { String s1 = getContentText(adapter.getItem(i));paintCenterText.getTextBounds(temp, 0, temp.length(), rect); maxTextWidth = rect.width();
} ` 减少宽度测量次数。