iOS: 学习笔记, 动态添加按钮
1. 新建iOS -> Single View Application.
2. 个性控制器文件YYViewController.m(此处修改为你相应的控制器文件名)
//
// YYViewController.m
// StudyDynamicButton
//
// Created by yao_yu on 14-5-27.
// Copyright (c) 2014年 yao_yu. All rights reserved.
// #import "YYViewController.h" @interface YYViewController () @end @implementation YYViewController - (void)onAddButtonClicked{
CGRect pframe = self.view.frame;
CGFloat width = ;
CGFloat height = ;
CGRect frame = CGRectMake(pframe.origin.x + (pframe.size.width - width)/, pframe.origin.y + height * , width, height);
UIButton *btnAddedButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnAddedButton.backgroundColor = [UIColor clearColor];
[btnAddedButton setTitle:@"动态添加的按钮" forState:UIControlStateNormal];
btnAddedButton.frame = frame;
[btnAddedButton addTarget:self action:@selector(onDynamicButtonClicked) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnAddedButton];
} -(void) onDynamicButtonClicked{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"您点击了动态按钮" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定",@"第二项", nil];
[alert show];
} -(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSLog(@"按钮索引:%ld", buttonIndex);
} - (void)viewDidLoad
{
[super viewDidLoad]; //手动添加按钮
CGRect pframe = self.view.frame;
CGFloat width = ;
CGFloat height = ;
CGRect frame = CGRectMake(pframe.origin.x + (pframe.size.width - width)/, pframe.origin.y, width, height);
UIButton *btnAddDynamicButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnAddDynamicButton.backgroundColor = [UIColor clearColor];
[btnAddDynamicButton setTitle:@"增加动态按钮" forState:UIControlStateNormal];
btnAddDynamicButton.frame = frame;
[btnAddDynamicButton addTarget:self action:@selector(onAddButtonClicked) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnAddDynamicButton];
} - (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end
3. 运行程序.
iOS: 学习笔记, 动态添加按钮的更多相关文章
- IOS学习笔记48--一些常见的IOS知识点+面试题
IOS学习笔记48--一些常见的IOS知识点+面试题 1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memor ...
- IOS学习笔记25—HTTP操作之ASIHTTPRequest
IOS学习笔记25—HTTP操作之ASIHTTPRequest 分类: iOS2012-08-12 10:04 7734人阅读 评论(3) 收藏 举报 iosios5网络wrapper框架新浪微博 A ...
- iOS学习笔记-精华整理
iOS学习笔记总结整理 一.内存管理情况 1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段 落,开始 ...
- iOS学习笔记总结整理
来源:http://mobile.51cto.com/iphone-386851_all.htm 学习IOS开发这对于一个初学者来说,是一件非常挠头的事情.其实学习IOS开发无外乎平时的积累与总结.下 ...
- iOS学习笔记06—Category和Extension
iOS学习笔记06—Category和Extension 一.概述 类别是一种为现有的类添加新方法的方式. 利用Objective-C的动态运行时分配机制,Category提供了一种比继承(inher ...
- iOS学习笔记-自己动手写RESideMenu
代码地址如下:http://www.demodashi.com/demo/11683.html 很多app都实现了类似RESideMenu的效果,RESideMenu是Github上面一个stars数 ...
- iOS学习笔记-自定义过渡动画
代码地址如下:http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swif ...
- iOS学习笔记-地图MapKit入门
代码地址如下:http://www.demodashi.com/demo/11682.html 这篇文章还是翻译自raywenderlich,用Objective-C改写了代码.没有逐字翻译,如有错漏 ...
- iOS学习笔记——AutoLayout的约束
iOS学习笔记——AutoLayout约束 之前在开发iOS app时一直以为苹果的布局是绝对布局,在IB中拖拉控件运行或者直接使用代码去调整控件都会发上一些不尽人意的结果,后来发现iOS在引入了Au ...
随机推荐
- 启动RIDE时报错:wxPython not found
被这个错误折磨了一下午,关键时刻还得靠Google,原因是下载的wxPython是adm64的,安装的Python是32位的,一定要下载相匹配的文件. https://groups.google.co ...
- js修改编辑器内容、修改iframe子页内容
$('#question-stem-uploader').on('click','',function(){ //获取编辑器内容(ke-edit-iframe: 编辑器iframe的classm名称) ...
- 利用UI_APPEARANCE统一设置UITabBarItem样式
-(void)setupTabBarItemAttributes{ //attributes NSMutableDictionary *selectedAttrs= [NSMutableDiction ...
- 在code.org上自己写一个flappy bird游戏
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在code.org上自己写一个flappy bird游戏.
- 几个shell自动化脚本(定期清理、磁盘空间、搜寻关键字)
发布时间:2014-10-28 09:52:17 编辑:AHLinux.com 分享几个精致耐用的shell脚本,分别用于定期清理暂存文件.检查硬盘空间使用率.搜寻所有记录文件的关键字符串.有需要 ...
- 使用json-lib进行Java和JSON之间的转换【转载】
1. json-lib是一个java类库,提供将Java对象,包括beans, maps, collections, java arrays and XML等转换成JSON,或者反向转换的功能. 2. ...
- 四种可变交流swap方法
1.void swap(int &x, int &y){ int temp=x; x=y; y=temp; } 2.void swap(int &x, int &y){ ...
- NDK开发之访问域
Java有两类域,实例域和静态域.类的每个实例都有自己的实例域副本,而一个类的所有实例共享一个静态域(Java SE基础). JNI提供了相应的函数来访问这两类域,总体步骤是这样的: 1.通过对象引用 ...
- Java基础知识强化之集合框架笔记56:Map集合之HashMap集合(HashMap<String,Student>)的案例
1. HashMap集合(HashMap<String,Student>)的案例 HashMap是最常用的Map集合,它的键值对在存储时要根据键的哈希码来确定值放在哪里. HashMap的 ...
- codeforces 148D Bag of mice(概率dp)
题意:给你w个白色小鼠和b个黑色小鼠,把他们放到袋子里,princess先取,dragon后取,princess取的时候从剩下的当当中任意取一个,dragon取得时候也是从剩下的时候任取一个,但是取完 ...