【iOS开发】IOS界面开发使用viewWithTag:(int)findTag方法获取界面元素
http://blog.csdn.net/lxp1021/article/details/43952551
今天在开发OS界面的时候,遇到通过界面UIview viewWithTag:(int)findTag选择器定位界面元素的问题,以下把在界面中给元素打Tag,以及通过选择器查找界面元素的代码贴出来,供以后使用:
界面元素打tag
- //事件监听的问题
- CGRect btn2Frame = CGRectMake(100.0, 150.0, 60.0, 44.0);
- //两种不同的方式创建
- UIButton *btn2 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
- btn2.frame =btn2Frame;
- //设置Title
- [btn2 setTitle:@"BTN2" forState:UIControlStateNormal];
- [btn2 setTag:10001];
- //[btn2 setBackgroundImage:[UIImage imageNamed:@"pic.png"] forState:UIControlStateNormal];
- [btn2 setBackgroundColor:[UIColor blueColor]];
- [btn2 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
- [self.view addSubview:btn2];
- //事件监听的问题
- CGRect btn1Frame = CGRectMake(200.0, 150.0, 60.0, 44.0);
- //两种不同的方式创建
- UIButton *btn1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
- btn1.frame =btn1Frame;
- //设置Title
- [btn1 setTitle:@"BTN1" forState:UIControlStateNormal];
- [btn1 setTag:10002];
- //[btn2 setBackgroundImage:[UIImage imageNamed:@"pic.png"] forState:UIControlStateNormal];
- [btn1 setBackgroundColor:[UIColor blueColor]];
- [btn1 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
- [self.view addSubview:btn1];
- CGRect workingFrame;
- workingFrame.origin.x = 15;
- workingFrame.origin.y = 400;
- workingFrame.size.width = 140;
- workingFrame.size.height = 40;
- for(int i = 0; i < 6; i++)
- {
- //UIView *myView = [[UIView alloc] initWithFrame:workingFrame];
- UIButton *myView =[[UIButton alloc] initWithFrame:workingFrame];
- [myView setTag:i];//标记方块
- [myView setBackgroundColor:[UIColor blueColor]];
- // NSString tit = "Button"i;
- //NSLog(@"this is Button %d", i);
- [myView setTitle:@"Button %d" forState:UIControlStateNormal];
- workingFrame.origin.x = workingFrame.origin.x + workingFrame.size.width + 10;
- [myView addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
- [self.view addSubview:myView];
- }
在方法中使用tag选择器定位元素:
- -(void)btnPressed:(id)sender{
- UIButton *thisBtn = (UIButton*)sender;
- //thisBtn.hidden = YES;
- //self.view viewWithTag:[00002];
- UIButton *myButton = (UIButton *)[self.view viewWithTag:(10002)];
- myButton.hidden = YES;
- NSLog(@"this button tag is %d",thisBtn.tag);
- //NSLog(@"self.view subViews %@",self.view.subviews);
- // UIButton* thisBtn = (UIButton *)sender;
- // [[[UIAlertView alloc] initWithTitle:@"Button" message:[NSString stringWithFormat: @"This is button:%@",thisBtn] delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil] show];
- // NSLog(@"this tag is %d",btn.tag);
- }
【iOS开发】IOS界面开发使用viewWithTag:(int)findTag方法获取界面元素的更多相关文章
- iOS控件——UIView的viewWithTag:(int)findTag方法描述
UIView拥有一个viewWithTag:(int)findTag方法,调用方式为[MyView viewWithTag:整形数字]该方法返回tag == findTag的控件.ios控件中允许多个 ...
- 使用MonoTouch.Dialog简化iOS界面开发
MonoTouch.Dialog简称MT.D,是Xamarin.iOS的一个RAD工具包.它提供易于使用的声明式API,不需要使用导航控制器.表格等ViewController来定义复杂的应用程序UI ...
- iOS界面开发
[转载] iOS界面开发 发布于:2014-07-29 11:49阅读数:13399 iOS 8 和 OS X 10.10 中一个被强调了多次的主题就是大一统,Apple 希望通过 Hand-off ...
- iOS 界面开发
iOS 自动布局 iOS 界面 之 EALayout 无需反复编译,可视化实时界面,告别Storyboard AutoLayout Xib等等烦人的工具 iOS应用国际化教程(2014版) iOS开发 ...
- iOS开发之如何跳到系统设置里的各种设置界面
跳到更多设置界面 除了跳到WiFi设置界面,能不能跳到其他的设置界面呢?比如:定位服务.FaceTime.音乐等等.都是可以的,一起来看看如何实现的! 定位服务 定位服务有很多APP都有,如果用户关闭 ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- 《转》iOS音频视频初级开发
代码改变世界 Posts - 73, Articles - 0, Comments - 1539 Cnblogs Dashboard Logout HOME CONTACT GALLERY RSS ...
- Swift开发iOS应用过程中的问题和解决记录
虚拟机里安装OSX+XCode开发环境 用真机的请直接跳过这个部分. 主要是在VitrualBox里安装mac系统和xcode,参考这篇教程,VirtualBox的版本是4.3.18 r96156,O ...
- Xamarin体验:使用C#开发iOS/Android应用
Xamarin是Mono创始人Miguel de Icaza创建的公司,旨在让开发者可以用C#编写iOS, Android, Mac应用程序,也就是跨平台移动开发. 简介 Xamarin是基于Mo ...
随机推荐
- 菜鸟崛起 DB Chapter 1 数据库概述
1. 数据库的概述 在目前阶段,如果要存储和管理数据,则离不开数据库.当数据存储到数据库后,就会通过数据库管理系统对这些数据进行组织和管理.数据库由一批数据构成有序的集合,这些数据被存放在结构化的数据 ...
- Angularjs基础(二)
AngularJS 表达式 AngularJS 表达式写在双大括号内:{{expression}} AngularJS 表达式把数据绑定到HTML,这与ng-bind 指令有异曲同工之妙 Angula ...
- Web前端几种常见的实现水平垂直居中的方法
第一种: 父容器不设置宽度,用定位实现水平垂直居中. <!DOCTYPE html> <html lang="en"> <head> <m ...
- WebGL学习笔记(3)
根据上篇笔记,在对3D对象可进行普通的控制后,以及学习了http://hiwebgl.com的教程第10章内容:世界模型的载入以及控制镜头移动,经过多次调试矩阵代码,已经可以实现在世界中旋转镜头/控制 ...
- VMware ESXi-6.7——使用
1: 上传ISO文件 1.1:创建一个新目录,上传ISO 1.2: 在新建虚拟机时,点击DVD,选择数据ISO文件,选择要安装的ISO文件.并把连接打钩. 2:新建虚拟机 按照需求填写 硬盘的三种置备 ...
- Co. - VMware - vSphere
VMware vSphere 组件 VMware vSphere是VMware推出的基于云计算的新一代数据中心虚拟化套件,它由VMware ESXi.VMware vCenter Server.VMw ...
- SAPの販売管理で、価格設定をするまでの関連カスタマイズ画面
この記事ではSAP SDで.価格を決めるまでに必要な設定画面について述べています. condition table (条件テーブル) 条件レコードのキー項目を定義したもの.3桁の数字で名前がついている ...
- Scala Tuple
Python中的Tuple 元组将多样的对象集合到一起,元素不能修改,通过索引进行查找, 使用括号"()" 允许重复 Scala中的Tuple 概念跟Python是完全相同的 定义 ...
- VS2017发布微服务到docker
1.本文档以eShopOnContainers.sevices.identity为描述对象,并包含docker for windows的部分配置流程. 2.前置环境:win10操作系统.安装VS201 ...
- P1823 音乐会的等待(单调栈)
P1823 音乐会的等待 题目描述 N个人正在排队进入一个音乐会.人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人.队列中任意两个人A和B,如果他们是相邻或他们之间没有人比A或B高,那么 ...