|
@@ -7,25 +7,254 @@
|
|
|
|
|
|
#import "ComontAlretType2ViewController.h"
|
|
|
|
|
|
-@interface ComontAlretType2ViewController ()
|
|
|
+@interface ComontAlretType2ViewController (){
|
|
|
+ NSString *titleStr;
|
|
|
+ NSString *msgStr;
|
|
|
+ NSString *imageStr;
|
|
|
+ NSString *cancelTitleStr;
|
|
|
+ NSString *okTitleStr;
|
|
|
+ NSString *otherTitleStr;
|
|
|
+ BOOL isOkBtnHighlight;
|
|
|
+
|
|
|
+ CommonAlertType2_ClickOkBtn didClickOkBtn;
|
|
|
+ CommonAlertType2_ClickCancelBtn didClickCanaelBtn;
|
|
|
+ CommonAlertType2_ClickOtherBtn didClickOtherBtn;
|
|
|
+}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@implementation ComontAlretType2ViewController
|
|
|
|
|
|
+- (id)initWithTitle:(NSString *)title msg:(NSString *)msg imageStr:(NSString *)images cancelTitle:(NSString *)cancelTitle okTitle:(NSString *)okTitle otherTitle:(NSString *)otherTitle isOkBtnHighlight:(BOOL)okBtnHighlight didClickOk:(CommonAlertType2_ClickOkBtn)ok didClickCancel:(CommonAlertType2_ClickCancelBtn)Cancel didClickOther:(CommonAlertType2_ClickOtherBtn)Other{
|
|
|
+ self = [super init];
|
|
|
+
|
|
|
+ titleStr = title;
|
|
|
+ msgStr = msg;
|
|
|
+ imageStr = images;
|
|
|
+ cancelTitleStr = cancelTitle;
|
|
|
+ okTitleStr = okTitle;
|
|
|
+ otherTitleStr = otherTitle;
|
|
|
+ isOkBtnHighlight = okBtnHighlight;
|
|
|
+
|
|
|
+ didClickOkBtn = ok;
|
|
|
+ didClickCanaelBtn = Cancel;
|
|
|
+ didClickOtherBtn = Other;
|
|
|
+ return self;
|
|
|
+}
|
|
|
+
|
|
|
- (void)viewDidLoad {
|
|
|
[super viewDidLoad];
|
|
|
// Do any additional setup after loading the view.
|
|
|
+
|
|
|
+ [self drawAnyView];
|
|
|
+}
|
|
|
+
|
|
|
+- (void)drawAnyView{
|
|
|
+ [self.view setBackgroundColor:HW000000Color60];
|
|
|
+
|
|
|
+ [self.toolBar setHidden:YES];
|
|
|
+ [self.navigationBar setHidden:YES];
|
|
|
+
|
|
|
+ UIView *bgView = [[UIView alloc] init];
|
|
|
+ [bgView setBackgroundColor:[UIColor whiteColor]];
|
|
|
+ [bgView.layer setCornerRadius:8.f];
|
|
|
+
|
|
|
+ [self.view addSubview:bgView];
|
|
|
+
|
|
|
+ [bgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.centerY.equalTo(self.view.mas_centerY).offset(10*HAUTOSCALE);
|
|
|
+ make.centerX.equalTo(self.view.mas_centerX);
|
|
|
+ make.width.mas_equalTo(300.f);
|
|
|
+ }];
|
|
|
+
|
|
|
+ CGFloat curTop = 30.0;
|
|
|
+
|
|
|
+ //图片
|
|
|
+ UIImageView *topImageView = [[UIImageView alloc] init];
|
|
|
+ //topImageView.backgroundColor = [UIColor redColor];
|
|
|
+
|
|
|
+ if(imageStr && imageStr.length > 0){
|
|
|
+ topImageView.image = [UIImage imageNamed:imageStr];
|
|
|
+ [bgView addSubview:topImageView];
|
|
|
+ [topImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.width.mas_equalTo(80.f);
|
|
|
+ make.height.mas_equalTo(80.f);
|
|
|
+ make.centerX.equalTo(bgView.mas_centerX);;
|
|
|
+ make.top.mas_equalTo(curTop);
|
|
|
+ }];
|
|
|
+
|
|
|
+ curTop = 30 + 80 + 10.0;
|
|
|
+ }
|
|
|
+
|
|
|
+ /*主标题*/
|
|
|
+ UILabel *titleLabel = [[UILabel alloc] init];
|
|
|
+ [titleLabel setTextColor:HW0A132BColor];
|
|
|
+ [titleLabel setFont:[UIFont boldSystemFontOfSize:16.f]];
|
|
|
+ [titleLabel setTextAlignment:(NSTextAlignmentCenter)];
|
|
|
+ [titleLabel setText:titleStr];
|
|
|
+ [titleLabel setNumberOfLines:0];
|
|
|
+
|
|
|
+ if (titleStr.length > 0){
|
|
|
+ [bgView addSubview:titleLabel];
|
|
|
+ [titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(10.f);
|
|
|
+ make.right.mas_equalTo(-10.f);
|
|
|
+ make.top.mas_equalTo(curTop);
|
|
|
+ }];
|
|
|
+ }
|
|
|
+
|
|
|
+ /*副标题*/
|
|
|
+ UILabel *msgLabel = [[UILabel alloc] init];
|
|
|
+ [msgLabel setTextColor:HW333333Color];
|
|
|
+ [msgLabel setFont:[UIFont systemFontOfSize:15.f]];
|
|
|
+ [msgLabel setTextAlignment:(NSTextAlignmentLeft)];
|
|
|
+ msgLabel.tag = 11;
|
|
|
+ [msgLabel setText:msgStr];
|
|
|
+ [msgLabel setNumberOfLines:0];
|
|
|
+
|
|
|
+ if (msgStr.length > 0){
|
|
|
+ [bgView addSubview:msgLabel];
|
|
|
+ [msgLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(10.f);
|
|
|
+ make.right.mas_equalTo(-10.f);
|
|
|
+ if (titleStr.length > 0){
|
|
|
+ make.top.equalTo(titleLabel.mas_bottom).offset(15.f);
|
|
|
+ }else{
|
|
|
+ make.top.mas_equalTo(curTop);
|
|
|
+ }
|
|
|
+ }];
|
|
|
+ }
|
|
|
+
|
|
|
+ /*双按钮*/
|
|
|
+ /*取消*/
|
|
|
+ //CGFloat w_btn = 300;
|
|
|
+ CGFloat h_btn = 51;
|
|
|
+
|
|
|
+ /*取消按钮*/
|
|
|
+ UIButton *cancelBtn = [[UIButton alloc] init];
|
|
|
+ cancelBtn.frame = CGRectMake(0, 0, 115, 48.f);
|
|
|
+ [cancelBtn addTarget:self action:@selector(cancelBtnClick) forControlEvents:(UIControlEventTouchUpInside)];
|
|
|
+ [cancelBtn setTitle:cancelTitleStr forState:(UIControlStateNormal)];
|
|
|
+ [cancelBtn.titleLabel setFont:[UIFont systemFontOfSize:16.f]];
|
|
|
+ [cancelBtn setTitleColor:[UIColor hwColor:@"#01B7EA"] forState:UIControlStateNormal];
|
|
|
+ cancelBtn.tag = 999;
|
|
|
+ [bgView addSubview:cancelBtn];
|
|
|
+ [cancelBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ make.bottom.equalTo(bgView.mas_bottom).offset(0.f);
|
|
|
+ make.height.mas_equalTo(h_btn);
|
|
|
+ }];
|
|
|
+
|
|
|
+ UIView *lineView = [[UIView alloc] init];
|
|
|
+ lineView.backgroundColor = [UIColor hwColor:@"#CFD1D4"];
|
|
|
+ [bgView addSubview:lineView];
|
|
|
+ [lineView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ make.bottom.equalTo(cancelBtn.mas_top).offset(0.f);
|
|
|
+ make.height.mas_equalTo(1.0);
|
|
|
+ }];
|
|
|
+
|
|
|
+ if (otherTitleStr.length > 0){
|
|
|
+
|
|
|
+ /*残忍拒绝*/
|
|
|
+ UIButton *otherBtn = [[UIButton alloc] init];
|
|
|
+ [otherBtn addTarget:self action:@selector(otherBtnClick) forControlEvents:(UIControlEventTouchUpInside)];
|
|
|
+ [otherBtn setTitle:otherTitleStr forState:(UIControlStateNormal)];
|
|
|
+ [otherBtn setTitleColor:[UIColor hwColor:@"#01B7EA"] forState:UIControlStateNormal];
|
|
|
+ [otherBtn.titleLabel setFont:[UIFont systemFontOfSize:16.f]];
|
|
|
+
|
|
|
+ [bgView addSubview:otherBtn];
|
|
|
+ [otherBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ make.bottom.equalTo(lineView.mas_top).offset(0.f);
|
|
|
+ make.height.mas_equalTo(h_btn);
|
|
|
+ }];
|
|
|
+
|
|
|
+ UIView *lineView2 = [[UIView alloc] init];
|
|
|
+ lineView2.backgroundColor = [UIColor hwColor:@"#CFD1D4"];
|
|
|
+ [bgView addSubview:lineView2];
|
|
|
+ [lineView2 mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ make.bottom.equalTo(otherBtn.mas_top).offset(0.f);
|
|
|
+ //make.top.equalTo(msgLabel.mas_bottom).offset(20.f);
|
|
|
+ make.height.mas_equalTo(1.0);
|
|
|
+ }];
|
|
|
+ }
|
|
|
+
|
|
|
+ if (okTitleStr.length > 0){
|
|
|
+
|
|
|
+ /*残忍拒绝*/
|
|
|
+ UIButton *okBtn = [[UIButton alloc] init];
|
|
|
+ [okBtn addTarget:self action:@selector(okBtnClick) forControlEvents:(UIControlEventTouchUpInside)];
|
|
|
+ [okBtn setTitle:okTitleStr forState:(UIControlStateNormal)];
|
|
|
+ //[okBtn setTitleColor:HW0A132BColor forState:(UIControlStateNormal)];
|
|
|
+ [okBtn.titleLabel setFont:[UIFont systemFontOfSize:16.f]];
|
|
|
+ [okBtn setTitleColor:[UIColor hwColor:@"#01B7EA"] forState:UIControlStateNormal];
|
|
|
+
|
|
|
+ [bgView addSubview:okBtn];
|
|
|
+ [okBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ if (otherTitleStr.length > 0){
|
|
|
+ make.bottom.equalTo(lineView.mas_top).offset(-h_btn);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ make.bottom.equalTo(lineView.mas_top).offset(0.f);
|
|
|
+ }
|
|
|
+
|
|
|
+ make.height.mas_equalTo(h_btn);
|
|
|
+ }];
|
|
|
+
|
|
|
+ UIView *lineView1 = [[UIView alloc] init];
|
|
|
+ lineView1.backgroundColor = [UIColor hwColor:@"#CFD1D4"];
|
|
|
+ [bgView addSubview:lineView1];
|
|
|
+ [lineView1 mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
|
+ make.left.mas_equalTo(0);
|
|
|
+ make.right.mas_equalTo(0);
|
|
|
+ make.bottom.equalTo(okBtn.mas_top).offset(0.f);
|
|
|
+ make.top.equalTo(msgLabel.mas_bottom).offset(20.f);
|
|
|
+ make.height.mas_equalTo(1.0);
|
|
|
+ }];
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
-#pragma mark - Navigation
|
|
|
|
|
|
-// In a storyboard-based application, you will often want to do a little preparation before navigation
|
|
|
-- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
|
|
|
- // Get the new view controller using [segue destinationViewController].
|
|
|
- // Pass the selected object to the new view controller.
|
|
|
+- (void)cancelBtnClick{
|
|
|
+ [self dismissViewControllerAnimated:YES completion:^{
|
|
|
+ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
|
|
+
|
|
|
+
|
|
|
+ if(self->didClickCanaelBtn){
|
|
|
+ self->didClickCanaelBtn();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }];
|
|
|
}
|
|
|
-*/
|
|
|
|
|
|
+- (void)okBtnClick{
|
|
|
+ [self dismissViewControllerAnimated:YES completion:^{
|
|
|
+ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
|
|
+
|
|
|
+ if(self->didClickOkBtn){
|
|
|
+ self->didClickOkBtn();
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ }];
|
|
|
+}
|
|
|
+
|
|
|
+- (void)otherBtnClick{
|
|
|
+ [self dismissViewControllerAnimated:YES completion:^{
|
|
|
+ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
|
|
+
|
|
|
+ if(self->didClickOtherBtn){
|
|
|
+ self->didClickOtherBtn();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }];
|
|
|
+}
|
|
|
@end
|