rkb
rkb

Reputation: 11231

How to change the width of the row of a UITableView

Can we resize the width of the row of a UITableView.

Upvotes: 0

Views: 2096

Answers (3)

Nick Hingston
Nick Hingston

Reputation: 8890

I understand this is an old question, but I need a table cell to be less than the width of the screen, but still be scrollable by touch on either edge, and the cell highlight not to be full width.

I overrode the UITableViewCell setFrame method, like so:

- (void) setFrame:(CGRect)frame {
    if (frame.size.width > 540.0f) {

        frame.origin.x = (frame.size.width-540.0f)/2.0f;
        frame.size.width = 540;
    }
    [super setFrame:frame];
}

I guess this is a slightly hacky solution, but it works a treat!

Hope this helps someone.

Upvotes: 1

Only if you fit the whole table into a smaller area.

Upvotes: -1

Dutchie432
Dutchie432

Reputation: 29170

What exactly are you trying to accomplish?

I'm not 100%, but I am pretty sure each row is going to be with same width as the parent table. However, if you have a custom UITableViewCell, you can make it transparent, and organize your objects on the cell's view to mimic a different sized cell. For example if you wanted a cell to be 50px less wide than the other cells and indented, you could place a white UIView on the transparent cell, make it 50px less wide than it should be, and position it to the right.

Make sense?

Upvotes: 1

Related Questions