我尝试从Web服务加载数组并在表视图上显示。这是我的tableview.But有一个错误.Branchnames是
MEHMETFUDAYLÖZCAN,
SELAHATTİNKOÇAK,
MehmetSünerEkenPetrol
HasanKatkıcıPetrol
等
等
但是表格视图显示我那样
我如何解决这个问题?
钍 数组代码:
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes: (NSDictionary *)attributeDict
{
if ( [elementName isEqualToString:@"Branchname"] )
{
teveRetorno = YES;
}
else if ( [elementName isEqualToString:@"GetBranchNameResult"] )
{
myArray = [[NSMutableArray alloc] init];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if (teveRetorno) {
//[retornoSOAP appendString:string];
[myArray addObject:string];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
if ( [elementName isEqualToString:@"Branchname"] ) {
NSLog(@"My Array %@",myArray);
[[self tableView]reloadData];
//retornoSOAP = nil;
teveRetorno = NO;
}
}
表格代码
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
#warning Incomplete method implementation.
// Return the number of rows in the section.
return [self.myArray count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.textLabel.text =[myArray objectAtIndex:indexPath.row];
return cell;
}
答案 0 :(得分:2)
您的表格视图或输出没有任何问题。您的XMLParser会被某些字符(Ö)混淆,并且过早地调用didStartElement。看看这个 - NSXMLParser divides strings containing foreign(unicode) characters
答案 1 :(得分:0)
如果您询问文本被截断的原因,请为单元格的textLabel设置adjustsFontSizeToFitWidth。如果该剂量固定它,则手动降低textLabel的字体。