#import <UIKit/UIKit.h>

@interface demo7_dayViewController : UIViewController {
IBOutlet UITextField *chi; // 尺
IBOutlet UITextField *meter; // 米
IBOutlet UITextField *feet; // 英尺
} // 此处 对每个文本框声明程序属性
@property (nonatomic, retain) UITextField *chi;
@property (nonatomic, retain) UITextField *meter;
@property (nonatomic, retain) UITextField *feet; -(IBAction)reset; @end
#import "demo7_dayViewController.h"

@interface demo7_dayViewController ()

@end

@implementation demo7_dayViewController

// 本指令告诉编译器去合成所需的“文本框”控件的存储器方法
@synthesize chi, feet, meter; // 构建重置文本框的长度单位数值的按钮方法
-(IBAction)reset {
chi.text = @"3.0003"; // 尺
meter.text = @""; // 米
feet.text = @"3.2808"; // 英尺
} // 捕获手指的触摸事件方法,触摸开始时会调用touchesBegan
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
// 建立视图触摸“touch”对象定制所有事件中的任何触摸对象
UITouch *touch = [[event allTouches] anyObject];
// 当手指在屏幕的触摸次数>=1次
if (touch.tapCount > ) {
// 隐藏文本框输入时的键盘
[chi resignFirstResponder];
[meter resignFirstResponder];
[feet resignFirstResponder];
}
} // 当点击return返回键时,键盘自动隐藏,返回单位转换计算结果
-(BOOL)textFieldShouldReturn:(UITextField*)textField {
if (textField == chi) {
[chi resignFirstResponder];
// 建立浮点变量,计算后转换成“米”
double m = [chi.text doubleValue]/3.003;
// 建立浮点变量,计算后转换成“英尺”
double f = m * 3.2808; // 把字符类型字符按固定格式定制给对象,"%.4f"的位置将显示小数点后4位浮点变量。
meter.text = [[NSString alloc]initWithFormat:@"%.4f", m];
feet.text = [[NSString alloc]initWithFormat:@"%.4f", f]; }
if (textField == meter) {
[meter resignFirstResponder];
double c = [meter.text doubleValue] * 3.003;
double f = [meter.text doubleValue] * 3.2808;
chi.text = [[NSString alloc]initWithFormat:@"%.4f", c];
feet.text = [[NSString alloc]initWithFormat:@"%.4f", f];
}
if (textField == feet) {
[feet resignFirstResponder];
double m = [feet.text doubleValue]/3.2808;
double c = m * 3.003;
meter.text = [[NSString alloc]initWithFormat:@"%.4f", m];
chi.text = [[NSString alloc]initWithFormat:@"%.4f", c];
} return YES;
} //- (void)viewDidLoad
//{
// [super viewDidLoad];
// // Do any additional setup after loading the view, typically from a nib.
//} // 释放可用内存供给应用程序,并提早发出警告提示
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} // 执行内存清理工作
-(void)dealloc{
[chi release];
[meter release];
[feet release];
[super dealloc];
} @end

IOS控件:长度单位换算(UITextField,IBAction,委托事件touchesBegan)的更多相关文章

  1. UIControl IOS控件编程 及UITextField的讲解

    第一部分 UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedControl分段控件.UISlider滑块.UITextField文本字段控件.UIPageCo ...

  2. 如何设计一个 iOS 控件?(iOS 控件完全解析) (转)

    前言 一个控件从外在特征来说,主要是封装这几点: 交互方式 显示样式 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内 ...

  3. 如何设计一个 iOS 控件?(iOS 控件完全解析)

    前言 一个控件从外在特征来说,主要是封装这几点: 交互方式 显示样式 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内 ...

  4. 设计一个 iOS 控件

    转载自:http://blog.csdn.net/zhangao0086/article/details/45622875 代码的等级:可编译.可运行.可测试.可读.可维护.可复用 前言 一个控件从外 ...

  5. 基本控件文档-UITextField属性

    CHENYILONG Blog 基本控件文档-UITextField属性 Fullscreen   UITextField属性技术博客http://www.cnblogs.com/ChenYilong ...

  6. 基本控件文档-UITextField属性---iOS-Apple苹果官方文档翻译

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...

  7. iOS控件之UIResponder类

    iOS控件之UIResponder类 在iOS中UIResponder类是专门用来响应用户的操作处理各种事件的,我们知道UIApplication.UIView.UIViewController这几个 ...

  8. iOS控件——UIView的viewWithTag:(int)findTag方法描述

    UIView拥有一个viewWithTag:(int)findTag方法,调用方式为[MyView viewWithTag:整形数字]该方法返回tag == findTag的控件.ios控件中允许多个 ...

  9. ios学习笔记图片+图片解释(c语言 oc语言 ios控件 ios小项目 ios小功能 swift都有而且笔记完整喔)

    下面是目录其中ios文件夹包括了大部分ios控件的介绍和演示,swift的时完整版,可以学习完swift(这个看的是swift刚出来一周的视频截图,可能有点赶,但是完整),c语言和oc语言的也可以完整 ...

随机推荐

  1. 05-spring-bean注入

    spring中只有两大核心技术: 控制反转(IOC)&依赖注入(DI),AOP(面向切面编程) 依赖注入:指利用配置文件的关系,来决定类之间的引用关系,以及数据的设置操作. 构造方法注入 默认 ...

  2. 仿网易/QQ空间视频列表滚动连播炫酷效果

    代码地址如下:http://www.demodashi.com/demo/11201.html 一.准备工作 AndroidStudio 开发环境 需要下载七牛的开源播放器SDK 本例子实现了仿网易/ ...

  3. Asp.Net Mvc+Localdb数据库项目在IIS部署的配置

    1.将数据库文件放到App_Data文件夹下 2.Web.config连接字符串配置 <add name="TestEntities" connectionString=&q ...

  4. 设备管理器里“SM总线控制器”、“其它PCI桥设备”驱动有问题

    WinXP重装系统后设备管理器里面出现黄色问号.各自是"SM总线控制器"和"其它PCI桥设备",主板是七彩虹的,芯片组是 geForce 7025的,南桥是 n ...

  5. 翻翻git之---实现QQ空间点赞部分实现的自己定义控件 EasyLikeArea

    转载请注明出处:王亟亟的大牛之路 昨天在家里弄鱼的事没上班,也就没写东西.决定今天早上补一篇,正好看到了 Easy like area in the circle of friends or QQ q ...

  6. 重写spring cloud config 本地bootstrap

    在spring-cloud中使用了config-server之后,需要在client端加入bootstrap作为配置文件,其中通常包含如下: spring.application.name=ms-as ...

  7. ConcurrentBag同线程元素的添加和删除

    https://www.mgenware.com/blog/?p=232 ConcurrentBag<T>对于同一个线程值的添加和删除是非常快的,因为ConcurrentBag内部将数据按 ...

  8. 记一下吧,又记不住啦。pipe

    currencydateuppercasejsonlimitTolowercaseasyncdecimalpercent ts == import { CurrencyPipe } from '@an ...

  9. PHPCMS 后台学习

    1.final 不能被子类改写,不可扩展2.私有不能被继承3.构造方法,第一个被调用的方法4.static访问 类名::方法名 parent::test();这里test可以不静态 m=模块名& ...

  10. JVM-String常量池与运行时常量池

    Start with JVM 周志明先生著-<深入理解Java虚拟机>,书买回来好几天了,但是最近才准备开始搞一搞了(哭瞎…..).首先是第一章的Java以及JVM发展历史,大概知道了现行 ...