我有一些代碼使用滑塊創建表格單元格。這非常簡單,它在iPhone上的尺寸很大。我有點匿名在這裏它:自動調整UITableViewCell內容寬度的大小
UITableViewCell* cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Foo"] autorelease];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
CGRect contentViewFrame = cell.contentView.frame;
CGRect sliderFrame = CGRectMake(10, 0, 280, contentViewFrame.size.height);
UISlider* slider = [[UISlider alloc] initWithFrame:sliderFrame];
UIImage* minimumImage = [UIImage imageNamed:@"min.png"];
UIImage* maximumImage = [UIImage imageNamed:@"max.png"];
slider.minimumValueImage = minimumImage;
slider.maximumValueImage = maximumImage;
slider.value = 0.5f;
[slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
[cell.contentView addSubview:slider];
[slider release];
當然,這是不正確尺寸的iPad。所以我的第一個想法是將autoresizingMask
屬性設置爲UIViewAutoresizingFlexibleWidth
。問題解決了,對吧?不。現在在iPhone上,滑蓋加圖像內容的寬度小於280,因此它不會直接結束 - 它最終會縮短大約20個像素。
在iPad上,同樣的事情 - UISlider
的寬度會自動縮小到距離單元末端約20個像素。
也許自動調整大小標誌是關注細胞不存在的accessoryView
?我試圖明確地將其設置爲nil
,但我認爲它默認爲nil
,所以沒有任何更改。
我希望這個單元格的內容自動調整爲單元格的「完整」寬度,而不管設備和方向如何。是否有捷徑可尋?
我沒有'UIViewAutoresizingFlexibleRightMargin'集合。你能解釋一下如何以編程方式做這件事嗎?上面張貼的代碼是匿名的,但正是我現在所擁有的。 – 2010-07-29 06:56:18