当前位置:网站首页>COMP5216 Mobile Computing Assignment 1 - Extending ToDoList app
COMP5216 Mobile Computing Assignment 1 - Extending ToDoList app
2022-06-26 16:49:00 【JKooll】
Assignment 1 – Extending ToDoList app
Total: 5 marks
Due date: submit all project files as one zipped file by 7pm Week 05 and demo in Week 05 lab
In this assignment, you need to design and extend a ToDoList app which contains at least two views.
- The Main view should contain [0.5 mark]:
- A ListView which displays all the saved ToDoItems, each ToDoItem consists of ToDoItem title and the creation / last edited datetime. Clicking a ToDoItem will switch to the “Edit/Add Item” view.
- An “ADD NEW” button. Once this button is clicked, the app will switch to the “Edit/Add Item” view.
- The “Edit/Add Item” view should contain [1 mark]:
- A Text field which allows user to type or edit the title of a ToDoItem to add or update the ListView.
- A “Save” button used for adding new, or updating the title and datetime of ToDoItem in the ListView:
- If updating an existing item, display both the item and creation/last edited datetime of the ToDoItem. Upon saving, update the item and datetime with the current system datetime.
- If adding a new item, capture both the item and creation datetime of the ToDoItem. The creation datetime is the current system datetime.
- A “Cancel” button next to the “Save” button, used to close the Activity without updating the ToDoItem. When this button is clicked, the app will pop up a dialog that asks user: ”Are you sure to cancel this edit? Your unsaved edit will be discarded if you click YES”.
Hint: You should customise the ListView and the adapter. Read the following tutorial, and replace the current ArrayAdapter with your own defined Adapter class. Also replace the list item layout “android.R.layout.simple_list_item_1” with your own layout.
https://github.com/codepath/android_guides/wiki/Using-an-ArrayAdapter-with-ListView
Your app should also be able to handle the following data persistence tasks [1.5 marks]:
- Every time user launches this app, the app loads the ToDoList from the local Database.
- The ToDoList should be sorted and displayed based on the most recent created/last edited datetime i.e. the most recent ToDoItem is shown on top of the list
- When clicking the “Save” button in the “Edit/Add Item” view, the app should add or update the ToDoItem in both the ListView and local Database.
- Add a long click event to delete a ToDoItem from the ListView. When user tries to delete the selected ToDoItem, the app will pop up a message that asks user: ”Do you want to delete this item?” If the user clicks “YES”, this ToDoItem will be deleted from both the ListView and local Database.
- App should be able to be built and run successfully on emulator [0.5 mark]
- Coding [1.5 marks]:
- [1 mark] Follow the official Android code style guidelines (https://source.android.com/setup/contribute/code-style), proper indentation, stick within the 120 char line length, no trailing whitespaces and no unused imports.
[0.5 mark] Documentation: use proper in-line code commenting, and Javadoc comments for new public classes, methods, variables and constants.
Resources download link :https://download.csdn.net/download/jkol12/21722425
边栏推荐
- 对NFT市场前景的7个看法
- Day10 daily 3 questions (3): String Matching in array
- proxy
- When a programmer is disturbed 10 times a day, the consequences are amazing!
- Teach you to learn dapr - 6 Publish subscription
- Greenplum database fault analysis - semop (id=2000421076, num=11) failed: invalid argument
- Screenshot of the answers to C language exercises
- Teach you to learn dapr - 9 Observability
- Teach you to learn dapr - 5 Status management
- 最小二乘系统辨识课 中篇:递归最小二乘
猜你喜欢

【MATLAB项目实战】基于卷积神经网络与双向长短时(CNN-LSTM)融合的锂离子电池剩余使用寿命预测

Teach you to learn dapr - 9 Observability
Scala 基礎 (二):變量和數據類型

防火 疏散 自救…这场安全生产暨消防培训干货满满!
![[机缘参悟-31]:鬼谷子-抵巇[xī]篇-危机是危险与机会并存](/img/e8/9c5f1658a252c3c80503b5021917f6.jpg)
[机缘参悟-31]:鬼谷子-抵巇[xī]篇-危机是危险与机会并存

JUnit unit test

Pybullet robot simulation environment construction 5 Robot pose visualization
Scala Foundation (2): variables et types de données

Teach you to learn dapr - 4 Service invocation

Apache APIs IX has the risk of rewriting the x-real-ip header (cve-2022-24112)
随机推荐
[from deleting the database to running] the end of MySQL Foundation (the first step is to run.)
无需人工先验!港大&同济&LunarAI&旷视提出基于语义分组的自监督视觉表征学习,显著提升目标检测、实例分割和语义分割任务!...
Solution for filtering by special string of microservice
Vibrating liquid quantity detecting device
Gui+sqlserver examination system
Make up the weakness - Open Source im project openim about initialization / login / friend interface document introduction
Scala Basics (II): variables and data types
Dialogue with the senior management of Chang'an Mazda, new products will be released in Q4, and space and intelligence will lead the Japanese system
Stm32f103c8t6 realize breathing lamp code
Least squares system identification class II: recursive least squares
I regard it as a dry product with a monthly income of more than 30000 yuan for sidelines and more than 10000 yuan for novices!
Convert the decimal positive integer m into the number in the forward K (2 < =k < =9) system and output it in bits
proxy
NFT 交易市场社区所有化势不可挡
Codeforces Round #802 (Div. 2)
1-12vmware adds SSH function
TCP congestion control details | 1 summary
Teach you to learn dapr - 1 The era of net developers
IAR engineering adapts gd32 chip
Science | 红树林中发现的巨型细菌挑战传统无核膜观念