Java 构建Android启动器
我正在构建一个Android启动器,在尝试将已安装的应用程序添加到GridView时不断崩溃 我正在尝试在gridview中添加已安装应用的网格 我的gridview代码是Java 构建Android启动器,java,android,gridview,android-adapter,android-launcher,Java,Android,Gridview,Android Adapter,Android Launcher,我正在构建一个Android启动器,在尝试将已安装的应用程序添加到GridView时不断崩溃 我正在尝试在gridview中添加已安装应用的网格 我的gridview代码是 private void loadGridView() { grid = (GridView) getActivity().findViewById(R.id.content); ArrayAdapter<AppDetail> adapter = new ArrayAdapter<App
private void loadGridView() {
grid = (GridView) getActivity().findViewById(R.id.content);
ArrayAdapter<AppDetail> adapter = new ArrayAdapter<AppDetail>(getActivity(), android.R.layout.simple_list_item_1, apps) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = getActivity().getLayoutInflater().inflate(R.layout.drawer_item, null);
}
ImageView appIcon = (ImageView) convertView.findViewById(R.id.icon_image);
appIcon.setImageDrawable(apps.get(position).icon);
TextView appLabel = (TextView) convertView.findViewById(R.id.icon_text);
appLabel.setText(apps.get(position).label);
return convertView;
}
};
grid.setAdapter(adapter);
}
在
android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss
(BackSta)
ckRecord.java:626)
问题在于(GridView)getActivity().findViewById(R.id.content)
返回null。这会在此处导致崩溃:
grid.setAdapter(adapter);
要解决此问题,请检查网格的id,并将其如下所示:
grid = (GridView) getActivity().findViewById(R.id.your_grid_view);
你能添加崩溃日志吗?@DoronYakovlev Golani崩溃日志已经添加,谢谢你的回复,我在XML布局中的网格id是“content”,这就是我正在使用的。。。这就是让我困惑的地方,lolI建议你调试一下,看看这个电话能得到什么。也许你有其他的布局,或者你在膨胀布局之前打这个电话?
grid.setAdapter(adapter);
grid = (GridView) getActivity().findViewById(R.id.your_grid_view);