需求简介
Week 1-6
完成一个简单的 MyList
Week1
- checkBox 和 line 的绑定处理
当 CheckBox 被勾选时 line 出现,取消勾选则line消失
- 新建Item的逻辑判断
新建一个 NewPage。点击 create 按钮时,检查 Title、Description 是否为空,DueDate 是否正确(是否大于等于当前日期)。如果不正确,弹出对话框,显示错误信息。
Week2
- 界面设计
完成 MainPage、NewPage 两个界面的设计
- Adaptive UI
- 当窗口宽度小于800时,只显示原本在界面左侧的列表部分,底部导航栏只显示 Add 图标
- 窗口宽度大于800时,显示完整界面
- 窗口宽度小于600时,列表项中的图片不显示
Week3
数据绑定
剩余各页面内剩余逻辑和拓展
Week4
- (Mainpage.xaml.cs)在 MainPage 中点击 checkbox 出现横线,输入数据(选择图片),挂起并关闭程序,重新启动时,程序显示在 Mainpage 界面,并且点击的checkbox与对应横线,数据与图片都存在。
- (Newpage.xaml.cs)在 NewPage 中输入数据(或选择图片),挂起并关闭程序,重新启动时,程序显示在 Newpage 界面,数据与图片都存在。
Week5
制作磁贴
- 要求使用标准的处理 XML DOM 方式创建动态磁贴
- 要求采用 Adaptive Tile (覆盖至少 small、medium、wide)
- 实现效果:要求每添加一条项目,磁贴能进行更新,并且更新的内容循环展示
App-to-App communication
在 MenuFlyoutItem 中增加 Share 选项,点击后相应条目能以邮件方式进行共享(不要求动态共享图片)
Week6
SQLite数据库本地存储:
- 实现 todo 表项的增、删、改、查;并且能保存及恢复应用状态。
- 需要保存:title,description,complete, date(年月日即可),image(Bonus项)
- 查询时为模糊查询,如下图,查询“现”即可显示日期为 title 或 description 或 date 中含有“现”的 item (查询到的 item 用字符串表示 title+description+date。若有多条,则每行一个item)。
Week7
- 使用 HttpClient 访问网络
- 提供城市天气查询(json Phrase)
- 提供IP 地址查询(xml phrase)
Week8
- 利用自定义控件控制视频的播放,暂停,快进,快退
- 实现视频播放的全屏与退出全屏
- 自制 slider 实现视频的进度条
- 本地选择多媒体文件(视频,音乐)进行播放
- 添加 slider 版本音量控制
- 实现封面旋转
- 添加键盘按键响应