我是 android 开发的新手,并为自己设定了创建联系人管理应用程序的任务 - 只是为了提高我的技能。
用户可以使用所有常用的联系人编辑选项 - 查找联系人、新联系人、编辑联系人、删除联系人等。这些选项中的每一个都有自己的权利 - “查找联系人”将“选择”适当的联系人(存储他们的公共变量中的 ID)。如果您在“选择”联系人时按“编辑”或“删除”,那么这些功能将正常工作。
但是当用户在没有选择联系人的情况下尝试按“编辑”或“删除”时会发生什么?简单的解决方案是显示“请选择联系人”消息,但这是糟糕的设计。如果应用程序需要用户输入,那么他们应该被重定向到必要的活动来选择一个联系人。
因此,当用户单击“编辑”按钮时,我编写了这段非常小的代码:
public void findContact(View view)
{
Intent intent = new Intent(this, FindContactActivity.class);
startActivityForResult(intent, 1);
}
public void editContact(View view)
{
if (Db.contact == null)
findContact(null);
else {
// navigate to edit activity
}
}
在这种情况下,'contact' 是 type 的对象contact
,它将联系人相关信息存储在它自己的类中。Db
是一个包含我的数据库访问函数的类 - 它似乎是存储需要从任何地方访问的公共变量的好地方。
现在上面的代码显然可以正常工作。如果选择了一个联系人,那就太好了——我们进入编辑屏幕。如果没有,我们转到查找联系人屏幕。但问题是一旦用户选择了联系人会发生什么?它不会再次将它们带回编辑屏幕。
我的理想流程是伪代码:
editContact()
{
if (contact is selected)
editContact();
else
{
findContact();
// once found, go to edit contact screen
editContact();
}
}
记住我是 android 开发的新手,我想知道是否有人可以给我一些关于创建应用程序“流程”的指示,如上所述。