文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

iOS怎么实现小型计算器

2023-06-29 01:01

关注

iOS怎么实现小型计算器,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

首先呢,编辑这个计算器用到了两种控件,Label和Button控件,Label控件用于显示结果,而Button则是相应的键。我把计算器的键分为三种numButton,caculatorButton和clearButton。numButton主要有数字0到9还有小数点,caculatorButton有加号,减号,乘号,除号,等号。clearButton有清除键。所以总共有三种方法。首先先对控件进行连接,Label进行属性连接,Button进行方法连接。

计算器的图形如下:

iOS怎么实现小型计算器

iOS怎么实现小型计算器

具体的代码如下;

HHLDelegate.h

#import <UIKit/UIKit.h> @class HHLViewController;@interface HHLAppDelegate : UIResponder <UIApplicationDelegate>@property (strong, nonatomic) UIWindow *window;@property (strong, nonatomic) HHLViewController *viewController; @end

HHLDelegate.m

#import "HHLAppDelegate.h" #import "HHLViewController.h" @implementation HHLAppDelegate - (void)dealloc{    [_window release];    [_viewController release];    [super dealloc];} - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];    // Override point for customization after application launch.    self.viewController = [[[HHLViewController alloc] initWithNibName:@"HHLViewController" bundle:nil] autorelease];    self.window.rootViewController = self.viewController;   self.viewController.view.backgroundColor=[[UIColor alloc]initWithRed:0.76 green:0.82 blue:0.94 alpha:0.8];    [self.window makeKeyAndVisible];    return YES;} - (void)applicationWillResignActive:(UIApplication *)application{    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.} - (void)applicationDidEnterBackground:(UIApplication *)application{    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.     // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.} - (void)applicationWillEnterForeground:(UIApplication *)application{    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.} - (void)applicationDidBecomeActive:(UIApplication *)application{    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.} - (void)applicationWillTerminate:(UIApplication *)application{    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.} @end

HHLViewController.h

#import <UIKit/UIKit.h> @interface HHLViewController : UIViewController @property(retain,nonatomic)IBOutlet UILabel *label;@property(copy,nonatomic)NSString *title;@property(retain,nonatomic)NSMutableString *num1,*num2,*num3; - (IBAction)calculatorButton:(id)sender;- (IBAction)numButton:(id)sender;- (IBAction)clearButton:(id)sender;@end

HHLViewController.m

#import "HHLViewController.h"  @interface HHLViewController () @end @implementation HHLViewController@synthesize label;@synthesize title;@synthesize num1,num2,num3; int m=0;int n=0; float y=0;float count=0;NSString *collect=@""; - (void)viewDidLoad{    [super viewDidLoad];    } - (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.} - (IBAction)calculatorButton:(id)sender{       n=0;    m++;    num3=num2;     title=[sender titleForState:UIControlStateNormal];                if (m==1) {             count=[num3 floatValue];              collect=title;        }        else{                        if ([collect isEqualToString:@"+"]==1) {                y=[num3 floatValue];                count=count+y;            }                        if ([collect isEqualToString:@"-"]==1) {                y=[num3 floatValue];                count=count-y;            }                        if ([collect isEqualToString:@"*"]==1) {                y=[num3 floatValue];                count=count*y;            }                        if ([collect isEqualToString:@"/"]==1) {                y=[num3 floatValue];                count=count/y;            }            label.text=[NSString stringWithFormat:@"%f",count];            collect=title;                            }            }      - (IBAction)numButton:(id)sender{    n++;    title=[sender titleForState:UIControlStateNormal];    num1=[[NSMutableString alloc]initWithString:title];    if(n==1)    {        num2=num1;    }    else{       num2=[[NSMutableString alloc]initWithString:[num2 stringByAppendingString:num1]];    }    label.text=num2;    }- (IBAction)clearButton:(id)sender{label.text=@"";num1=num3=num2=[[NSMutableString alloc]initWithString:@""];collect=@"";count=0;m=0;n=0;  }- (void)dealloc{    [num1 release];    [num2 release];    [num3 release];    [title release];    [label release];    [super dealloc];}  @end

关于iOS怎么实现小型计算器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网行业资讯频道了解更多相关知识。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯