未为 InvoiceTemplateGet 类型定义方法 execute()
Posted
技术标签:
【中文标题】未为 InvoiceTemplateGet 类型定义方法 execute()【英文标题】:The method execute() is undefined for the type InvoiceTemplateGet 【发布时间】:2015-04-22 19:57:38 【问题描述】:我使用 AsyncTask 从 API 获取结果。我有几个课程很好。我创建了另一个 AsyncTask 类,但出现此错误:
The method execute() is undefined for the type InvoiceTemplateGet
在这一行:
InvoiceTemplateGet template = new InvoiceTemplateGet(PaymentMethodActivity.this, invoiceNumber);
template.execute();
有类InvoiceTemplateGet:
public class InvoiceTemplateGet
public InvoiceTemplateGet(Context context, String invoiceNumber)
mContext = context;
this.invoiceNumber = invoiceNumber;
load_default_settings();
protected CustomAsyncTaskResult<String> doInBackground(String... arg0)
try
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(url);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String response = httpclient.execute(httpget,responseHandler);
return new CustomAsyncTaskResult<String>(response);
catch (HttpResponseException e)
return new CustomAsyncTaskResult<String>(new ApiException("Invoice", "Invoice was not found."));
catch (Exception e)
Log.e("Invoice Error", "Error:", e);
return new CustomAsyncTaskResult<String>(new ApiException("Invoice", e.getMessage()));
protected void onPostExecute(CustomAsyncTaskResult<String> result)
((PaymentMethodActivity)mContext).getResultFromTemplate(result);
progressDialog.dismiss();
我有另一个和这个一样的类,只是 url 不同。它像这个页面一样在同一页面上执行,在同一部分代码上。它有效,为什么我仍然收到此错误?
【问题讨论】:
可能其他类是直接扩展AsyncTask 天哪...你能把它写成答案吗? 看起来您从某处复制粘贴了InvoiceTemplateGet
类的主体,但您忘记将 extends AsyncTask<String, Void, CustomAsyncTaskResult<String>>
添加到类声明中
【参考方案1】:
我有另一个和这个一样的类,只是 url 是 不同的。它像这个一样在同一个页面上执行,在同一个 代码的一部分。它有效,为什么我仍然收到此错误?
您的InvoiceTemplateGet
没有名为execute()
的方法。查看您的代码,在我看来您忘记了extend AsyncTask
。您还可以创建您的 execute() 方法,该方法实例化内部 AsyncTask
并调用 instance.execute()
【讨论】:
以上是关于未为 InvoiceTemplateGet 类型定义方法 execute()的主要内容,如果未能解决你的问题,请参考以下文章
未为 Cast.CastOptions.Builder 类型定义 setVerboseLoggingEnabled(boolean)
错误“未为 UserManager 类型定义方法 createUser(String, int)”
Selenium Webdriver:方法 alert() 未为 WebDriver.TargetLocator 类型定义