我最近开始使用android注释,我试图在类(MyService)中将文本设置为各种TextView。
不幸的是,当我尝试设置文本时,应用程序因nullpointerexception而崩溃。
我已经查看了相同问题的注释(documentation)和在stackoverflow上搜索,但我无法找到正确的方法。
如果有人能以正确的方式帮助我做到这一点,我将不胜感激。
当我试图学习注释时,请温柔地使用downvotes。
TextViews通过( @ViewById )开始的课程( DownloadsDialog ):
@EFragment(R.layout.downloads_dialog)
public class DownloadsDialog extends BaseDialog implements LoaderManager.LoaderCallbacks<BaseResponse> {
..
@ViewById(R.id.statusTxt)
TextView mStatusTxt;
@ViewById(R.id.sizeTxt)
TextView mSizeTxt;
@ViewById(R.id.progress1)
ProgressBar mProgress;
..
}
这是我正在尝试设置文本到这些TextViews的类( MyService ):
public class MyService extends IntentService {
..
public MyService() {
super("MyService");
}
..
class MyDownloadDownloadStatusListenerV1 implements DownloadStatusListenerV1 {
@Override
public void onDownloadComplete(DownloadRequest request) {
final int id = request.getDownloadId();
if (id == downloadId1) {
// How to access TextView in DownloadsDialog?
mStatusTxt.setText("Status: completed");
Log.e("TAG", "download completed");
}
}
..
}
答案 0 :(得分:0)
Intent服务如何拥有视图或布局文件?
@EFragment(R.layout.downloads_dialog)
这样你就知道这是一个视图文件,其中我提到了以下所有小部件,以便从那里获取库,然后将id分配给你的java对象。
@EBean
但是在Intent服务的情况下,没有布局文件,所以很明显它会给出空指针。