AUInputDialog 为带文本输入框的弹窗样式。弹窗的 window 层级逻辑为 self.windowLevel = UIWindowLevelAlert - 1
。
效果图
接口说明
@interface AUInputDialog : AUDialogBaseView
/// 文本输入框
@property (nonatomic, strong, readonly) UITextField *textField;
/**
该实例是否在展示,适用于有指针指向该实例的情况。
如果有其他 dialog 盖住此 dialog,属性值也为 YES 不会发生变化。
*/
@property (nonatomic, assign, readonly) BOOL isDisplay;
/**
* 标题
*/
@property (nonatomic, strong) NSString *title;
/**
* 文本消息
*/
@property (nonatomic, strong) NSString *message;
/**
不带按钮标题的初始化方法。
@param title 标题
@param message 消息内容
@return AUInputDialog 实例
*/
- (instancetype)initWithTitle:(NSString *)title
message:(NSString *)message;
/**
AUInputDialog 实例化方法
@param title 标题
@param message 消息内容
@param placeholder 文本框的占位文字
@param delegate 代理对象
@param buttonTitle 按钮标题
@return AUInputDialog 实例
*/
- (instancetype)initWithTitle:(NSString *)title
message:(NSString *)message
placeholder:(NSString *)placeholder
delegate:(id<AUDialogDelegate>)delegate
buttonTitles:(NSString *)buttonTitle, ... NS_REQUIRES_NIL_TERMINATION;
- (instancetype)initWithCustomView:(UIView *)customView; // 自定义内容区域
/// 禁用的初始化方法
- (instancetype)init NS_UNAVAILABLE;
/**
Dialog 展示方法。
*/
- (void)show;
/**
Dialog 消失方法, 如果监听 will/didDismissWithButtonIndex: 回调 index 值为默认的 0
*/
- (void)dismiss;
/**
隐藏 Dialog Window 上全部 dialog 视图
*/
+ (void)dismissAll;
/**
描述文本置为灰色,默认为 YES
*/
- (void)setGrayMessage:(BOOL)grayMessage;
/**
设置文本对齐
@param alignment 对齐参数
*/
- (void)setMessageAlignment:(NSTextAlignment)alignment;
/**
添加按钮以及其回调方法。
@param buttonTitle 按钮标题
@param actionBlock 按钮点击回调
*/
- (void)addButton:(NSString *)buttonTitle actionBlock:(AUDialogActionBlock)actionBlock;
代码示例
普通样式:
AUInputDialog *dialog = [[AUInputDialog alloc] initWithTitle:@"标题" message:@"可能包含通知警报的声音图标和按钮。这些可以" placeholder:@"给朋友留言" delegate:self buttonTitles:@"取消", @"主操作", nil]; [dialog show];
自定义样式:
UIView *customView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 240, 60)]; customView.backgroundColor = [UIColor greenColor]; AUInputDialog *dialog = [[AUInputDialog alloc] initWithCustomView:customView]; [dialog addButton:@"取消" actionBlock:nil]; [dialog addButton:@"确定" actionBlock:nil]; [dialog show];
文档内容是否对您有帮助?