0

我不确定这里发生了什么,但我无法将字符串传递到正在推送到 NavigationController 的视图中。

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
InventoryInquiryViewController *listViewController = (InventoryInquiryViewController *)[storyboard instantiateViewControllerWithIdentifier:@"InventoryList"];

[listViewController setItemBalanceRecords: self.itemBalanceRecords];  //this is an NSMutableArray and it works
[listViewController setItemNumber: @"Not Working!"]; //this is an NSString and it remains nil
[self.navigationController pushViewController:listViewController animated:YES];

因此,即使我指定了字符串文字,通过尝试设置简单的字符串属性也可以按预期传递数组。我对这个没有想法。

编辑:

我已经更新了代码以消除关于描述的问题。当我试图设置几个字符串值时,代码被缩短了。修改后的代码仍然显示相同的行为。

编辑:

它们被声明为如下属性:

@property (nonatomic, strong) NSArray *itemBalanceRecords;
@property (nonatomic, strong) NSString *itemNumber;

该应用程序仅供内部企业使用,仅支持 ios7。

4

2 回答 2

2

尝试将属性从描述重命名为其他名称。Description 是一个NSObject属性(它是 的超类UIViewController),并且具有同名的属性可能会导致奇怪的行为,例如您所描述的。

于 2013-10-21T22:19:42.417 回答
1

description 是所有 NSObject 子类的方法,因此您不应将其用于您自己的需要 https://developer.apple.com/library/ios/documentation/cocoa/reference/foundation/Protocols/NSObject_Protocol/Reference/NSObject.html #//apple_ref/occ/intfm/NSObject/description

于 2013-10-21T22:22:19.253 回答