2011-10-15 22 views
0

我有一個子類UITableViewCell。我正在動態添加一個UILabel和UIButton。拆分UILabel和UIButton之間單元格的全部內容

現在我已經覆蓋了layoutSubviews並且設置了x,y絕對的按鈕和標籤。爲了能夠適應屏幕布局以及更大的屏幕,我希望能夠自動完成。有沒有辦法讓標籤「浮動左」,按鈕是「浮動右」?理想情況下,標籤應該用盡按鈕不需要的所有空間(大多數情況下,按鈕的大小將固定)。

回答

0

你可以嘗試這樣的事情假設cellLbl是的UILabel和cellBtn是的UIButton:

- (void) layoutSubviews 
{ 
    CGRect rctFrm; 
    CGFloat flW; 
    CGFloat flH; 
    int iSpacing = 4; // This could be fixed for a percentage of cell width 

    [super layoutSubviews]; 
    flW = self.contentView.bounds.size.width; 
    flH = self.contentView.bounds.size.height; 
    rctFrm = self.cellBtn.frame; 
    flW -= rctFrm.size.width + iSpacing; 
    rctFrm.origin.x = flW; // Right justify button 
    rctFrm.origin.y = (flH - rctFrm.size.height)/2; // Center button vertically 
    [self.cellBtn setFrame:rctFrm]; 
    rctFrm = self.cellLbl.frame; 
    rctFrm.origin.x = iSpacing; 
    rctFrm.size.width = flW - (2 * iSpacing); 
    // You can adjust UILabel vertical position and height if desired 
    [self.cellLbl setFrame:rctFrm]; 
} 
相關問題