我正在创建一个包含活动的日历
我使用另一个库来创建日历,但是当我去显示事件时,我无法将它们打印在列表中。
我尝试使用TextView但它没有用,所以我尝试使用ListView。
ArrayAdapter无法调用events
,因为events
是在for循环中创建的,但是当我放入for循环时,它无法工作。
无法解析构造函数
我想知道我做错了什么? 我可以在TextView中显示它吗?
Event ev1 = new Event(Color.GREEN, 1488052800000L, footballEv);
public void onDayClick(Date dateClicked) {
List<Event> events = compactCalendarView.getEvents(dateClicked);
ArrayAdapter<Event> adapter = new ArrayAdapter<Event>(this, android.R.layout.simple_list_item_1, event);
ListView list = (ListView) findViewById(R.id.listView);
list.setAdapter(adapter);
}
答案 0 :(得分:0)
无法解析构造函数
您可以查看API文档以了解可用的构造函数。
看这里......
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this, // Context
android.R.layout.simple_list_item_1, // resource
event // Error! Not a List<String>
);
如果要显示活动列表,则需要ArrayAdapter<Event>
。
你不应该需要一个循环来显示它们。
private ListView listView;
private ArrayAdapter<Event> adapter;
private List<Event> events;
public void onCreate(Bundle b) {
...
listView = (ListView) findViewById(R.id.listView);
events = new ArrayList<Event>();
adapter = new ArrayAdapter<Event>(
this,
android.R.layout.simple_list_item_1,
events);
list.setAdapter(adapter);
}
private void onDateClicked(Date clicked) {
adapter.clear();
adapter.addAll(compactCalendarView.getEvents(dateClicked));
}
注意:Event
类需要toString()
方法。
参考:How do I print my Java object without getting "SomeType@2f92e0f4"?