android - 如何从 AsyncTask Activity 中设置 TextView 的文本?

标签 android android-asynctask textview

我有一个 fragment Activity ,其中包含一个 TextView 和另一个扩展 AsyncTask 的类。现在我想使用 onPostExecute(String result) 方法在我的 fragment Activity 中的 TextView 中设置结果文本。

我该怎么做?我已经为接受上下文对象的 AsyncTask 类创建了自定义构造函数。我该如何使用它??

这就是我在 Fragment Activity 中创建任务对象的方式:

String query = "someText";
Task task = new Task(this.getActivity());
task.execute(query);

这是我的任务类中的一个 fragment :

public class Task extends AsyncTask<String, Void, String> {

    private Context context;

    public Task (Context context) {
        this.context = context;
    }

    protected void onPostExecute(String result) {
    super.onPostExecute(result);
    // ??? What comes here ???
    }
}

最佳答案

TextView txt = (TextView)((Activity)context).findViewById(R.id.watheveryouwant);
txt.setText("blabla");

但是你应该传递一个 Activity 而不是 Context,这样会更容易 ;-)

或者

    public Task (Context context, TextView t) {
        this.context = context;
        this.t = t;
    }
   super.onPostExecute(result);
        t.setText("BlahBlah")
    }

应该做的事

关于android - 如何从 AsyncTask Activity 中设置 TextView 的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18234835/

相关文章:

android - 以编程方式创建图像按钮

java - Android AsyncTask 获取异常 null

android - 调用 AsyncTask.onPreExecute() 时出现 NullPointerException

android - 意外隐式转换为 CharSequence : layout tag was TextView

android - 尝试为嵌套的 TextView(在 ListView 中)找到 findViewById 失败

android - TextView state_pressed/state_focused/state_selected 样式改变

android - VM 不允许我们分配 ... 字节

android - fragment 中的 RecyclerView 不工作(无法向其添加数据)

java - ListPopupWindow getListView 创建后返回 nullpointerException

android - 如何使用 Dagger 为 Activity 和 fragment 以外的事物设置依赖注入(inject)?