كيف يمكنني الحصول على قيمة السلسلة من nsmutablearray
-
22-09-2019 - |
سؤال
شفرة:
[self.menuList addObject:[NSDictionary dictionaryWithObjectsAndKeys:
NSLocalizedString(@"PropertySubtype2fTitle", @""),
kTitleKey,
publishNoOfRoomsViewController,
kViewControllerKey, nil]];
Menulist هو nsmutablearray.
أرغب في قراءة سلسلة propertysubtype2ftitle المترجمة لاحقًا في الكود ، مثل في:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
المحلول
لجلب إدخال من NSDictionary ، يمكنك استخدام
[NSDictionary objectForKey:(id)keyValue]. لإحضار إدخال من nsarray / nsmutablearray ، يمكنك استخدام
[NSArray objectAtIndex:(NSUInteger)index]. مجتمعة وتطبيق على مثالك الذي يجب أن يكون:
NSString *title = [[menuList objectAtIndex:index] objectForKey:kTitleKey];في حين أن الفهرس سيكون عددًا صحيحًا غير موقّع (nsuinteger).
نصائح أخرى
لماذا لا تستخدم مباشرة NSMutableDictionary
?
علي سبيل المثال:
NSData *getData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:strURL]];
NSError *errorData;
NSMutableDictionary *dicData = [NSJSONSerialization
JSONObjectWithData:getData
options:NSJSONReadingMutableContainers
error:&errorData];
if( errorData )
{
NSLog(@"%@", [errorData localizedDescription]);
}
else {
NSString *title = [[dicData[@"items"] objectAtIndex:1] objectForKey:@"titlekey"];
NSLog(@"titlekey %@",title);
}
لا تنتمي إلى StackOverflow