什么情况,如果有的话,可能会导致TextView.setText(“”)阻止?

时间:2012-11-25 12:35:25

标签: android textview

我一直在追查我的代码块停止工作的问题。最后,我确定了这条线,如下所示:

Log.v(TAG,"Here");
tv.setText("");
Log.v(TAG,"There");

在阻塞期间,第一个语句被调用,第二个语句不被调用。知道是什么导致了这个吗?

如果有任何疑问,tv是TextView。没有打印出任何错误,事实上,这条生产线曾经运作过一次......

1 个答案:

答案 0 :(得分:1)

我弄清楚我的问题是什么,我在这里发布答案,以帮助将来的任何人。它可能是一个Android bug,或者奇怪的东西......没有发布任何错误。最重要的是,不要在ScheduledThreadPoolExecutor中进行GUI调用。

ScheduledThreadPoolExecutor masterExecutor;

masterExecutor=new ScheduledThreadPoolExecutor(1);

masterExecutor.schedule(new Runnable(){
    @Override
    public void run() {
        //Formerly, I ran the block of code here, that blocked.
        runOnUiThread ( new Runnable()
        {
            @Override
            public void run() {
                //Now I moved the code inside of a runOnUiThread
            }
        });

    }
},1000,TimeUnit.MILLISECONDS);