作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
代码如下:
public class Fragment1Nasdaq extends Fragment implements LoaderCallbacks<Cursor> {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.nasdaq_fragment, container, false);
handleIntent(getActivity().getIntent());
return rootView;
}
}
此处错误:
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
handleIntent(intent);
}
private void doSearch(String query){
...................
getSupportLoaderManager().restartLoader(0, data, this);
}
我有错误:onNewIntent(intent) 未针对 Fragment 类型定义
setIntent(intent) 未针对 Fragment 类型定义
getSupportLoaderManager() 未针对 Fragment 类型定义
我该如何解决?我不知道如何解决它?
最佳答案
看起来你把这个方法放在了错误的类中。
如果您需要覆盖onNewIntent()
,例如singleTop
Activity ,您必须将此代码放在Activity
类中,而不是在 Fragment
中。 Fragment 没有 onNewIntent()
,因此您放置在那里的这个方法永远不会被调用,无论其实现如何。
简而言之,移动这个:
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
handleIntent(intent);
}
进入你的 Activity 。覆盖方法时始终放置 @Override
注释,它将帮助您检测不正确的覆盖(例如这个)。
关于android - 如何在 Fragment 中重用 onNewIntent() 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24275956/
我是一名优秀的程序员,十分优秀!