1

现在看看那个!我在最简单的目标之一上遇到了麻烦:使用 SeekBar 的值更新纯 TextView。

这是我的方法:

    @Override
public void onProgressChanged(SeekBar seekBar, int progress,
        boolean fromUser) {
    if (fromUser) {
        mInfoText.setText(mFunction.getUserFriendlyString(progress));
    }
}

它基本上可以工作,但是当我拖动时它会阻塞整个 UI。(注意:我尝试了 View.post() 和 Activity.runOnUiThread())。

我忽略了什么吗?

4

2 回答 2

1

我的猜测是您获取 userFriendlyString 的时间太长了。您是否使用 String.Format 和/或加载字符串资源?String.Format 花费的时间比您想象的要长。

您可以做的一件事是从 DDMS 运行方法分析,看看实际占用了哪些时间。请参阅http://developer.android.com/guide/developing/tools/traceview.html

于 2011-02-22T15:37:26.353 回答
0

我有非常相似的东西,但一切都像魅力一样。也许你的有问题mFunction.getUserFriendlyString

于 2011-02-22T15:30:22.550 回答