UIButton背景图片调整大小

一般情况下 button添加背景图

UIButton
*button = [[UIButton
alloc] initWithFrame:CGRectMake(60,100,20,40)];

[button
setTitle:@”Test Button” forState:UIControlStateNormal];//
Image with without cap insets

UIImage
*buttonImage = [UIImage
imageNamed:@”blueButton”];

[button
addTarget:self
action:@selector(buttonPressed:)
forControlEvents: UIControlEventTouchUpInside];

[button
setBackgroundImage:buttonImage forState:UIControlStateNormal];

[[self
view] addSubview:button];

如果我们的背景图尺寸和button
frame的尺寸不是吻合的话。如果frame的尺寸大于背景图的尺寸,系统会自动拉升图片。

结果就是图片被放大,导致变形。(这不是我们所期望的,如果你有一个好的美工,想要什么图就给提供什么图的话,那么你就可以忽略下面的方法)

将上面的uiimage创建修改如下

UIImage
*buttonImage = [UIImage imageNamed:@"blueButton"]resizableImageWithCapInsets:UIEdgeInsetMake(0,10,0,10)];

时间: 2024-10-11 18:04:45

UIButton背景图片调整大小的相关文章

UIButton的背景图片

一直在使用UIButton创建按钮,包括Plain纯文字型的按钮.设置背景图片.设置选中状态图片按钮-特别是当我们的提供的图片比按钮本身的尺寸小时,会导致按钮没有被图片完全填充,当图片比button大时,图片会超出button的frame范围(除非设置button.layer.maskToBounds = YES可防止超出button的frame).其实UIButton已经提供了给我们自由定制button的接口,只是很多人都没有注意到它的存在.我们只要继承UIButton类,然后在其子类中重写下

响应式Web设计- 背景图片

背景图片可以响应式调整大小或缩放,以下是三种不同的方式 1.如果 background-size 属性设置为 "contain", 背景图片将按比例自适应内容区域.图片保持其比例不变: <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>

UIButton的图片和文字相对位置调整

通常,如果直接设置UIButton的图片和文字,默认的两者相对位置可能不是我们想要的,那么需要进行调整. 需要用到的函数如下: UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right) top,left,bottom,right分别表示向各个方向的移动量 实例说明: UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(50, 100,

Windows下 修改GRUB背景图片(xpm.gz)

Windows下 修改GRUB背景图片(xpm.gz) By Jairkung @2014.05.11 核心提示: 所需软件: 1.Paint Shop Pro 6(图片编辑)http://upan.cc/tools/others/2009/youpan_218.html 2.xnview(格式转换) http://upan.cc/tools/others/2009/youpan_219.html 3.7-Zip(压缩文件)http://upan.cc/tools/others/2009/you

jQuery Backstretch动态设置背景图片插件

示例图: 示例图为bootstrap3.0做的登录界面,后面的背景图为可切换的动态背景图. Backstretch是一款简单的jQuery插件,可以帮助你给网页添加一个动态的背景图片,可以自动调整大小适应屏幕的尺寸,当然这样做的缺点是当图片尺寸比屏幕小的时候,图片会因为自动延伸而变形,所以我们可以劲量使用高分辨率大尺寸的图片做背景,更重要的是支持图片的自动切换. 下载地址:https://github.com/srobbin/jquery-backstretch 设置body的背景(不指定任何元

Qt中添加背景图片的方法

Qt中添加背景图片的方法 1. QPalette的方法 #include <QApplication>#include <QtGui> int main(int argc, char *argv[]){    QApplication app(argc,argv);        QFrame *frame = new QFrame;    frame->resize(400,700);    QPixmap pixmap("images/frame.png&quo

navigationItem.rightBarButtonItem 设置背景图片,颜色更改解决办法

self.navigationItem.rightBarButtonItem=[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"MoreImage"] style:UIBarButtonItemStylePlain target:self action:@selector(moreItemPress)]; 用这种方法,设置的背景图片,颜色变掉了.不是原来设置的图片颜色. 可以用另外一种方式,可以解决变色的问题. U

Qt添加背景图片的方法

转至http://www.cppblog.com/qianqian/archive/2010/07/25/121238.html 1. QPalette的方法 #include <QApplication>#include <QtGui> int main(int argc, char *argv[]){    QApplication app(argc,argv);        QFrame *frame = new QFrame;    frame->resize(40

MFC 加入背景图片并让控件背景透明

/*加入背景图片*/ BOOL CTOOLDlg::OnEraseBkgnd(CDC* pDC) { // TODO: 在此加入消息处理程序代码和/或调用默认值 CDialog::OnEraseBkgnd(pDC); HBITMAP   m_hBitmap; HDC           m_hBkDC; m_hBitmap   =   ::LoadBitmap(::GetModuleHandle(NULL),MAKEINTRESOURCE(IDB_BITMAP2)); m_hBkDC     =