iOS开发1:动态添加按钮

news/2024/7/5 2:59:37

想要的效果是,单击一个已有的按钮后自动创建一个新的按钮,并为新按钮添加事件,使得单击时弹出提示框。

1、运行Xcode 4.2,新建一个Single View Application工程,取名DynamicButton:

2、打开ViewController.xib,拖一个按钮到视图,按钮名设置为“添加一个按钮”。

3、选中这个按钮,按住Ctrl,把按钮拖到ViewController.h文件指定位置:

松开鼠标,在弹出的窗口键入以下信息:

即为这个按钮添加响应事件 addButton

4、打开ViewController.m,找到addButton函数,添加以下代码:

01- (IBAction)addButton:(id)sender {
02    //动态添加一个按钮
03    CGRect frame = CGRectMake(300, 300, 300, 50); 
04    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
05    button.frame = frame;
06    [button setTitle:@"新添加的动态按钮" forState: UIControlStateNormal];  
07    button.backgroundColor = [UIColor clearColor];  
08    button.tag = 2000;
09    [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];  
10    [self.view addSubview:button];  
11}

5、在addButton函数后边添加一个函数:
01//这个是新按钮的响应函数
02-(IBAction) buttonClicked:(id)sender {  
03    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" 
04                                                    message:@"单击了动态按钮!"   
05                                                   delegate:self   
06                                          cancelButtonTitle:@"确定"  
07                                          otherButtonTitles:nil];  
08    [alert show];
09    [alert release];
10}

6、编译并运行:


http://www.niftyadmin.cn/n/3653634.html

相关文章

iOS开发2:读取plist文件

在Xcode中建立一个iOS项目后,会自己产生一个.plist文件,点击时会看见它显示的是类似于excel表格: 但是,如果打开方式选择Source Code,你会看见它其实是一个xml文件。 我们会做一个小例子,在这个例子中我们…

IBM2007蓝色之路IPAT测试感言

5月24日,本人有幸接到IBM蓝色之路实习生计划26日的笔试通知,兴奋得一宿没睡好觉。 5月26日,提前一小时顶着满天乌云来到哈工大正光楼,待考。接近9时,传说中的IBM漂亮JJ拿着卷子走进考场,果然有种让人眼前一…

RCP程序设计实战之一:实战Splash Screen

我的实验环境如下:WindowsXP SP2,Eclipse 3.3VEGEFEMFGMFUML2。在没有特殊声明的情况下,全部的代码都将在这个环境中实现。1.1. 缺省启动Logo与进度条通常情况下,当你用Eclipse的RCP向导生成一个应用程序时,PDE总是会在…

iOS开发3:关闭键盘

在 iOS 程序中当想要在文本框中输入数据,轻触文本框会打开键盘。对于 iPad 程序,其键盘有一个按钮可以用来关闭键盘,但是 iPhone 程序中的键盘却没有这样的按钮,不过我们可以采取一些方法关闭它。例如,我们可以实现按下…

IBM IPAT笔试题大搜刮

前一阵子参加了IBM蓝色之路的笔试,等了好多天都没什么动静,本来十分郁闷,但论坛上的消息似乎说明哈尔滨地区的好像一个接到面试通知的都没有,又转念一想当时参加笔试的大多为工大学生,于是就释然了-----跟工大战友死在…

JasperReport实现网络办公系统的报表(一):工程源码+系统使用说明书

在学习JasperReport的过程中,通过其自带的例子以及网络上热心朋友的帖子,我们可以在一段时间之后大略掌握其核心功能,但是这些知识不能让我们立刻就能成为一个可以随时投入工作的人。原因在于,我们在实际的项目中可能会遇到各种各…

UISlider与UISwitch控件

1、UISlider控件就像其名字一样,是一个像滑动变阻器的控件: 上图中的圆圈可以移动,它处在不同的位置,这个UISlider会有不同的值。接下来的例子是关于UISlider的简单使用。 (1)假设我们已经建立了一个Singl…

Rod和Ted,Don之间关于EJB和Spring的讨论(一)

From:http://blog.springframework.com/rod/ 几天前,在Don Box的博客上,我设法回答一个问题"Spring比EJB简单吗?".现在,这个问题像是有些多余了,因为Spring和EJB的目标并不完全一致,但也许从EJB和Spring两…