#if USE_UIKIT_PUBLIC_HEADERS || !__has_include(<UIKitCore/UIBarCommon.h>)
//
// UIBarCommon.h
// UIKit
//
// Copyright (c) 2013-2018 Apple Inc. All rights reserved.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
/* 标签公共类 */
/* 标签度量 <枚举> */
typedef NS_ENUM(NSInteger, UIBarMetrics) {
UIBarMetricsDefault, // 默认(横屏导航条变宽)
UIBarMetricsCompact, // 横屏紧凑(竖屏没有,横屏有)
UIBarMetricsDefaultPrompt = 101, // 竖屏高度变大(仅适用于具有prompt属性的bar,如UINavigationBar和UISearchBar)
UIBarMetricsCompactPrompt, // 横屏高度变大
UIBarMetricsLandscapePhone NS_ENUM_DEPRECATED_IOS(5_0, 8_0, "Use UIBarMetricsCompact instead") = UIBarMetricsCompact,
UIBarMetricsLandscapePhonePrompt NS_ENUM_DEPRECATED_IOS(7_0, 8_0, "Use UIBarMetricsCompactPrompt") = UIBarMetricsCompactPrompt,
};
/* 标签位置 <枚举> */
typedef NS_ENUM(NSInteger, UIBarPosition) {
UIBarPositionAny = 0,
UIBarPositionBottom = 1, // 条形位于其局部背景的底部,并且相应地绘制定向装饰(如条形图上方的阴影)
UIBarPositionTop = 2, // 标签位于当前视图的顶部,并且相应地进行定向装饰(如标签下方的阴影)
UIBarPositionTopAttached = 3, // 标签位于屏幕的顶部(以及其本地上下文)其背景向上延伸(目前仅适用于状态栏)
} NS_ENUM_AVAILABLE_IOS(7_0);
#define UIToolbarPosition UIBarPosition
#define UIToolbarPositionAny UIBarPositionAny
#define UIToolbarPositionBottom UIBarPositionBottom
#define UIToolbarPositionTop UIBarPositionTop
///!!!: 标签定位 <协议>
@protocol UIBarPositioning <NSObject> // UINavigationBar, UIToolbar, and UISearchBar conform to this
// 获取 标签位置
@property(nonatomic,readonly) UIBarPosition barPosition;
@end
///!!!: 标签定位代理 <协议>
@protocol UIBarPositioningDelegate <NSObject> // UINavigationBarDelegate, UIToolbarDelegate, and UISearchBarDelegate all extend from this
@optional
/**
向Delegate询问新窗口中指定标签的位置
@param bar 指定标签
@return 标签位置
*/
- (UIBarPosition)positionForBar:(id <UIBarPositioning>)bar;
@end
NS_ASSUME_NONNULL_END
#else
#import <UIKitCore/UIBarCommon.h>
#endif
网友评论