首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在活动生命周期的哪个部分调用各种android注释?

在活动生命周期的哪个部分调用各种android注释?
EN

Stack Overflow用户
提问于 2014-04-04 03:52:22
回答 1查看 718关注 0票数 0

目前,我正在将我的android项目转移到android-annotations。我很难理解调用注释的顺序。由于错误的顺序,我得到了nullPointerExceptions。

作为示例用例,我尝试在Fragment中使用@ViewById。但是,我在onCreateView()和onResume()中得到了nullPointerException。

解释活动生命周期中的什么时候,将触发哪个注释的文档将非常有帮助。

以下是我的代码的一小部分:

代码语言:javascript
复制
@EFragment
public class DiscoverFragment extends Fragment {
    @ViewById(R.id.dishList)
    PullToRefreshListView mPullToRefreshView;

    @ViewById
    LinearLayout noDataAvailable;

    @ViewById
    LinearLayout dataAvailable;


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        Log.d(TAG, "onCreateView");
        View v = inflater.inflate(R.layout.fragment_discover, container, false);

        if (cursorStringDistance == null) {
            mPullToRefreshView.setMode(Mode.PULL_FROM_START);
            mPullToRefreshView.setOnRefreshListener(oneRefresher);
        } else {
            mPullToRefreshView.setMode(Mode.BOTH);
            mPullToRefreshView.setOnRefreshListener(bothRefresher);
        }

        ListView actualListView = mPullToRefreshView.getRefreshableView();
        actualListView.setAdapter(mAdapter);
        return v;
    }

    @Override
    public void onResume() {
        super.onResume();
        if (dishListDistance.size() == 0) {
            noDataAvailable.setVisibility(View.VISIBLE);
            dataAvailable.setVisibility(View.GONE);
        } else {
            noDataAvailable.setVisibility(View.GONE);
            dataAvailable.setVisibility(View.VISIBLE);
        }
        startTime = System.currentTimeMillis();
    }
}

我正在获取行mPullToRefreshView.setMode(Mode.PULL_FROM_START);noDataAvailable.setVisibility(View.VISIBLE);的nullPointerException。

EN

回答 1

Stack Overflow用户

发布于 2014-06-14 17:20:47

您必须添加一个带@AfterViews注释的方法,注入的View字段将在那里可用。在Fragment的情况下,AA在onViewCreated()方法中注入View字段。如果您想了解生命周期,请检查生成的类。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22847619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档