2013-09-05 2 views
-1

Я разработал одно приложение в phonegap и sencha.
В том, что я написал css для div, чтобы соответствовать по тексту.
Но в собственном приложении, если текст увеличивается, метка не может отображать полный текст, на котором он отображает текст и точки.
Я хочу показать полный текст. Я не знаю, как это возможно. Если это возможно, пожалуйста, предложите мне.Как я могу создать таблицу вида таблицы согласно моему требованию

+0

, так что вы хотите знать, как удалить эти точки в собственном приложении, не так ли? –

+0

См. Http://www.cimgf.com/2009/09/23/uitableviewcell-dynamic-height/ этот учебник для реализации. См. Https://www.google.co.in/webhp?sourceid=chrome-instant&rlz=1C1ASAA_enIN430IN430&ion=1&ie=UTF-8#hl=ru&rlz=1C1ASAA_enIN430IN430&q=ios+resize+uitableviewcell+row+height+according+to+text + длина и са = X & е = aKiCUe3zMdCGrAfZn4CACg & вед = 0CCwQ7xYoAA & BAV = on.2, or.r_cp.r_qf. & Fp = e8cb228a72cb543b и ион = 1 & BIW = 1280 & БиГ = 675" > это для получения дополнительных результатов. –

+0

@ Жан-LucGodard я хочу, чтобы отобразить полный текст – MobileDev

ответ

0

Что вам нужно сделать, это сначала получить Высота текста, основанного на шрифте и размере, затем возвращает высоту UITableViewCell для каждой ячейки.

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ 

NSString *aMessage; 

if ([self.messageArray count] >0) { 
    aMessage = [self.messageArray objectAtIndex:indexPath.row]; 
} 

CGSize maximumSize = CGSizeMake(270, 9999); 
UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:MessageFontSize]; 
CGSize myStringSize = [aMessage sizeWithFont:textFont 
         constrainedToSize:maximumSize 
          lineBreakMode:NSLineBreakByWordWrapping]; 

return myStringSize.height+10 //to have some extra space b/w cells +10; 
} 

Затем добавить пользовательскую метку в UITableViewCell.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 
// 

static NSString *CellIdentifier = @"LazyTableCell"; 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
if (cell == nil){ 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier]; 
}  

NSString *aMessage; 

if ([self.messageArray count] >0) { 
    aMessage = [self.messageArray objectAtIndex:indexPath.row]; 
} 

UILabel *messageTextLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 10, 270, 0)]; 
messageTextLabel.backgroundColor = [UIColor clearColor]; 
messageTextLabel.numberOfLines = 0; 
messageTextLabel.lineBreakMode = NSLineBreakByWordWrapping; 
messageTextLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:MessageFontSize]; 
messageTextLabel.text = aMessage; 
[messageTextLabel sizeToFit]; 
[cell addSubview:messageTextLabel]; 

cell.selectionStyle= UITableViewCellSelectionStyleNone; 

return cell; 
} 
0

Создать отдельный класс типа UITableViewCell позволяет говорить MyTableCell

затем создать ячейку в этом MyTableCell класса в соответствии с вашими потребностями.

Теперь вы можете использовать объект MyTableCell в datasource методе tableView где вы на самом деле положить за столом

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    MyTableCell *cell = [MyTableCell alloc]init]; 
    cell = [tableView dequeueReusableCellWithIdentifier:@"cellIdentifier"]; 
    // Processing 

    return cell; 

} 

Надеюсь, что это поможет вам

Смежные вопросы