it-swarm-ru.tech

добавление изображений в UItableView

Можно ли добавлять изображения в табличное представление? С левой стороны? И если да, то какого размера он должен быть?

20
jason

Пользовательский UITableViewCell не требуется просто добавить изображение в левой части ячейки. Просто настройте свойство imageView ячейки UITableView в вашем tableView: cellForRowAtIndexPath: метод делегата следующим образом:

- (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] autorelease];

   cell.textLabel.text = @"I'm a UITableViewCell!";
   cell.imageView.image = [UIImage imageNamed:@"MyReallyCoolImage.png"];

   return cell;
}

Если вы не укажете tableView: heightForRowAtIndexPath: метод в UITableViewDelegate, высота UITableViewCell по умолчанию составляет 44 точки, что составляет 44 пикселя для дисплея без сетчатки и 88 пикселей для дисплея сетчатки.

56
Thomas M

Да, это возможно. Вы можете получить помощь от cocoawithlove и здесь . Эти уроки помогут вам понять, как передавать изображения в UITableView. Наконец, как уже было сказано в SO, UITableViewCell Set Selected Image .

3
Sudhanshu

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

0
jer

Swift 4 Решение Томаса ответ:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let CellIdentifier = "Cell"
    var cell: UITableViewCell? = tableView.dequeueReusableCell(withIdentifier: CellIdentifier)
    if cell == nil {
        cell = UITableViewCell(style: .default, reuseIdentifier: CellIdentifier)
    }
    cell?.textLabel?.text = "I'm a UITableViewCell!"
    cell?.imageView?.image = UIImage(named: "MyReallyCoolImage.png")
    return cell ?? UITableViewCell()
}
0
user7718859