【求助】为什么我在fragment中findViewById得到的是null呢?
android开发吧
全部回复
仅看楼主
level 6
自己实在找不出原因了。求指导。。。
这是fragment中onCreateView方法:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View contextView = inflater.inflate(R.layout.fragment_home, container,
false);
// ProgressBar
pb = (ProgressBar) contextView.findViewById(R.id.pb_new);
// 首次加载时Toast提示
sp = getActivity().getSharedPreferences("user_info",
getActivity().MODE_PRIVATE);
imageUrls = Constants.IMAGES;
options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_stub)
.showImageForEmptyUri(R.drawable.ic_empty)
.showImageOnFail(R.drawable.ic_error)
.cacheInMemory(true)
.cacheOnDisc(true)
.displayer(new RoundedBitmapDisplayer(20))
.build();
<----这里,改成getActivity().findViewById得到的同样是null。。。。请问该怎么办啊。---->
AbsListView listView = (ListView) contextView.findViewById(android.R.id.list);
((ListView) listView).setAdapter(new ItemAdapter());
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
startImagePagerActivity(position);
}
});
return contextView;
}
2014年05月06日 01点05分 1
level 6
知道了。。因为是借鉴的其他例子,人家例子的布局文件定义了listview控件(用的是自带的 android:id="@android:id/list")我的布局文件里没有定义。。。。
2014年05月06日 01点05分 2
1