-
Notifications
You must be signed in to change notification settings - Fork 106
Home
壮飞 edited this page Jun 20, 2018
·
16 revisions
TimetableView是一款开源的Android课程表控件。
总体来说,v2.x的修改幅度非常大,现在的它很灵活,v1.x
中为每个内置颜色定义了三个XML样式文件,仅仅是Item的样式就定义了36个样式文件,v2.x
中删除了36个样式文件,仅保留一个作为模板,并在v2.x
中引入颜色池的概念,进而使得Item的样式更加丰富
Step1:添加依赖
Gradle
compile 'com.zhuangfei:TimetableView:2.0.0'
Maven
<dependency>
<groupId>com.zhuangfei</groupId>
<artifactId>TimetableView</artifactId>
<version>2.0.0</version>
<type>pom</type>
</dependency>
Step2:添加控件
该控件包含的基础组件有日期栏、侧边栏、课表视图,在布局文件中加入如下代码后会包含这三个基础组件
<com.zhuangfei.timetable.TimetableView
android:id="@+id/id_timetableView"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.zhuangfei.timetable.TimetableView>
Step3:配置属性
使用如下方式获取到控件
TimetableView mTimetableView = findViewById(R.id.id_timetableView);
属性的设置分为两类:与课程项构建有关的、与全局有关的,前者的配置在ScheduleManager
对象中,后者的配置在TimetableView
中,所有配置信息需要在showView()
调用前完成,否则无效
以下代码用来监听课程项点击事件:
mTimetableView.getScheduleManager()
.setOnItemClickListener(new ISchedule.OnItemClickListener() {
@Override
public void onItemClick(View v, List<Schedule> scheduleList) {
display(scheduleList);
}
});
然后设置它的一些全局属性,最后调用showView()
用来创建和显示课表视图,代码如下:
mTimetableView.setSource(mySubjects)
.setCurWeek(1)
.setCurTerm("大三下学期")
.showView();
至此,课表已经可以显示在视图上了。啊啊啊,怎么没有解释,看不懂呀!
不要着急,我特意写了大量的例子以及十篇文章来帮助你学习、理解它,如果你感觉它很好用,请帮我点一下右上角的star
,蟹蟹~
你可以跟随以下几个小节进行由简至难的学习:
或者你可以访问timetableview/wiki或者Javadoc-v2.0.0来了解更多,我的联系方式在最后,也可以联系我