按下按钮iOS中心的按钮

时间:2014-10-08 10:57:46

标签: ios objective-c ios7.1

我有一个按钮,其大小可能会根据要求而有所不同。但我需要在其上设置的图像,始终保持在其中心。

我现在使用的代码是:

[pAddButton setContentVerticalAlignment:UIControlContentVerticalAlignmentCenter];
    [pAddButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
    [pAddButton setContentMode:UIViewContentModeCenter];

但是,当我增加按钮的宽度时,图像会自动拉伸。这就是我想要阻止的。

6 个答案:

答案 0 :(得分:1)

尝试使用此代码图像框到按钮

[image drawInRect:CGRectMake((self.frame.size.width/2) - (image.size.width/2), (self.frame.size.height / 2) - (image.size.height / 2), image.size.width, image.size.height)];

答案 1 :(得分:1)

您是否尝试过将imageView的内容模式设置为中心,如下所示:

pAddButton.imageView.contentMode = UIViewContentModeCenter;

答案 2 :(得分:0)

使用setImage:forState:代替setBackgroundImage:forState:设置图片。

如果这没有帮助,您可以使用imageEdgeInsets来缩小图片的宽度。

答案 3 :(得分:0)

您可以在setBackgroundImage中使用setImage instesd或在按钮[button addSubView:imageView]上添加图像作为subView。

答案 4 :(得分:0)

您是否尝试通过以下方式简化图像居中:

myImageView.center = pAddButton.center;

答案 5 :(得分:0)

试试这个,

CGPoint centerImageView = imageView.center;

centerImageView = pAddButton.center;

ImageView.center = centerImageView;