我是iPhone App开发新手,下面是ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self updateMyView];
}
- (IBAction)clickButtonResult:(id)sender
{
enteredText = [textField text]; // Or textField.text
NSLog(@"Number 1 : %i", number_1);
NSLog(@"Number 2 : %i", number_2);
NSLog(@"Entered Text is %@", enteredText);
int NUM_RESULT = number_1 + number_2;
verify_result = [NSString stringWithFormat:@"%i", NUM_RESULT];
NSLog(@"Verify Result : %@", verify_result);
NSString *final_result = [NSString stringWithFormat:@"%d", [enteredText isEqualToString:verify_result]];
int final_int_result = [final_result integerValue];
if (final_int_result) {
//result_label.text = @"Correct";
NSLog(@"Correct");
[self updateMyView];
} else {
//result_label.text = @"Wrong";
NSLog(@"Wrong");
}
}
- (int)getRandomNumberBetween:(int)min maxNumber:(int)max
{
return min + arc4random() % (max - min + 1);
}
- (void) updateMyView
{
number_1 = [self getRandomNumberBetween:10 maxNumber:99];
number_2 = [self getRandomNumberBetween:10 maxNumber:99];
num_1.text = [NSString stringWithFormat:@"%i", number_1];
num_2.text = [NSString stringWithFormat:@"%i", number_2];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
和ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
{
IBOutlet UILabel *num_1;
IBOutlet UILabel *num_2;
IBOutlet UILabel *result_label;
IBOutlet UITextField *textField;
int number_1;
int number_2;
NSString *verify_result;
NSString *enteredText;
BOOL display_result;
}
- (IBAction)clickButtonResult:(id)sender;
@end
输入正确的结果后,UIView 应该使用 updateMyView 函数更新,但它没有发生。
有人可以帮忙吗??
最佳答案
首先,开始使用 Properties。
ViewController.h
@interface ViewController : UIViewController
@property (nonatomic, weak) IBOutlet UILabel *num_1;
@property (nonatomic, weak) IBOutlet UILabel *num_2;
@property (nonatomic, weak) IBOutlet UILabel *resultLabel;
@property (nonatomic, weak) IBOutlet UITextField *textField;
@property (nonatomic) NSInteger number_1;
@property (nonatomic) NSInteger number_2;
@property (nonatomic, strong) NSString *verifyResult;
@property (nonatomic, strong) NSString *enteredText;
@property (nonatomic) BOOL displayResult;
- (IBAction)clickButtonResult:(id)sender;
@end
在 ViewController.m 代码中使用 self.{name of property},例如 self.textField 作为 textField 属性。
现在,转到界面构建器并将 IBOutlet 属性连接到正确的对象。 (在文件所有者上单击右键)
关于ios - UIView 未在 iPhone App 中更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23027889/