我可以轻松地在地图上绘制叠加标记,但是该项目的要求要求添加数百个叠加标记。显然这会导致ANR到处都是。
我无法使用AsyncTask来处理叠加标记的添加,因为任务无法访问视图。
那么我怎样才能将这些叠加层添加到MapView中,使应用程序不会出现ANR?
或者我可以绘制的叠加标记数量的实际限制是否有限?
答案 0 :(得分:3)
重写AsyncTask的onPostExecute
和onProgressUpdate
方法以跳转到UI线程。您可以从那里操纵UI。请记住在doInBackground
方法中保持所有笨拙的工作。
尝试触发几百个AsyncTasks并不是一个好主意所以我建议使用一个队列,固定数量的AsyncTasks消耗请求。
您的下一个问题是在用户操作地图时处理性能。