1

我有很多从这样的 json 对象中获取字符串:

city1 = jsonobject.getJSONArray("object").getJSONObject(0).getString("city");

如果值不是船体,我将此字符串应用于 textview:

if(city1.equals("")) {
   citylayout.setVisibility(View.GONE);
} else {
prefsmain2.edit().putInt("CITY", city1).commit();
citytxt.setText(city1);
}

我有大约 60 个这样的参数(城市、地标、地区、国家等)但我从调试器中得到了一个日志:

编舞:跳过33帧!应用程序可能在其主线程上做了太多工作。

从 AsyncTask 获取值并使用 Handler 在新线程上使用 setText,但它没用......

4

1 回答 1

0

尝试使用类似于多个文本视图的自定义视图。一次将数据全部提供给它并使视图无效。使用这种方法,您可能会避免许多可能导致丢帧的重绘。

于 2014-08-01T21:37:42.003 回答