刚学会用ArrayAdapter,但是对下面的语句执行效果比较好奇,可以看到是先设置了ArrayAdapter,后又加载了一个List<String> 集合元素。
开始的时候我认为这可能会显示不出来,但是在虚拟设备上跑的时候,是可以正常显示的。于是好奇ArrayAdapter在设置过程中对语句执行的
影响,于是又写了两个for延时函数。看是否实现动态加载ListView内的元素。
<span style="white-space:pre"> </span>contactsView.setAdapter(adapter);
contactsList.add("1111");
public class MainActivity extends Activity {
ListView contactsView;
ArrayAdapter<String> adapter;
List<String> contactsList = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
contactsView = (ListView) findViewById(R.id.contacts_view);
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, contactsList);
contactsView.setAdapter(adapter);
<span style="white-space:pre"> </span>contactsList.add("1111");
for(int i = 10000; i>0; i--){for(int j=1000; j>0; j--);}contactsList.add("1111");for(int i = 10000; i>0; i--){for(int j=1000; j>0; j--);}contactsList.add("1111");
事实上这个活动在执行的时候回卡住一段时间,如图:
<img src="https://img-blog.csdn.net/20160320183531378?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
所以应该是在等for循环跑完,再一次性加载ListView视图出来
<img src="https://img-blog.csdn.net/20160320183547691?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />