作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在 AsyncTask 的 onPostExecute 中生成一个 TextView,如下所示:
protected class AsyncTranslator extends AsyncTask<String, JSONObject, String>
{
@Override
protected String doInBackground(String... params) {
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onPostExecute(String mymeaning) {
TextView myView = new TextView(this);
myView.setText(Html.fromHtml(myString));
}
}
但它给出错误告诉我这不能应用于 AsyncTranslator。你能告诉我如何在 AsyncTask onPostExecute 中生成 textViews 吗?谢谢。
最佳答案
来自documentation可能的构造函数是
TextView(Context context)
TextView(Context context, AttributeSet attrs)
TextView(Context context, AttributeSet attrs, int defStyleAttr)
TextView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
但你正在做
TextView myView = new TextView(this);
在AsyncTranslator
里面这是不正确的。
如果您有对上下文的引用,您可以在 AsyncTask
中轻松创建 TextView
。看这个thread获取对您的上下文的引用。
编辑看来您已经引用了您的上下文,所以只需执行
TextView myView = new TextView(context);
关于java - 如何在 AsyncTask 中生成 TextView - PostExecute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33625627/
我是一名优秀的程序员,十分优秀!