我有以下情况:表格的页脚中有三个链接。
实
微博
www.someaddress.com
当用户点击(touchupinside)第一个链接时,如果存在,则打开facebook应用程序。
当用户点击第二个时,如果存在,则打开推特应用程序。
当用户点击tird链接时,我打开了safari。
问题是:我应该在打开外部应用程序(Facebook应用程序,Twitter应用程序,Safari浏览器应用程序)之前显示警报视图
Example of text in alertview: You are opening facebook app. Continue? Yes, No.
我想知道做这件事的好习惯,如果有必要这样做,或者它是令人讨厌并且困扰用户的话。应用程序应遵守哪些规则?
还有另外一件事,iPhone 3不支持多任务处理,如果用户在滚动应用程序时意外点击链接将被关闭并且Safari打开,这可以被视为从用户的视图中崩溃。因为app会在没有通知的情况下关闭。
答案 0 :(得分:1)
我认为在任何情况下都没有正确的行为。
我的意思是,如果我是一名用户,我点击一个带有facebook或twitter徽标的按钮,我希望能快速到达那里,正如MihaiPanţiru指出的那样。
相反,如果我点击打字机上的按钮而直接进入“撰写评论”页面,我可能会感到失望。
在您的情况下,例如,如果您的应用在不支持多任务处理的设备上运行,则可以向用户显示警告。
(顺便说一句,我认为UIActionSheet优于UIAlertView)
编辑:您可以查看您的应用正在运行的设备:
if ([[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)]) {
// Multitasking is supported -> do not show any alert
} else {
// Multitasking is NOT supported -> show an alert
}
答案 1 :(得分:1)
这完全取决于你打开其他应用程序的目的,没有强制性。
如果您打开另一个用于登录的应用程序(Facebook,Twitter等),则无需向用户显示警报,因为它是Facebook,Twitter等的默认和新的身份验证方式。用户必须明显离开应用程序才能登录。
但是如果您打开其他应用程序(如safari或youtube)以显示其中的Web链接,那么在该情况下您可以显示警报,以便用户可以在那时决定是否要离开应用程序或不访问该链接。