我使用自定义单元格创建了一个表视图,如下所示。
![自定义单元格] [1]
![输出表格视图] [2]
我需要使用选择器而不是每个单元格中的滑块来设置评级
我只需要设置选择器位置,只需按下按钮就可以与按钮位置相对应
如何实现它。
iu尝试过fram&界限如下,但每次都给予相同的vaues
- (IBAction) buttonClicked:(UIButton *)sender
{
NSLog(@"------%f %f",sender.frame.origin.x , sender.frame.origin.y); //250, 2
NSLog(@"------%f %f",sender.bounds.origin.x , bounds.frame.origin.y); // 0.0 , 0.0
picker.frame = CGRectMake(sender.bounds.origin.x , sender.bounds.origin.y, 50, 216);
}
答案 0 :(得分:5)
您在最后一行中输入了两次“.x”值,而不是第二次使用“.y”值。
此外,您需要将坐标转换为显示选择器的视图的坐标。包括显示选择器的代码,我可以帮助您。
会是这样的:
picker.frame = [viewThatYouAreDisplayingThePickerIn convertRect:sender.frame fromView:sender.superview];
答案 1 :(得分:1)
但是如果你想获得关于主视图的按钮框架,请使用:
CustomCell *cell = (CustomCell *)[self.table cellForRowAtIndexPath:indexPath];
CGRect buttonFrame = [cell.superview convertRect:cell.customButton.frame toView:self.view];
答案 2 :(得分:0)
按钮有一个名为locationInView
的方法,该方法继承自UITouch
Returns the current location of the receiver in the coordinate system of the given view.
- (CGPoint)locationInView:(UIView *)view