不确定标题是否非常清楚,但我不知道我正在寻找的东西的确切名称。我有一个由UIButtons(基本上是一个音序器)组成的网格。我想要一条类似于此图像中垂直线的线(在每行的第8和第9个按钮之间:
所以基本上当我正在播放我的网格时,我想表明进度。知道我怎么能这样做吗?使用什么样的元素等。
答案 0 :(得分:1)
你可以添加一个非常窄的UIView,1或1.5像素。将背景颜色设置为白色或渐变。将此视图添加到与按钮相同的子视图中。
UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(100.0, 0.0, 1.5, 320.0)];
lineView.backgroundColor = [UIColor whiteColor];
[parentView addSubview:lineView];
要显示进度,您需要知道在完成之前剩余多少。取该值并除以320得到lineView高度。
CGRect frame = CGRectMake(100.0, 0.0, 1.5, 0);
lineView.frame = frame; // 0% complete
frame = CGRectMake(100.0, 0.0, 1.5, 160.0);
lineView.frame = frame; // 50% complete
frame = CGRectMake(100.0, 0.0, 1.5, 320.0);
lineView.frame = frame; // 100% complete
这就是主意。希望这有帮助。
更新到在屏幕上移动的竖线
UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 1.5, 320.0)];
lineView.backgroundColor = [UIColor whiteColor];
[parentView addSubview:lineView];
随着进展
- (void)progressWithValue(CGFloat)progress {
CGRect frame = lineView.frame;
frame.origin.x = progress; // Change x position
lineView.frame = frame;
}
答案 1 :(得分:0)
您可以使用UISlider显示您的活动或活动的进度(不太清楚您的代码)并根据您的需要进行自定义。您可以查看UICatalog sample code by Apple以了解自定义的知识UISlider以及其他元素或UISlider Tutorial