我可以删除弹出窗口中的箭头吗?

时间:2011-01-26 06:21:44

标签: iphone ipad uipopovercontroller

我被要求删除弹出视图的箭头。

  1. 这违反了人机界面指南吗?
  2. 在另一个popover中显示一个popover是明智的吗?
  3. 如果没有违反人机界面指南怎么做?

7 个答案:

答案 0 :(得分:13)

对于Swift

Intent ishintentC = new Intent(this, MainActivity.class);
PendingIntent pintentC = PendingIntent.getService(this, 0, ishintentC, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmC = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarmC.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+7200000,AlarmManager.INTERVAL_HOUR*2, pintentC);

答案 1 :(得分:9)

当然,并且有足够的呼吁,特别是当弹出足够大并且箭头指向的点将被遮挡时。

没有任何可用性缺陷。

[pop presentPopoverFromBarButtonItem:_toolbarBtnImage2
permittedArrowDirections:0 // <- pass in zero for no arrows
animated:YES];

答案 2 :(得分:3)

2012-03-07人机界面指南隐含地禁止遗漏或删除箭头。 114:“一个弹出窗口......总是显示一个箭头,指示它出现的点。”

答案 3 :(得分:1)

隐藏弹出箭头或在另一个弹出窗口中显示一个弹出窗口听起来不太明智。我不确定这是否被HIG明确禁止,但无论如何它都是可用性缺陷。如果你坚持你可以绘制自己的无箭头弹出窗口或尝试使用顶部组成的一些视图来掩盖箭头。我认为重新考虑用户界面会好得多。

答案 4 :(得分:1)

myViewController.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirection(rawValue: 0)

答案 5 :(得分:1)

只需添加一些糖和Swifty代码即可:

扩展名:

extension UIPopoverArrowDirection {
    static var none: UIPopoverArrowDirection { UIPopoverArrowDirection(rawValue: 0) }
}

用法:

popoverMenuViewController?.permittedArrowDirections = .none

您可以根据需要更改变量的名称。

答案 6 :(得分:0)

popoverMenuViewController?.permittedArrowDirections = []