iOS程序-UIButton和UIImageView的区别

1.显示图片
1> UIImageView只能一种图片(图片默认会填充整个UIImageView)  image\setImage:
2> UIButton能显示2种图片
* 背景 (背景会填充整个UIButton)  setBackroungImage:forState:
* 前置(覆盖在背景上面的图片,按照之前的尺寸显示)  setImage:forState:
* 还能显示文字
2.点击事件
1> UIImageView默认是不能响应点击事件
2> UIButton能响应点击事件 : addTarget:action:forControlEvents:
3.使用场合
1> UIImageView : 只显示图片,不监听点击,点击了图片后不做任何反应
2> UIButton : 既显示图片,又监听点击,点击了图片后做一些其他事情
4.继承结构
1> UIButton之所以能添加监听器来监听事件,是因为它继承自UIControl
2> UIImagevIew之所以不能添加监听器来监听事件,是因为它直接继承自UIView

操作方法

  • 01

    MJViewController.h #import <UIKit/UIKit.h> @interface MJViewController : UIViewController @end

  • 02

    MJViewController.m #import "MJViewController.h" @interface MJViewController () @end @implementation MJViewController - (void)viewDidLoad { [super viewDidLoad]; // 1.添加ImageView UIImageView *imageView = [[UIImageView alloc] init]; imageView.image = [UIImage imageNamed:@"014.png"]; imageView.frame = CGRectMake(0, 0, 150, 150); [self.view addSubview:imageView]; // 2.UIButton UIButton *btn = [[UIButton alloc] init]; // 设置背景图片 [btn setBackgroundImage:[UIImage imageNamed:@"bg.png"] forState:UIControlStateNormal]; // 设置前置图片 [btn setImage:[UIImage imageNamed:@"016.png"] forState:UIControlStateNormal]; btn.frame = CGRectMake(0, 100, 150, 150); [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside]; [btn setTitle:@"我是按钮" forState:UIControlStateNormal]; [self.view addSubview:btn]; //    UISlider *slider = [[UISlider alloc] init]; //    slider.frame = CGRectMake(10, 250, 200, 50); //    slider.minimumValue = 10; //    slider.maximumValue = 20; //    [slider addTarget:self action:@selector(sliderChange:) forControlEvents:UIControlEventValueChanged]; //    [self.view addSubview:slider]; } - (void)sliderChange:(UISlider *)s { NSLog(@"%f", s.value); } - (void)btnClick:(UIButton *)mybtn { NSLog(@"%@", mybtn); } @end

(0)

相关推荐

  • Android.iOS和Windows Phone 三大操作系统的区别与市场分析(图文)

    据国外媒体报道,Android、iOS和Windows Phone 7三大操作系统有何差别,本文将通过13个方面进行对比。 1.设备数量 运行Android操作系统的设备数量最多,有上百款,最大的制造 ...

  • 谁家的小程序强?支付宝与微信区别对比介绍

    微信小程序从初现雏形到正式发布,短短一年时间,其开发者平台已经积累了超过20万的开发者,有着天生流量入口的这一功能也成功吸引了各方的关注. 作为微信老对手的支付宝,显然不会放过这块,据爱范儿曝料,不出 ...

  • iphone升级用电脑还是手机(ios电脑升级和手机升级区别)

    手机已经成为每个人的必需品,除了一些非智能机.智能机都是需要更新系统的,比如我们iOS12更新到iOS13.更新系统会带来一些新的版本号,新的功能,修复此前系统中的bug,优化手机性能等等.正常来说, ...

  • 微信小程序和APP有什么区别 微信小程序和App手机软件对比评测

    “小程序是一种不需要下载安装即可使用的应用,它实现了应用‘触手可及’的梦想,用户扫一扫或搜一下即可打开应用:也体现了‘用完即走’的理念,用户不用关心是否安装太多应用的问题.应用将无处不在,随时可用,但 ...

  • 网站、APP、微信开发有什么区别?

    在移动互联网横行的今天,大量的用户对APP已经不再陌生,但是,也有很多企业分不知如何去区分网站.APP.微信开发.那么网站.APP.微信开发有什么区别? 操作方法 01 1.网站开发 网站其实是已经非 ...

  • 怎样创建一个window应用程序

    我们将介绍如何创建window应用程序,如何利用基本控件设计窗体,我们采用案例的形式给大家讲解,案例:制作系统登录界面。这里我们结合ADO.NET实现高校学生管理系统(StudentSys)的登录界面 ...

  • Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得

    iOS功能简介iOS模拟器,是在Mac下面开发程序时,开发iOS平台的程序时候,可以使用的辅助工具. 其功能是,帮你模拟iOS平台设备,在模拟器上运行对应的程序,以方便你没有实体设备的时候去调试程序. ...

  • 微信小程序和公众号的区别是什么?

    2017年诞生的微信小程序,和人所皆知的"公众号"有什么区别和联系?相信阅读完本文,您会有一个清晰的答案. 操作方法 01 1,微信小程序是什么? 一句话解释:微信小程序是运行在微 ...

  • 什么是微信小程序,营销型小程序?

    小程序是指微信公众平台小程序,小程序可以帮助开发者快速的开发小程序,小程序可以在微信内被便捷地获取和传播;是一种不需要下载安装即可使用的应用小程序. 一.什么是小程序 01 小程序是指微信公众平台小程 ...