如何多次更改文本视图文本?

时间:2011-07-29 22:51:15

标签: android

我尝试在我的活动中多次更改textview,然后再次在我的AsyncTask中更改。这是否可能它给我一个错误,我第二次改变了它。

2 个答案:

答案 0 :(得分:4)

您可以根据需要随时更改。

但请记住,AsyncTask是一个单独的线程。如果要更改UI组件,则必须在UI线程中执行此操作。

这意味着:如果要更改AsyncTask类中的UI控件,则必须在onPreExecute(),onProgressUpdate()或onPostExecute()内部执行此操作。它们在UI线程中运行,可以操作视图和布局。你不能在doInBackground()中做到这一点。

编辑:如果您想了解更多信息,请阅读官方文档:
Processes and Threads

答案 1 :(得分:1)

Android中的TextView是可变的 - 它可以使用setText()多次写入; 这是文档。 http://developer.android.com/reference/android/widget/TextView.html#setText(java.lang.CharSequence,android.widget.TextView.BufferType)

更可能的问题是,在AsyncTask的处理函数中,TextView的变量为null。检查textView变量是否可用于asynctask的范围。