这是一个客户端MVP程序,使用被动视图。
我希望允许用户创建联系人并将其添加到报价。我希望在创建联系人时通知报价。
做a)和b)哪个更好?
a)倾听模型
将联系人传递给contacts控制器,并侦听模型上保存的事件
var contact = new Contact()
contact.on('saved', function(contact){ do some stuff })
contactsController.create(contact)
然后,contactsController将联系人加载到视图中,用户输入一些信息,单击保存,联系人被保存到服务器,contact
通过阅读文档,我发现它可以用于启动活动、服务或发送广播。
我想问一下,意图与内容提供者有什么关系。我使用了日历和联系人内容提供程序(以下为),但它们仍然使用startActivity。我之所以这样问,是因为PackageManager有一个名为queryIntentContentProviders的API,并附带以下评论:
Retrieve all providers that can match the given intent.
我想问的是,当意图与内容提供者匹配时,用例是什么。
以这款假想的应用为例,你可以在社交网络上查看所有朋友的联系信息。
搜索一个好友,结果中会显示一张联系人名片。在联系人卡片内是朋友的名字,但也链接到他们所有的朋友。如果您单击其中一个链接,则相关的联系人名片将显示在结果的前面。这使您可以钻取。
通常,只需创建一个好友集合和一个要编排的关联resultsView就足够了。每个模型都可以将一个实例保存到自己的视图中。但在这种情况下,可能会引入一个重复的模型。即。
Adam to=> Paul back_to=> Adam (由于互惠的友谊,adam会出现在pauls的好友列表中)。
也许我试图将视觉设计强加给模型集合,但集合确实提供了开箱