objective-c - 通过segue传递数据

标签 objective-c ios cocoa-touch

我正在尝试使用一个 Web View ,并使用三个不同的按钮将您带到此 Web View 。每个网站都会带您访问不同的网站。我创建了一个新的 webview 类,在这个类中我有一个方法来设置它将转到哪个 url。

在原始 View Controller 中,我尝试向此方法发送不同的号码,但它说没有已知的实例方法。

代码如下:

设置url的方法

-(void)setUrlNo:(int)urlNo
{

    if (urlNo == 0) {

        url = @"http://www.twitter.com/ac3112";
    } else if (urlNo == 1) {
        url = @"http://www.facebook.com/ac3112";
    } else if (urlNo == 2) {
        url = @"http://www.adamcarlin.co.uk";

    }
}

准备segue方法

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString:@"Twitter"])
    {
        [segue.destinationViewController setUrlNo:1];

    }else if ([segue.identifier isEqualToString:@"FB"]) {
        [segue.destinationViewController setUrlNo:2];
    } else {
        [segue.destinationViewController setUrlNo:3];
    }


}

最佳答案

segue.destinationViewController 返回 id 类型的对象。您需要将其转换为 View Controller 类型才能在不发出警告的情况下发送消息:

[(YourViewController *)segue.destinationViewController setUrlNo:1];

关于objective-c - 通过segue传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11347021/

相关文章:

c# - 使用 Xamarin.iOS 获取 iOS 库文件夹的正确方法是什么?

ios - UIImagePickerControllerDelegate 到 Swift?

iphone开发-分析错误

iphone - 将 TTImageView 设置为 TTView 的背景

objective-c - 更好的性能设置 backgroundView : willDisplayCell or init?

ios - 我如何使用 “App registers for location updates”背景模式在后台播放音频文件

ios - 如何启动单个计时器并从多个 View 访问它?

objective-c - 在内存中保存长字符串的最佳方法是什么? ( cocoa )

objective-c - 设置部分插入时,带有 FlowLayout 的 UICollectionView 不滚动

ios - 每次重置标题时如何阻止 UIButton 突出显示/闪烁?