0

我从网络服务中获得了 n 个网址。在选择 didSelectRowAtIndexPath 时,我需要显示该特定文件的 url。请注意,每一行都有不同的 url。我将 url 存储在 SaveDisplay 类中,并且 SaveDisplay.m 类具有以下代码

导入“SaveDisplay.h”

@implementation SaveDisplay
@synthesize buttonName;
@synthesize urlForLoad;

- (id) initWithButtonName:(NSString *)_buttonName withUrlForLoad:(NSString *)_urlForLoad
{
    self = [super init];
    if(self)
    {
        self -> buttonName = _buttonName;
        self -> urlForLoad = _urlForLoad;
    }
    return self;
}

@end

这是我正在尝试的,但我需要一种正确的方法来循环它并为各个文件设置一个 url

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
      
        SaveDisplay *objectForUrl = [[SaveDisplay alloc] init];
            WebViewController *webController = [[WebViewController alloc] initWithNibName:@"WebViewController" bundle:Nil];
             webController.urlToLoad = objectForUrl.urlForLoad;
            [self.navigationController pushViewController:webController animated:YES];
}
    

在此处输入图像描述

4

2 回答 2

0

我不太确定您的 SaveDisplay 类的功能。实现此目的的更常见方法是:

  1. 从 Web 服务检索结果
  2. 将它们存储到字典或数组中(或任何可以用作数据源的东西......)。
  3. 填充表格视图(来自 2 中的数据源。)
  4. 选择项目时
  5. 获取所选项目的 URL(来自 2 中的数据源)
  6. 使用检索到的 URL 设置视图控制器
  7. 推送视图控制器

所以你可能想做一个这样的方便方法:

- (NSURL *)getURLForRowAtIndexPath:(NSIndexPath *)indexPath {
    // Find and return URL for given index path
    NSURL *documentURL = ...

    return documentURL;
}
于 2013-11-13T13:57:30.640 回答
0

好的,我通过添加这一行解决了这个问题

SaveDisplay *objectForUrl = (SaveDisplay *)[tempArray objectAtIndex:indexPath.row];

其中 tempArray 是全局NSMutableArray的,其中包含 url。

于 2013-11-13T14:33:50.297 回答