【问题标题】:Add MKUserTrackingBarButtonItem to UIView将 MKUserTrackingBarButtonItem 添加到 UIView
【发布时间】:2011-11-12 20:47:58
【问题描述】:

我正在使用MKUserTrackingBarButtonItem 来切换我的 MKMapView 的 usertrackingMode。

  • 是否可以将此按钮移出我的工具栏并将其放置在普通的 UIView 上?
  • 当然,我可以自己实现按钮的行为。你有这个按钮中使用的图标的资源吗?

感谢您的帮助。

【问题讨论】:

    标签: ios ios5 icons mapkit mkmapview


    【解决方案1】:

    所以似乎没有办法直接将任何类型的条形按钮项添加到UIView。我们将不得不继承UIToolbar 来制作一个完全不可见的工具栏。覆盖- (void)drawRect:(CGRect)rect 并放置nothing,甚至没有[super drawRect]。然后,在 init 中运行以下代码:

    self = [super init];
    self.backgroundColor = [UIColor clearColor];
    self.opaque = NO;
    self.translucent = YES;
    
    return self;
    

    更多详情,请访问此链接:Couldn't UIToolBar be transparent?

    【讨论】:

    【解决方案2】:

    从 iOS 11 开始,MKUserTrackingButtonUIView 的子类。

    【讨论】:

      【解决方案3】:

      这是一个链接,您可以使用该按钮创建图像。您可能希望在它进入多个状态时执行此操作:

      Create UIImage from shadowed view while retaining alpha?

      【讨论】:

      • 感谢您的链接。我看了看,但我认为我的问题有所不同。我无法访问按钮内的UIImageView。有没有办法从UIBarItem 中仅提取图像(在这种情况下为箭头或箭头+标题)?
      • button.image 应该返回用于按钮的图像,但返回 nil...参见developer.apple.com/library/ios/#documentation/uikit/reference/…
      • button.image 应该只返回图像,而不是视图......我猜苹果正在使用不同的方法来配置他们的MKUserTrackingBarButtonItem
      猜你喜欢
      • 2014-08-23
      • 2015-03-12
      • 2015-12-19
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多