Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 我在文本字段中输入的任何数字在标签中显示为0_Iphone_Objective C_Ios_Uitextfield_Uilabel - Fatal编程技术网

Iphone 我在文本字段中输入的任何数字在标签中显示为0

Iphone 我在文本字段中输入的任何数字在标签中显示为0,iphone,objective-c,ios,uitextfield,uilabel,Iphone,Objective C,Ios,Uitextfield,Uilabel,我一直在用objective-c做一件事,但我是这门语言的初学者,我就是这么做的: 有一个名为“firstviewclass”的类,它位于我的第一个视图的控件中,在这个视图中有一个文本字段,用户可以输入一个数字。文本字段位于名为“setNumber”的firstviewclass.h中。另一个名为“secondviewclass”的类控制着第二个视图,在这个视图中,secondviewclass.h中有一个标签,我希望这个标签接收用户从第一个视图输入到textfield中的值,但是,当我在iOS

我一直在用objective-c做一件事,但我是这门语言的初学者,我就是这么做的:

有一个名为“firstviewclass”的类,它位于我的第一个视图的控件中,在这个视图中有一个文本字段,用户可以输入一个数字。文本字段位于名为“setNumber”的firstviewclass.h中。另一个名为“secondviewclass”的类控制着第二个视图,在这个视图中,secondviewclass.h中有一个标签,我希望这个标签接收用户从第一个视图输入到textfield中的值,但是,当我在iOS模拟器上测试它时,我在文本字段中输入的任何数字都会显示在标签中为0。。。我真的不知道该怎么办

我的代码:

firstviewclass.h:

#import <UIKit/UIKit.h>

@interface firstviewclass : UIViewController

@property (strong, nonatomic) IBOutlet UITextField *setNumber;

- (IBAction)gotonextview:(id)sender;

@end
#import <UIKit/UIKit.h>
#import "firstviewclass.h"

@interface secondviewclass : UIViewController

@property (weak, nonatomic) IBOutlet UILabel *labelthatrecivesthetextfieldvalue;

@end

在secondviewclass的viewDidLoad中,您正在创建firstviewclass的新实例,然后访问标签的属性。由于您没有将其设置为任何值,因此它将始终返回零

您可以发布gotonextview方法的实现吗

编辑:

我认为您需要从第一个视图控制器设置label属性。因此,在gotonextview方法中,添加以下行:

secondviewclass.labelthatrecivesthetextfieldvalue.text = self.setNumber.text;

我承认我对您的命名方案有点迷茫,但这可能会奏效。

在secondviewclass的viewDidLoad中,您正在创建firstviewclass的新实例,然后访问标签的属性。由于您没有将其设置为任何值,因此它将始终返回零

您可以发布gotonextview方法的实现吗

编辑:

我认为您需要从第一个视图控制器设置label属性。因此,在gotonextview方法中,添加以下行:

secondviewclass.labelthatrecivesthetextfieldvalue.text = self.setNumber.text;

我承认我对您的命名方案有点迷茫,但这可能会奏效。

您是如何开始设置标签的?从
viewDidLoad
?如果是这样,那么0将是正确的,因为您没有将
object.setNumber.text
设置为任何值。此外,您没有从第一个viewController中传递数据。您需要让第二个viewController知道数字是多少。请尝试在您的
NSUserDefaults
中设置此值,然后在第二个viewController中,从默认值中加载该值。

如何启动标签设置?从
viewDidLoad
?如果是这样,那么0将是正确的,因为您没有将
object.setNumber.text
设置为任何值。此外,您没有从第一个viewController中传递数据。您需要让第二个viewController知道数字是多少。尝试在
NSUserDefaults
中设置此值,然后在第二个viewController中,从默认值加载该值。

首先,我强烈建议不要命名属性或实例变量
setSomething
。它会让任何阅读您的代码的人感到头疼,因为它看起来总是像您试图调用setter。此外,请务必将您的类名大写

您实际的问题是,在
viewDidLoad
中,您正在创建
firstviewclass
的实例,然后尝试从setNumber获取值。那是在用户有机会输入任何内容之前

另外,
firstviewclass
中的
setNumber
出口可能不会有任何用处,因为您自己正在实例化该类,而不是加载NIB


编辑(啊,故事板,哦):

对于情节提要,需要将setNumber文本字段的值传递给第二个视图

首先,删除
firstviewclass*对象=[[firstviewclass alloc]init]

然后,在第一个视图控制器的
prepareforsgue
方法中,您可以将
setNumber
文本字段的值传递给第二个视图控制器中的属性,并从那里使用它(例如,在
configureView
中)


我建议,它准确地显示了你需要一步一步地做什么。您现在遇到的问题是将数据传递到下一个视图控制器。

首先,我强烈建议不要命名属性或实例变量
setSomething
。它会让任何阅读您的代码的人感到头疼,因为它看起来总是像您试图调用setter。此外,请务必将您的类名大写

您实际的问题是,在
viewDidLoad
中,您正在创建
firstviewclass
的实例,然后尝试从setNumber获取值。那是在用户有机会输入任何内容之前

另外,
firstviewclass
中的
setNumber
出口可能不会有任何用处,因为您自己正在实例化该类,而不是加载NIB


编辑(啊,故事板,哦):

对于情节提要,需要将setNumber文本字段的值传递给第二个视图

首先,删除
firstviewclass*对象=[[firstviewclass alloc]init]

然后,在第一个视图控制器的
prepareforsgue
方法中,您可以将
setNumber
文本字段的值传递给第二个视图控制器中的属性,并从那里使用它(例如,在
configureView
中)


我建议,它准确地显示了你需要一步一步地做什么。您现在遇到的问题是,将数据传递到下一个视图控制器。

我使用的是故事板,因此实现中没有任何内容,它只会使用模式将用户从一个视图带到另一个视图。。。我希望你能理解,我不知道如何解释。当我这样做时,出现了一个错误:“类型为'secondviewclass'的对象上的属性'LabelHatRecivestheTextFieldValue'”我做错了什么?我使用的是故事板,所以实现中没有任何内容,它只会将用户从一个视图带到另一个视图,并使用模态。。。我希望你能理解,我不知道