一句程式碼呼叫提示框
效果圖(ps:沒有效果圖,怎麼看的下去)
前言:只是剛好看到別人App自定義的彈框挺不錯.自己花點時間封裝了一下.支援橫豎屏切換!
介紹:
-------------------提示框樣式----------------------
typedef NS_ENUM (NSInteger, FQ_AlertType)
{
FQ_AlertTypeActionAlert = 0 , //中間
FQ_AlertTypeActionTop , //頂部
FQ_AlertTypeActionSheet, //底部
};
-------------------Action樣式----------------------
typedef NS_ENUM (NSInteger, FQ_AlertActionType)
{
FQ_AlertActionStyleDefault = 0, //預設樣式
FQ_AlertActionStyleConfirm, //確定樣式
FQ_AlertActionStyleDestructive, //慎重樣式
FQ_AlertActionStyleCancel //取消樣式
};
主要三個類:
1.配置類:FQ_AlertConfiguration
.如果需要豐富.可以新增什麼文字邊距等.我做了預設處理
//FQ_AlertActionStyleDefault = 0, //預設樣式
@property (strong, nonatomic) UIColor *defaultTextColor;
@property (strong, nonatomic) UIColor *defaultBackgroundColor;
@property (strong, nonatomic) UIFont *defaultTextFont;`
......
@property (assign, nonatomic) CGFloat cornerRadius;
// 預設的配置項.類屬性.(蘋果相容swift新增的屬性)
@property (class, nonatomic) FQ_AlertConfiguration *defaultConfiguration;
2.響應控制元件配置類:FQ_AlertAction
.其實就是按鈕
` //初始化.
+ (instancetype)actionWithTitle:( NSString *)title type:(FQ_AlertActionType)actionType handler:(void (^)(FQ_AlertAction *action))handler;`
3.展示類:FQ_AlertView
.
/**
快捷展示多種樣式
@param title 標題
@param message 內容資訊
@param alertType 展示樣式
@param confirmActionStr 確定Action樣式文字
@param otherActionStrArr 其他Action樣式文字陣列
@param destructiveActionStr 刪除Action樣式文字
@param configuration 配置檔案
@param actionBlock 點選Action回撥
@return AlertView
*/
+ (instancetype)showAlertViewWithTitle:(NSString *)title
message:(NSString *)message
alertType:(FQ_AlertType)alertType
confirmActionStr:(NSString *)confirmActionStr
otherActionStrArr:(NSArray *)otherActionStrArr
destructiveActionStr:(NSString *)destructiveActionStr
cancelActionStr:(NSString *)cancelActionStr
configuration:(FQ_AlertConfiguration*)configuration
actionBlock:(void(^)(FQ_AlertAction * action))actionBlock;
其他類
1.管理類:FQ_AlertViewManager
.保證當前介面只顯示一個FQAlertView控制元件.一般情況下沒有同時出現的情況.
2.工具類:FQ_AlertWindowVc
.彈框ContentView使用UIWindow.在處理橫豎屏切換時用到.
使用:
1.快捷建立方式:一句程式碼搞定
[FQ_AlertView showAlertViewWithTitle:@"可以的" message:@"取消關注以後!您將再也收不到該使用者的所有動態?" alertType:FQ_AlertTypeActionSheet confirmActionStr:@"確定" otherActionStrArr:nil destructiveActionStr:nil cancelActionStr:@"取消" configuration:nil actionBlock:^(FQ_AlertAction *action) {
NSLog(@"action= %@",action.title); //根據字串比較找到對應的Action事件做處理
}];
2.自定義方式建立:(借鑑蘋果建立方式)
FQ_AlertView * alertView = [FQ_AlertView showAlertViewWithTitle:@"確定?" message:@"隨便打得XXXXXXXXXXXXXXXXXXXX,可以嗎?" alertType:FQ_AlertTypeActionSheet configuration:nil];
FQ_AlertAction * test = [FQ_AlertAction actionWithTitle:@"拍攝" type:FQ_AlertActionStyleConfirm handler:^(FQ_AlertAction *action) {
NSLog(@"點選拍攝");
}];
FQ_AlertAction * test1 = [FQ_AlertAction actionWithTitle:@"從手機相簿選擇" type:FQ_AlertActionStyleConfirm handler:^(FQ_AlertAction *action) {
NSLog(@"點選從手機相簿選擇");
}];
FQ_AlertAction * test2 = [FQ_AlertAction actionWithTitle:@"取消" type:FQ_AlertActionStyleCancel handler:^(FQ_AlertAction *action) {
NSLog(@"點選取消");
}];
[alertView addAction:test];
[alertView addAction:test1];
[alertView addAction:test2];
[alertView showAlertView];
END:暫未上傳至github賬號!需要請留言!
相關文章
- 一句程式碼,更加優雅的呼叫KVO和通知
- JPWaveAnimation(一句程式碼呼叫的可定製的波浪動畫)動畫
- ios圖片瀏覽器封裝,一句程式碼呼叫,簡單易用iOS瀏覽器封裝
- 登入提示框與密碼提示框,生成驗證碼密碼
- (原始碼)提示框MMPopupView原始碼View
- 微信小程式提示框微信小程式
- JNI:Java程式碼呼叫原生程式碼Java
- ios一句程式碼搞定螢幕旋轉iOS
- 一句程式碼刪除所有子檢視
- css實現的氣泡型提示框程式碼例項CSS
- 滑鼠懸浮出現tips提示框效果程式碼例項
- java呼叫python程式碼JavaPython
- 在python程式中呼叫java程式碼PythonJava
- 從 C/C++ 程式呼叫 Java 程式碼C++Java
- elasticsearch之Java呼叫原生程式碼ElasticsearchJava
- C# 呼叫Python程式碼C#Python
- 帶箭頭陰影的提示框,CSS程式碼,IE不相容CSS
- Swift – 一句程式碼搞定button圖片和文字佈局Swift
- javascript實現的點選彈出刪除提示框程式碼例項JavaScript
- C# 一句很簡單而又很經典的程式碼C#
- thinkphp 5 自動生成模組,最簡單方式,一句程式碼PHP
- 一句程式碼幹掉簡單的手機克隆軟體
- 一句程式碼恢復自定義leftBarButtonItem導致側滑失效
- iOS中一句程式碼解決倒數計時問題iOS
- 如何使用ABSL程式碼呼叫Web serviceWeb
- Swift如何呼叫Objective-C程式碼SwiftObjectC程式
- .net客戶端呼叫activeMQ程式碼客戶端MQ
- linux c程式呼叫lua程式碼的例項LinuxC程式
- 一句 Task.Result 就死鎖, 這程式碼還怎麼寫?
- 聽我一句勸,業務程式碼中,別用多執行緒。執行緒
- choop.php一句話指令碼OOPPHP指令碼
- tooltip提示框
- PHP根據wsdl生成呼叫soapwebservice程式碼PHPWeb
- JDBC 呼叫儲存過程程式碼示例JDBC儲存過程
- ssycms不常用的文章列表呼叫程式碼
- PbootCMS 模板幻燈片呼叫程式碼大全boot
- js呼叫執行exe應用程式程式碼例項JS
- 鏈式呼叫 | 我的程式碼沒有else