Sizetofit が有効になっている UITextField を配置する方法はありますか? 右に言う?
チャット会話ウィンドウ (UITableView) があり、Sizetofit を使用して、実際のメッセージの「バブル」タイプの会話を作成するのに役立ちます (picture=>
それらのバブルを右に移動して、どんな助けでも大歓迎です:-)
ここにベアボーンスニペットがあります....
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"HistoryCell";
MessageCustomCellCell *cell = (MessageCustomCellCell *)[self.tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
cell.messageLabel.layer.cornerRadius = 9;
cell.messageLabel.clipsToBounds = YES;
}
NSSortDescriptor *ratingsSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:YES];
NSArray *sortedRows = [_tableData sortedArrayUsingDescriptors:[NSArray arrayWithObject:ratingsSortDescriptor]];
_tableData = sortedRows;
NSDictionary *item = [_tableData objectAtIndex:[indexPath row]];
// loggedInUser
if ([[item objectForKey:@"fromuser"] isEqualToString:loggedInUser]) {
cell.messageLabel.text = [item objectForKey:@"message"];
cell.messageLabel.backgroundColor = [UIColor greenColor];
cell.messageLabel.frame = CGRectMake(10, 25, 246, cell.messageLabel.contentSize.height);
[cell.messageLabel sizeToFit];
} else {
// MESSAGE IS FRIEND OF THE PERSON SIGNED IN
cell.messageLabel.text = [item objectForKey:@"message"];
cell.messageLabel.backgroundColor = [UIColor redColor];
cell.messageLabel.frame = CGRectMake(65, 25, 250, cell.messageLabel.contentSize.height);
[cell.messageLabel sizeToFit];
}
1つの方法は、テキストの実際の幅を調べるか、それを数え、それに応じて調整して配置することですが、方法はわかりません。
ありがとう!