ArrayAdapter的奇怪行为

时间:2012-05-22 14:51:14

标签: android android-layout

我有一个包含两个类的android测试项目:

  1. AdapterTestActivity延伸ListActivity - > http://pastebin.com/BreRSPj1
  2. MyAdapter延伸ArrayAdapter - > http://pastebin.com/YUK4CRQq
  3. System.out.println()中的MyAdapter我得到此打印输出:

    05-22 16:43:03.942: I/System.out(17943): test 1
    05-22 16:43:03.942: I/System.out(17943): test 2
    05-22 16:43:03.950: I/System.out(17943): test 3
    05-22 16:43:04.098: I/System.out(17943): test 1 
    05-22 16:43:04.098: I/System.out(17943): test 2
    05-22 16:43:04.098: I/System.out(17943): test 3
    05-22 16:43:04.106: I/System.out(17943): test 1
    05-22 16:43:04.106: I/System.out(17943): test 2
    05-22 16:43:04.106: I/System.out(17943): test 3
    

    但我期待的是:

    test 1
    test 2
    test 3
    

    有谁知道为什么? - 谢谢!

2 个答案:

答案 0 :(得分:1)

这不是一种奇怪的行为,但它是框架的实现细节。无法保证调用哪个或多个时间或getView()

答案 1 :(得分:0)

对于您的第二个问题,您可能需要添加:

    _adapter.notifyDataSetChanged();

添加“test 4”后