1

我的列表视图有一个适配器,然后我需要用 SensorChange 方法中的 notifydatasetchanged 方法刷新它。你知道 SensorChange 方法被频繁快速调用...

过了一会儿,屏幕中的listview消失了,getview方法停止,不再调用。当我删除 notifydatasetchanged 方法时,它很好,但 listview 的项目无法刷新。为什么?

@Override
public void onSensorChanged(SensorEvent evt) {if(mPoiListAdapter != null){
        mPoiListAdapter.notifyDataSetChanged();
    }
}
4

1 回答 1

1

试试这个方法

Handler mHandler = new Handler();

        @Override
            public void onSensorChanged(SensorEvent evt) {

                mHandler.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        if (mPoiListAdapter != null) {
                            mPoiListAdapter.notifyDataSetChanged();
                        }

                    }
                }, 1500);
            }
于 2013-11-13T04:24:31.987 回答