2016-03-22 3 views
-1

Я хочу центрировать свои ячейки горизонтально в моем представлении таблицы. В настоящее время они держатся слева. Как мне это сделать?Как центрировать ячейки в виде таблицы?

Я искал различные вопросы по SO и веб-страницам, но они все в Objective C, и я использую Swift.

ответ

0

Есть 2 вещи, которые нужно сделать:

Во-первых, вы должны убедиться, что вы установите стиль таблицы по умолчанию: UITableViewCellStyleDefault. Во всех других стилях так или иначе используется detailTextLabel, и вы не сможете установить свойство выравнивания textLabel.

UITableViewCell(style: .Default, reuseIdentifier: CellIdentifier) 

Затем вы можете установить выравнивание TextLabel вашей клетки:

cell.textLabel.textAlignment = .Center 
+0

Где разместить первую строку кода? –

+0

в func tableView (tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { } –

+0

FYI, я не хочу центрировать текст, только ячейку в представлении. –

0

Есть два подхода, которые перечислены ниже

1- вы должны создать ячейки WRT ширину Tableview но перетащить ячейку содержание в центре от ниба.

2- Вы должны уменьшить размер стола, чтобы ваша ячейка соответствовала таблице.

0

, если не подкласс Tableview ячейки, а затем подкласс UITableViewCell и просто переопределить метод ниже, в CustomCell добавить ниже метода

override func layoutSubviews() 
{ 
    super.layoutSubviews() 
    self.frame = CGRectMake(self.frame.origin.x + 100, self.frame.origin.y, 100 , 100); 
    //option 2 
    // self.bounds = CGRectMake(100,0, 100 , 100);//calculate centre 
} 

в выше и должны использовать ток frame реагировать и вычислить centre в соответствии к вашему требованию, так как я вижу, что использую текущий кадр ячейки, если и игнорировать это, положение x и y, установленное в ноль, ячейка всегда находится на (0,0, ширина, высота) таблицы view

а также также можно также использовать bounds Это сработало и прокомментируйте его как вариант 2

1

Нельзя пытаться центрировать ячейки вашего вида таблицы. Вы должны разрешить Cocoa управлять размером ваших ячеек, и вы должны сосредоточить свой контент в представлении содержимого ячейки.