【问题标题】:Problem: Can´t pass a NSUInteger from one ViewController to the other anymore问题:不能再将 NSUInteger 从一个 ViewController 传递到另一个 ViewController
【发布时间】:2010-01-04 12:39:56
【问题描述】:

我想将一个数字从我的 ViewController 传递给 TweetViewController。一切正常,我使用 NSUInteger 作为属性(randomNumber 和 tweetNumber):

TweetViewController *Second = [[TweetViewController alloc] initWithNibName:nil bundle:nil];
    Second.tweetNumber = randomNumber;
    Second.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:Second animated:YES];
    [Second release];

我现在更改了我的代码,因为我不希望只加载我的 TweetViewVontroller。我想要在 Tweet 和 InfoViewController 之间进行类似主屏幕的滑动。我使用一个 SwitchViewController,它将被加载而不是 TweetViewController。 SwitchViewController 长这样(window1/2 是 UIViewController):

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,320,460)];
UIView *contentView = [[UIView alloc] initWithFrame:CGRectMake(0,0,640,460)];

self.window1 = [TweetViewController alloc];
self.window2 = [InfoViewController alloc];


[contentView addSubview:self.window1.view];

CGRect f = self.window2.view.frame;
f.origin.x = 320;
self.window2.view.frame = f;

[contentView addSubview:self.window2.view];


[scrollView addSubview:contentView];
scrollView.contentSize = contentView.frame.size;

scrollView.pagingEnabled = YES;

self.view = scrollView;

[contentView release];
[scrollView release];

现在我无法将数字从 FirstViewController 传递到 TweetViewController。任何想法,如何解决这个问题?

【问题讨论】:

    标签: iphone objective-c xcode


    【解决方案1】:
    window1.tweetNumber = randomNumber;
    

    如果您想在每次滚动滚动视图时更新它,您可能需要查看 UIScrollViewDelegate 协议。具体scrollViewWillBeginDragging:

    【讨论】:

    • window1.tweetNumber 不起作用,因为他说“对成员“tweetnumber”的请求不是结构或联合”
    • 奇怪,试试[window1 setTweetNumber:randomNumber];。当你这样做的时候,你不应该先初始化两个控制器吗?
    • 谢谢,这行得通! :) 我在 5 分钟前更新了我的代码并初始化了控制器;)
    猜你喜欢
    • 2014-07-25
    • 2014-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多