昨天遇到了一个问题,今天忙了一天 问了好多人,最后也没有个所以然。最后偶然间发现了问题,解决了 并产生了一系列的猜想,做了个小实验,并且验证了猜想
在这里跟大家分享一下
我的猜想是:adapter能够在setAdapter方法没有执行完的时候检测数据源的变化,并对之做出反应,继续加载新的数据源。 挺简单的东西,底层是什么深层原理,我是小白钻不下去,只是把自己遇到的收获的跟大家分享一下,下面贴出来我试验的代码(运行以后上下拉动,看看效果(其他的自己思考,有什么新发现欢迎一起讨论)):
布局很简单,只有一个listview item布局只写了一个textView
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
private ListView listview;
private MyAdapter adapter;
List<String> str=new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initData();
listview.setAdapter(adapter);
}