上一节中我们讲到添加一个button并为其添加点击监听事件,上上一节中我们讲到添加一个textview并显示一串字符串,这一节我们把前面的内容连起来,改成点击button,然后就改变textview上的显示内容。

结合前两节的代码,其实很简单,主要是把textview定义到外面,让buton的监听事件函数里可以调用他,其次是在监听函数里添加改变的内容,直接上代码

bool isOn=1;
UITextView *textview1;
int clickNum=0;
@implementation ViewController
- (void) toggleButton: (UIButton *) button{if (isOn == 1){[button setTitle:@"On" forState:UIControlStateNormal];[button setTitle:@"On" forState:UIControlStateHighlighted];//[button setBackgroundImage:baseGreen forState:UIControlStateNormal];//[button setBackgroundImage:altGreen forState:UIControlStateHighlighted];isOn=0;}else{[button setTitle:@"Off" forState:UIControlStateNormal];[button setTitle:@"Off" forState:UIControlStateHighlighted];//[button setBackgroundImage:baseRed forState:UIControlStateNormal];//[button setBackgroundImage:altRed forState:UIControlStateHighlighted];isOn=1;}clickNum++;[textview1 setText:[NSString stringWithFormat:@"click times : %d ",clickNum] ];
}- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.float capWidth = 110.0f;//baseGreen = [[[UIImage imageNamed:@"green.png"] stretchableImageWithLeftCapWidth:capWidth topCapHeight:0.0f] retain];//baseRed = [[[UIImage imageNamed:@"red.png"] stretchableImageWithLeftCapWidth:capWidth topCapHeight:0.0f] retain];//altGreen = [[[UIImage imageNamed:@"green2.png"] stretchableImageWithLeftCapWidth:capWidth topCapHeight:0.0f] retain];//altRed = [[[UIImage imageNamed:@"red2.png"] stretchableImageWithLeftCapWidth:capWidth topCapHeight:0.0f] retain];// 创建UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];button.frame = CGRectMake(0.0f, 0.0f, 300.0f, 233.0f);button.center = CGPointMake(160.0f, 140.0f);// 设置aligment 属性button.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;button.titleLabel.textAlignment = UITextAlignmentCenter;//设置title自适应对齐button.titleLabel.lineBreakMode = UILineBreakModeWordWrap;// 设置颜色和字体[button setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];[button setTitleColor:[UIColor lightGrayColor] forState:UIControlStateHighlighted];button.titleLabel.font = [UIFont boldSystemFontOfSize:24.0f];//设置title[button setTitle:@"Off" forState:UIControlStateNormal];[button setTitle:@"Off" forState:UIControlStateHighlighted];//设置背景//[button setBackgroundImage:baseGreen forState:UIControlStateNormal];//[button setBackgroundImage:altGreen forState:UIControlStateHighlighted];// 添加 action[button addTarget:self action:@selector(toggleButton:) forControlEvents: UIControlEventTouchUpInside];// 把button放入view[self.view addSubview:button];//定义一个textviewtextview1 = [[UITextView alloc]init ];//位置textview1.frame = CGRectMake(0,20,100,50);//背景颜色textview1.backgroundColor = [UIColor blueColor];//设置它显示的内容textview1.text = @"hellow_iOS";//将视图加到父视图中[self.view addSubview:textview1];}

这样,clickNum每次点击就会加一,并在textview上显示 当前点击了几次

iOS应用开发入门(3)——点击button控制textview相关推荐

  1. IOS 初级开发入门教程(四)基础控件使用小练习

    前言 看完前面3章的内容,基本对IOS开发有一些认识了,这章我们开始动手去实践做点小练习,学习如何创建并设置标签和按钮(Label & Button)的相关属性,以及通过一个交互式的案例演示动 ...

  2. java ios 3des_IOS开发入门之iOS 3DES加密 和 java 3DES 解密

    本文将带你了解IOS开发入门之iOS 3DES加密  和 java  3DES 解密,希望本文对大家学ios有所帮助 对称加密算法 3des   在iOS 客户端加密算法 首先进入头文件: #impo ...

  3. iOS应用开发入门(1)——第一个iOS应用

    最近因为工作的原因,需要学习iOS应用开发. 本人现在在公司负责的是智能设备联网模块,所谓的智能设备联网,就是让一些智能设备(多半是没用屏幕的设备)连上wifi,因为没有屏幕,所以无法像手机和平板那样 ...

  4. IOS 初级开发入门教程(一)介绍篇

    导读 目前移动端开发市场上引导开发者追求技多不压身,一个全栈开发者至少要懂后台服务器.数据库.Android.web.ios开发等."一超多强"是指开发者先成为一门技术的专家然后掌 ...

  5. IOS 初级开发入门教学(一)介绍篇

    导读 目前移动端开发市场上引导开发者追求技多不压身,一个全栈开发者至少要懂后台服务器.数据库.Android.web.ios开发等.一超多强"是指开发者先成为一门技术的专家然后掌握了解多门技 ...

  6. iOS应用开发入门(2)——添加一个按钮

    上节讲到开发了第一个弱智小应用,终于体会到iOS开发的小快乐的,下面继续深入一点点点点的学习,加个按钮试试吧. 首先网上随便把了一段代码,跟按钮有关的,虽然我现在看不懂他是干嘛的,但是跑一下就知道了( ...

  7. tkinter笔记:通过点击button 控制标签的显示 (莫烦python笔记)

    tkinter 笔记 :主体框架&窗口内容_UQI-LIUWJ的博客-CSDN博客 中,我们知道了tkinter的主体框架 现在我们需要做这么一个操作:每点一次按钮,标签变化一次 1 首先是和 ...

  8. Mac OS X下配置Cocos2d-x for Android(Eclipse)IOS(Xcode)开发环境

    前面一段时间只用Cocos2d-x在IOS平台下开发, 学习Cocos2d-x不就是为了他的跨平台特性么? 所以必须也要掌握在Android下的开发, 才能引爆Cocos2d-x的跨平台特性, 发挥其 ...

  9. iOS(一):Swift纯代码模式iOS开发入门教程

    Swift纯代码模式iOS开发入门教程 项目初始化(修改为纯代码项目) 安装第三方库(以`SnapKit`库为例) 桥接OC库(QMUIKit) 封装视图并进行导航跳转 示例:使用 `TangramK ...

最新文章

  1. Python这么慢,为啥大公司还在用?
  2. 移动端网页fixed布局问题解决方案
  3. 计算机体系结构--第一章1----体系结构的分类
  4. 从零开始学视觉Transformer(6):Swin Transformer-1
  5. IEEE选择和下载投稿期刊模板(LaTeX和Word)网站
  6. PRML-系列二之2.3
  7. 深度学习——Nesterov方法的学习笔记
  8. JavaScript中尺寸、坐标
  9. 首届恩智浦智能车比赛回顾
  10. linux 进程共享内存同步,Linux使用共享内存通信的进程同步退出问题
  11. 高手必备 | Revit插件到底哪个好?区别是什么?
  12. python绘制网络拓扑图_python绘制网络拓扑_网络拓扑的python表示
  13. 上篇:基于球面调和基的实时全局光照明
  14. VIVADO 4.CDMA的使用
  15. Junit Test类报错Class not found XXX
  16. Hadoop中关于datenode无法启动的解决办法
  17. 认清现实|别再忽悠大学生创业了
  18. STC-ISP使用指南
  19. [CVPR2022] Cross-Model Pseudo-Labeling for Semi-Supervised Action Recognition
  20. 基于Springboot+Vue+小程序学生课程考勤系统设计

热门文章

  1. 双向LSTM在时间序列异常值检测的应用
  2. vscode:解决操作git总让输入用户名及密码问题
  3. 路径名导致的异常:javax.imageio.IIOException: Can‘t read input file!
  4. 使用WHERE子句将数组传递给查询
  5. Python字典理解
  6. 何时将空间编码为加号(+)或%20?
  7. 原生js实现Ajax,JSONP
  8. java如何使用elasticsearch
  9. linux内核中符号地址的获取
  10. 每天一个linux命令-touch