Android 无法在自定义列表视图中查看
这是我的MainActivity.class,我想从数据库中查看,但不知道为什么这段代码会给我nullpointerexception,我试过了,但并没有出错 //解决我自己Android 无法在自定义列表视图中查看,android,listview,listadapter,Android,Listview,Listadapter,这是我的MainActivity.class,我想从数据库中查看,但不知道为什么这段代码会给我nullpointerexception,我试过了,但并没有出错 //解决我自己 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); try{ handler = ne
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try{
handler = new DataHandler(this);
handler.open();
c = handler.getAllMainData();
c.moveToFirst();
while(!c.isAfterLast()){
CampaignId.add(c.getInt(c.getColumnIndex("campaign_id"))-1, null);
CampaignName.add(c.getString(c.getColumnIndex("campaign_name")-1));
Message.add(c.getString(c.getColumnIndex("message")-1));
StartDate.add(c.getString(c.getColumnIndex("start_date")-1));
Repeat.add(c.getString(c.getColumnIndex("repeat")-1));
c.moveToNext();
}
handler.close();
}
catch(Exception e){
Log.d("Error",e.toString());
}
//View Data
try{
ListView lv = (ListView) findViewById(R.id.LVMain);ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
for(int i=0;i<CampaignId.size();i++)
{
HashMap<String, String> map = new HashMap<String, String>();
map.put("CampaignName",CampaignName.get(i));
map.put("Repeat",Repeat.get(i));
map.put("StartDate",StartDate.get(i));
mylist.add(map);
}
SimpleAdapter mSchedule = new SimpleAdapter(MainActivity.this, mylist, R.layout.main_listview, new String[] {"CampaignName","Repeat","StartDate"}, new int[] {R.id.viewCampaignName,R.id.viewRepeat,R.id.viewLastSent});
lv.setAdapter(mSchedule);
}catch(Exception e){
e.printStackTrace();
}
}
这行代码
setContentView(R.layout.activity_main);
在代码块的末尾应该紧跟在后面
super.onCreate(savedInstanceState);
代码,作为
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
哪行代码为您提供了NPE?lv.setAdapter(msSchedule)检查此项:@Haresh我检查了此项,但它不是我的用途,因为我之前已经做过此项,我正在对话框中显示它,该对话框工作正常,但不是此对话框Ok np CampaignId的大小是多少?Ok nullexception已消失,但它仍然没有显示视图我的错误NullPointerException仍然存在于lv.setAdapter(msSchedule)这个答案解决了NPE问题吗?您的
mschedule
为空。不,实际上问题不是我正在使用setContentView(R.layout.activity\u main)刷新页面代码>这,但当我意识到它没有必要添加此代码,它刷新我的网页和宾果我的NPE是不存在的
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);