如何等待Object Listener完成处理事件?

时间:2013-06-21 20:15:33

标签: android

onCreate()我使用setOnItemSelectedListener()给微调器。然后在onResume()中,我在同一个微调器上调用setSelection()。发生的事情是监听器被调用,但事件不是我预期发生的顺序。如果我的代码如下:

sp1.setOnItemSelectedListener(...
    @Override
    public void onItemSelected(){...

        Log.e("marker", "stage 2");
    ...}
...});

Log.e("marker", "stage 1");
sp1.setSelection(1, true);
Log.e("marker", "stage 3");

在LogCat中,事件按此顺序发生:stage1,stage3,然后是stage 2.显然,我希望它是stage1,stage2,然后是stage3。我该如何做到这一点?

1 个答案:

答案 0 :(得分:0)

如果你真的需要这个,那么你可以在调用setSelection()之前删除监听器,然后直接调用onItemSelected()(这是一个丑陋但简单的解决方案)