-1

我有 2 个 ViewController,即 V1 和 V2。我想将值从 V2 传递到 V1,但我在 V1 中得到 countV1 的值 0。我在 stackoverflow 中看到了更多问题,但我无法处理这个小问题。我使用 ARC。

在 V1 中

.h 文件

@property(nonatomic,unsafe_unretained) int countV1;

.m 文件

@synthesize countV1;

在 V2 中

.m 文件

int countV2 = 1;

V1 *v1 = [V1 alloc] initWithNibName:@"V1" bundle:nil];

v1.countV1 = countV2;
4

2 回答 2

1

我的第一个建议是您将 countV1 属性的“unsafe_unretained”更改为“readwrite”,这是一个更标准的 int 属性属性:

@property(nonatomic, readwrite) int countV1;

这可能会解决您的问题,但如果不是,我们真的需要查看更多您的代码。例如,您在哪里检查 countV1 的值?您如何将控制权转移到 V1?

于 2012-09-27T03:34:18.233 回答
1

agree为您的财产将“”@Alan更改unsafe_unretained为“ ”readwritecountV1

@property(nonatomic, readwrite) int countV1;

对于id objectARC,使用:

@property(nonatomic, strong) id object

对于id objectfor non-ARC,使用 :

@property(nonatomic, retain) id object

现在最好使用backward messaging委托data之间controller

tutorial适合如何使用delegate here

于 2012-09-27T04:31:40.607 回答