默认图

原创 2015年11月18日 19:08:30

#import "NDDefaultView.h"

#import "Masonry.h"

#define WidthScale ([UIScreen mainScreen].bounds.size.width/375)

#define HeightScale ([UIScreen mainScreen].bounds.size.height/667)


@implementation NDDefaultView


-(id)initWithFrame:(CGRect)frame AndY:(NSInteger)Y DefaultView:(NSString *)image AndText:(NSString *)text AndButton:(NSString *)buttonText AndBlock:(void (^)(UIButton *))a

{

    self = [super initWithFrame:frame];

    if (self)

    {

        self.backgroundColor = [UIColor whiteColor];

        UIImage *defaultImage = [UIImage imageNamed:image];

        CGSize imageSize = defaultImage.size;

        UIImageView *defaultImageView = [UIImageView new];

        defaultImageView.image = defaultImage;

        [self addSubview:defaultImageView];

        [defaultImageView mas_makeConstraints:^(MASConstraintMaker *make) {

            make.centerX.equalTo(self);

            make.top.equalTo(self).with.offset(Y*HeightScale);

            make.width.mas_equalTo(imageSize.width);

            make.height.mas_equalTo(imageSize.height);

        }];

        

        UILabel *textLabel = [UILabel new];

        textLabel.text = text;

        textLabel.font = [UIFont systemFontOfSize:14.0];

        textLabel.textColor = UIColorWithRGB(0xB8B8B8);

        textLabel.textAlignment = NSTextAlignmentCenter;

        [self addSubview:textLabel];

        [textLabel mas_makeConstraints:^(MASConstraintMaker *make) {

            make.centerX.equalTo(self);

            make.top.equalTo(defaultImageView.mas_bottom).with.offset(5*HeightScale);

            make.width.equalTo(self);

            make.height.mas_equalTo(@(20*HeightScale));

        }];

        

        if (buttonText != nil)

        {

            self.myBlock = a;

            UIButton *btn = [UIButton new];

            btn.layer.borderColor = UIColorWithRGB(0xEE4F4E).CGColor;

            btn.layer.borderWidth = 1;

            btn.layer.cornerRadius = 15;

            btn.layer.masksToBounds = YES;

            [btn setTitle:buttonText forState:UIControlStateNormal];

            [btn setTitleColor:UIColorWithRGB(0xEE4F4E) forState:UIControlStateNormal];

            [btn addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];

            [self addSubview:btn];

            [btn mas_makeConstraints:^(MASConstraintMaker *make) {

                make.top.equalTo(textLabel.mas_bottom).with.offset(20*HeightScale);

                make.centerX.equalTo(self);

                make.width.mas_equalTo(@(98*WidthScale));

                make.height.mas_equalTo(@(30));

            }];

        }

    }

    return self;

}


-(void)click:(UIButton *)btn

{

    if (self.myBlock)

    {

        self.myBlock(btn);

    }

}


/*

// Only override drawRect: if you perform custom drawing.

// An empty implementation adversely affects performance during animation.

- (void)drawRect:(CGRect)rect {

    // Drawing code

}

*/


@end


相关文章推荐

a2zs 默认的效果图

  • 2012年07月28日 10:28
  • 10KB
  • 下载

图片加载未完成时的默认背景图处理(仅限自己封装的图片加载工具)

Android图片加载时,由于网络状况  图片大小  手机内存等情况会导致加载图片的时长不同,这时候就涉及到给ImagevVew设置默认图片的问题. 当然了,最简单的方法就是在每个使用ImageVi...

百度地图开发总结----1.在网页上使用百度地图(默认的)

百度地图

MindManager中如何将思维导图设置为默认模板?

如果觉得软件自带模板或者本地模板不能满足自己的需求,也可以把自己绘制的思维导图作为模板保存,以便以后继续使用,本文具体为大家讲讲如何设置MindManager模板。...

jQuery图片截图工具(默认为图片宽度)

最近给编辑做了个截图工具 一、功能:     A:图片自动载入     B:图片载入时,截取工具大小为图片大小     C:所截取图片长宽比例2.5:1 二、引用插件:jquery.Jcrop.j...

无脑利用gsettings修改截图默认保存位置

Linux/Gnome下如何修改截图默认保存位置

加载图片中默认图适配

前段时间项目让调ui,所有图片的默认图统一,但是大大小小的图片有好多,来回改比较麻烦。所以把我的思路在这里记一下。主要实现方式就是利用layer-list small_image.xml ...

js去除浏览器默认底图

我们在设计一些图片比较多的网页时,为了增强用户体验,希望图片加载的时候有个loading动画效果,而不是由空白到一下子出来。 在zen cart的二次开发过程中同样也遇到了这个问题,下面是我的解决方案...

win8系统应用商店默认应用安装位置更改方法(图文)

微软终于在win8系统推出了自己的应用商店,而且原来越多的软件厂商和开开发者开始想应用商店提交一些优质安全的应用,这对于小白用户来说是非常好的一个安全保障。win8或者win8.1应用商店的软件下载默...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:默认图
举报原因:
原因补充:

(最多只允许输入30个字)