【问题标题】:Implementing TableView Navigation with JSON data使用 JSON 数据实现 TableView 导航
【发布时间】:2014-11-05 08:58:35
【问题描述】:

早上好,

我按照以下tutorial 成功创建了一个TableView Navigation,但在该示例中,数据来自静态字符串:

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.carMakes = [[NSArray alloc]
                     initWithObjects:@"Chevy",
                     @"BMW",
                     @"Toyota",
                     @"Volvo",
                     @"Smart", nil];

    self.carModels = [[NSArray alloc]
                      initWithObjects:@"Volt",
                      @"Mini",
                      @"Venza",
                      @"S60",
                      @"Fortwo", nil];

    self.carImages = [[NSArray alloc]
          initWithObjects:@"chevy_volt.jpg",
                      @"mini_clubman.jpg",
                      @"toyota_venza.jpg",
                      @"volvo_s60.jpg",
                      @"smart_fortwo.jpg", nil];
}

并且该数据显示like

当前我想显示我的 JSON 输出中的数据(显示我的 MySQL 数据库中的最新条目),如下所示:

[{"id":"15","user":"1","image":"http:\/\/farmaventas.es\/images\/farmaventaslogo.png","date":"2014-09-13"}]

我该怎么做?我试图找到一个教程来学习,但我无法做到这一点,这就是为什么我请求你的帮助,因为我现在迷路了。

我有我的结构作为使用“汽车示例”的教程,我也有我的 JSON 输出,我只需要有关如何将 JSON 数据发送到 TableView 的帮助。

提前致谢。

【问题讨论】:

  • 你的问题已经解决了或者你需要任何帮助兄弟
  • 谢谢@Anbu.Karthik。我仍然需要帮助,正如您在下面的回复中看到的那样,我仍然需要帮助,因为我需要将我的 JSON 输出放入来自 carMakes、carModels 和 carImages 的信息中,以便从我的数据库中获取动态内容。
  • 你能显示你的代码吗?我优化你的答案并解决你的问题
  • 我目前无法访问我的 MAC,但正如我所说,我正在使用 NSURLConnection 获取 JSON 输出,之后,我需要输入信息 [{"id": "15","user":"1","image":"http:\/\/farmaventas.es\/images\/farmaventaslogo.png","date":"2014-09-13"}] 在这些值以便在我的 TableView 中显示它们。我稍后会在这里复制我的代码,但如果你能帮助我,我将不胜感激@Anbu.Karthik

标签: ios objective-c xcode uitableview xcode6


【解决方案1】:

这是你的输出

[{"id":"15","user":"1","image":"http:\/\/farmaventas.es\/images\/farmaventaslogo‌​.png","date":"2014-09-13"}]

在你的VIewDidLoad

 -(void)viewDidLoad
{
[super viewDidLoad];

self.carImages =[[NSMutableArray alloc]init];
self.carModels =[[NSMutableArray alloc]init];

}


NSData* serlizeJSONData; 
NSError * e;

你的 JSON 是以 NSArray 开头的,所以我在序列化中直接调用了 NSArray *jsonDict

NSArray *jsonDict = [NSJSONSerialization JSONObjectWithData: serlizeJSONData
                                                             options:NSJSONReadingMutableContainers
                                                               error:&e];

    [self.carImages removeAllObjects];
    [self.carModels removeAllObjects];
for (int i=0; i<[jsonDict count]; i++)
        {

            NSDictionary *dict = [array objectAtIndex:i];

            [ self.carImages addObject:[dict objectForKey:@"image"]];
            [ self.carModels addObject:[dict objectForKey:@"date"]];

          }

   [your tableview reloadData]

【讨论】:

  • 我将尝试使用 @Anbu.Karthik。我希望它有效。我也想知道我必须把第二个代码放在哪里。再次感谢。
  • 另外,如果我不能用你的代码做到这一点,我可以再次向你寻求帮助吗@Anbu.Karthik?问候。
  • 当然兄弟,我当然希望和你在一起
  • 我的意思是你写的第二部分“你的 JSON 是从 NSArray 开始的”。再次感谢@Anbu.Karthik
  • 实际上你的 JSON o/p 是从数组而不是字典开始的,所以我用你提到的那一行,我尝试了什么
猜你喜欢
  • 2014-12-31
  • 2023-03-13
  • 1970-01-01
  • 2014-01-12
  • 1970-01-01
  • 1970-01-01
  • 2017-05-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多