Creating an iPhone app
How do I use XML element values as text in a table view cell?
Specifically, it's as follows
_iremono (NSString type)
created with method 1 // 要素 When element values are found
- (void) parser: (NSXMLParser*) parser
foundCharacters: (NSString*) string {
// Determining Element Names
if([_nowElemisEqualToString:@"item"){
// The type of instance variable '_nowElem' as the element name (most recent) being analyzed is
// "NSMutableString".
NSLog(@"Element value: %@", string);
// The type of instance variable "_iremono" as an inclusion of the argument "string" is:
// "NSString*".
_iremono=string;
}
}
// 設定 Settings (cells)
- (UITableViewCell*) tableView: (UITableView*) tableView
cellForRowAtIndexPath:(NSIndexPath*)indexPath{
// Cell Object Settings
UITableViewCell* cell=
[tableView requestReusableCellWithIdentifier: @"Cell"
forIndexPath:indexPath];
// Settings (cell) *Instead of this @"InherentVice" I would like to include the element value obtained in で.
cell.textLabel.text=@"Inherent Vice";
cell.textLabel.textColor=[UIColor blackColor];
return cell;
}
Could someone please let me know the above?Thank you for your cooperation.
objective-c ios8 tableview xml
If you are able to set _iremono to a parse of xml,
@ Wouldn't it be all right to change "Inherent Vice" to _iremono?
cell.textLabel.text=_iremono;
If you have more than one element on the cell and you have not been able to retrieve the target label,
I think you can get it using the following method.
// Cell object settings
UITableViewCell* cell=
[tableView requestReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
UILabel*label=(UILabel*) [cell viewWithTag:<tag> on target labels;];
label.text=_iremono;
Before considering the relationship between XML and NSXMLParser, consideration of UITableView itself should be deepened.
UITableView does not have a mechanism to hold its own data. For example, UIImageView has a property image that holds its own image data, so UITableView also has a property data that can hold its own data.But that is not the case.
"MVC design pattern" is the concept.It's a program development guideline that's as popular as Wikipedia, but to put it simply, it's a guideline that data (Model) and view should be separated into individual objects.iOS is configured to comply with this MVC.The object that mediates data and display objects is called a controller, and that is why many classes are found during UIKit with a name of ConControllerer.
UITableView does not have data internally as a result of compliance with this MVC.If so, following MVC will lead to reasonable app design.
The view object should be a UITableView and the controller should be a UITableViewController or a UITableViewController.That's what happens all of a sudden.You can apply a variety of model objects.For very large and complex data, CoreData can be used to model relational databases such as SQLite, or it can be designed to create classes for data retention and keep instances resident.If it's simple, it's easier to model an object in NSMutableArray.
Here, as an instance variable of ViewController, we create an instance of NSMutableArray called "dataArray" and use it as a model object.
-(void)parser:(NSXMLParser*)parser foundCharacters:(NSString*)string{
if([_nowElemisEqualToString:@"item"){
dataArray addObject:string;
}
}
- (UITableViewCell*) tableView: (UITableView*) tableView cellForRowAtIndexPath: (NSIndexPath*) indexPath{
UITableViewCell* cell=
[tableView requestReusableCellWithIdentifier: @"Cell"
forIndexPath:indexPath];
cell.textLabel.text=dataArray [indexPath.row];
cell.textLabel.textColor=[UIColor blackColor];
return cell;
}
Note:
The sample code uses a new Objective-C 2.0 format and a simplified NSArray format.
dataArray [indexPath.row];
Non-simplified format:
[dataArray objectAtIndex:indexPath.row];
© 2024 OneMinuteCode. All rights reserved.