Я разрабатываю чат-приложение в IOS с помощью Objective-c. Функциональность мудрый каждый это нормально, но я с некоторым трудом в дизайне.Общение с пользовательским интерфейсом Objective-c
Я создал два идентификатора ячейки разности типа сообщения в стороне таблицы view.like этого
И тогда я изменить его в cellForRowAtIndexPath. Как это
- (void)viewDidLoad {
[super viewDidLoad];
self.tableMainChatting.delegate = self;
self.tableMainChatting.dataSource = self;
self.navigationBarTitle.topItem.title = self.visitorName;
self.tableMainChatting.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];
// invoke visitor selected
delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[delegate startChatting:self.visitorID VisitorName:self.visitorName VisitorTime:self.visitorStartTime];
[delegate InvokeGetCurrentChattingHistory:self.visitorID];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MessageItemObject *item = [messagesList objectAtIndex:indexPath.row];
if ([item.Type isEqualToString:@"Visitor"]) {
NSString *cellIdentifier = @"identify_visitor_chat";
UITableViewCell *cell = [self.tableMainChatting dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
UILabel *visitorMessage = (UILabel *)[cell viewWithTag:5030];
visitorMessage.text = item.Messagetext;
visitorMessage.layer.masksToBounds = YES;
visitorMessage.layer.cornerRadius = 5.0;
visitorMessage.frame =CGRectMake(visitorMessage.frame.origin.x, visitorMessage.frame.origin.y, 250, 60);
visitorMessage.font = [UIFont fontWithName:@"RobotoSlab-Bold" size:10];
visitorMessage.numberOfLines=0;
visitorMessage.lineBreakMode=NSLineBreakByWordWrapping;
[visitorMessage sizeToFit];
UILabel *messageTime = (UILabel *)[cell viewWithTag:5031];
messageTime.text = item.MessageTime;
return cell;
} else {
NSString *cellIdentifier = @"identify_operator_chat";
UITableViewCell *cell = [self.tableMainChatting dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
UILabel *visitorMessage = (UILabel *)[cell viewWithTag:5032];
visitorMessage.text = item.Messagetext;
visitorMessage.layer.masksToBounds = YES;
visitorMessage.layer.cornerRadius = 5.0;
UILabel *messageTime = (UILabel *)[cell viewWithTag:5033];
messageTime.text = item.MessageTime;
return cell;
}
}
Я хочу, чтобы удалить все разделительные линии, а также я хочу, чтобы установить Hight метку в зависимости от его текста.
Использование этого метода. - (CGFloat) tableView: (UITableView *) tableView heightForRowAtIndexPath: (NSIndexPath *) indexPath –