我在滚动视图中添加了一系列按钮,因此在点击按钮时我想突出显示该按钮并取消选择剩下的所有按钮。所以每件事都很好。但我需要一个更多的行为,如果第二个按钮突出显示我想显示第三个按钮的某些部分,以便用户知道还有一个类别。
float offset=0;
for(int i=0;i<[arrMaincat count];i++)
{
UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom];
btn.tag=i;
btn.titleLabel.font=[UIFont systemFontOfSize:12];
btn.titleLabel.lineBreakMode=UILineBreakModeTailTruncation;
NSString *Categoryname=[[arrMaincat objectAtIndex:i] objectForKey:@"Name"];
CGSize constraint=CGSizeMake(1000, 30);
CGSize size1 = [Categoryname sizeWithFont:[UIFont systemFontOfSize:12] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
btn.frame=CGRectMake(offset, 0, size1.width, 30);
[btn setTitle:Categoryname forState:UIControlStateNormal];
[btn setTitle:Categoryname forState:UIControlStateSelected];
[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[btn setTitleColor:UIColorFromRGB(0Xe08043) forState:UIControlStateSelected];
[btn addTarget:self action:@selector(CategoryChanged:) forControlEvents:UIControlEventTouchUpInside];
offset=btn.frame.origin.x+btn.frame.size.width+10;
[self.SliderScroll addSubview:btn];
}
self.SliderScroll.contentSize=CGSizeMake(offset, SliderScroll.frame.size.height);
重新编码http://pastie.org/10277453 这是我的截图https://www.dropbox.com/s/xpq9vy39eecab1g/Screen%20Shot%202015-07-07%20at%205.34.15%20pm.png?dl=0 谢谢
答案 0 :(得分:0)
问题是什么,它是一个简单的内容偏移计算。如果突出显示的按钮是滚动视图的当前可见帧中的最后一个按钮,则可以将一些硬编码值(假设为50)添加到内容偏移量。