精华内容
下载资源
问答
  • swift 关于背景图片的拉伸与平铺

    千次阅读 2017-05-09 11:17:42
    一般的情况我们往往是通过backgroundImage属性来设置背景图片,但是在有的View中没有backgroundImage这个属性,这时候我们可以通过backgroundColor这个属性来添加背景图,具体方法如下: 例如: reusableViews....

    在ios开发中很多的地方都会需要我们添加背景图片,下面是添加背景图片的方法:

    一般的情况下我们往往是通过backgroundImage属性来设置背景图片,但是在有的View中没有backgroundImage这个属性,这时候我们可以通过backgroundColor这个属性来添加背景图,具体方法如下:

    例如:

    reusableViews.backgroundColor = UIColor(patternImage: UIImage(named:"bg")!)
    但是这种方法如果图片大小不够则会根据背景页面的大小进行平铺,无法将小图片进行拉伸。

    使用以下的方法可以对图片进行拉伸:

    方法一: 在layer层改变contents

    例如:

    reusableViews.layer.contents = UIImage(named: "bg")?.CGImage

    方法二:对图片进行重绘  

    例如:

    let image = UIImage(named: "bg")
    UIGraphicsBeginImageContextWithOptions(self.view.frame.size, false, 0.1);
    image?.drawInRect(reusableViews.bounds)
    let newImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext();
    reusableViews.backgroundColor = UIColor(patternImage: newImage)
    对于这种方法来说如果只是简单的小部分使用还好,对内存没有什么影响,但如果要大量的去使用的话就需要考虑到对内存的消耗了。

    展开全文
  • }可以简单解释一下,两个center指定了背景绝对居中对齐, repeat指定了背景可以周围无限拉伸!如果你想垂直拉伸则是repeat-y横向拉伸是repeat-x如果你是做层要满足任何比例,那则定义层的宽度为...

    这样的话你的背景图片必须是能左右、上下拼合的图片。你就可以做到了,否则会出现层次不齐的现象!

    Body {background:url(图片路径) center center repeat;}

    可以简单解释一下,两个center指定了背景绝对居中对齐, repeat指定了背景可以向周围无限拉伸!

    如果你想垂直拉伸则是repeat-y

    横向拉伸是repeat-x

    如果你是做层要满足任何比例,那则定义层的宽度为100%即可

    转载于:https://www.cnblogs.com/zdcaolei/archive/2011/07/29/2122933.html

    展开全文
  • 使用Vertical Layout Group/Horizontol Layout Group组合Content Size Fitter组件实现文本框以及其背景(根据输入字数)动态拉伸

    使用Vertical Layout Group/Horizontol Layout Group实现文本框(根据输入字数)动态拉伸(文本框背景跟随文本框变化同时拉伸)

    padding :用于在子布局元素周围添加的填充,使子元素周围留有空隙
    spacing :间距布局组中布局元素之间使用的间距
    childAlignment :	用于布局组中的子布局元素的对齐
    childControlHeight :布局组控制其子元素的高度
    childControlWidth  :布局组控制其子元素的宽度
    childForceExpandHeight :是否要强制孩子膨胀以填充额外的可用垂直空间
    childForceExpandWidth  :是否强制孩子扩展以填充额外的可用水平空间
    

    第一种:利用Vertical Layout Group组件

    1、建立一个Text文本框用来输入文字
    在这里插入图片描述
    2、在1建立的文本框上建立一个父物体“Image”作为文本背景图片(大小跟文本框的大小相同就行)
    3、在2建立的“Image”上加Vertical Layout Group组件(并将其属性进行勾选)
    如下图【1】所示:
    图图图土语士士在这里插入图片描述 图【1】
    4、建立一个“空物体”(其长是你想控制文本不超过的长度、其宽是你想控制文本换行不超过的宽度)就是限制文本只能变到多大的一个东西,作为2的父物体
    5、在4建立的“空物体”上加Vertical Layout Group组件(并将其属性进行勾选)
    如下图【2】所示:
    在这里插入图片描述
    图【2】
    如上图【2】所示,当文本框的长度达到Image(1)长度后,会自动换行,当宽度达到Image(1)的宽度后就不再显示多于的文字;
    当字数减少时,背景也会相应自动减小,如下图【3】所示:
    在这里插入图片描述
    图【3】
    解决多余字体不显示的问题:可以在Image(1)上再加一个组件Content Size Fitter,然后宽度不变,将竖直适应选上Preferred Size尺寸,然后就会使文本达到一定宽度后换行,能够一直换行,直到显示完所有文字。如下图【4】所示:
    在这里插入图片描述
    图【4】

    第二种:利用Vertical Layout Group组件

    除添加组件不同外,与第一种步骤相同

    第三种:利用两种组件

    除(两个父物体上分别添加任意一个组件)但添加的组件不同外,与第一种步骤相同

    是否要强制孩子膨胀以填充额外的可用垂直空间

    【控制的是Image,Text不受影响(但是之前的效果不变,Text大小随字数增多而改变)】
    在这里插入图片描述
    在这里插入图片描述

    单纯控制子物体位置上对齐不用勾选属性

    【即不管有多少个子物体,部分显示也会向所选方向对齐】
    例如竖直方向【上左对齐】
    在这里插入图片描述
    有六个子物体,只显示第5和6,就会自动向上移动,而不是停在原位
    在这里插入图片描述
    在这里插入图片描述
    水平方向【居中对齐】
    在这里插入图片描述

    展开全文
  • 图片拉伸

    千次阅读 2015-04-09 11:26:20
    我们在导航栏或者标签栏上设置背景图片时会遇到图片的尺寸不够大,在这里介绍几个关于图片拉伸问题的解决办法 1、打开图片,手动更改她的像素大小。 2、contentMode UIImageView *imgView = [[UIImageView alloc] ...

    我们在导航栏或者标签栏上设置背景图片时会遇到图片的尺寸不够大,在这里介绍几个关于图片拉伸问题的解决办法

    • 1、打开图片,手动更改她的像素大小。
    • 2、contentMode
     UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake((frame.size.width-20)/2, 5, 20, 20)];
     //原图显示,解决图片拉伸问题
    imgView.contentMode = UIViewContentModeScaleAspectFit;
    imgView.image = [UIImage imageNamed:@"123"];
    • 3、CGImageRef
    UIImage *image = [[ThemeManager shareThemeManager] getThemeImageWithImageName:@"123.png"];
        CGImageRef imageRef = CGImageCreateWithImageInRect(image.CGImage, CGRectMake(10, 0, kScreenWidth, 64));
        UIImage *endImage = [UIImage imageWithCGImage:imageRef];
    

    这里要注意的是起点坐标如果设置成(0,0),那么左上角有一点点边角效果,这样就不好看了,所以一般起始点坐标x一般设置>0,假如设置成10,意思就是图片向右边裁剪掉了10个像素点后的位置放在了(0,0)处,这样就解决了边角问题
    解决前:
    这里写图片描述

    解决后:
    这里写图片描述

    • 4、圆角图片
     - (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight

    这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是不拉伸区域和左边框的宽度,第二个参数是不拉伸区域和上边框的宽度。

    第一次用这个函数的时候一直搞不懂为什么只要两个参数就行,至少应该指定左上角和右下角,总共四个参数啊。后来读读文档才明白,只需要两个参数就行了。

    参数的意义是,如果参数指定10,5。那么,图片左边10个像素,上边5个像素。不会被拉伸,x坐标为11和一个像素会被横向复制,y坐标为6的一个像素会被纵向复制。注意:只是对一个像素进行复制到一定宽度。
    附:两个聊天用的汽泡,与参数值。
    这里写图片描述21,13
    这里写图片描述15,13

    再看看实例,代码如下:

    UIImage* image =[UIImage imageNamed:@"image.png"];
    UIImageView* imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 400)];
    [imageView setImage:[image stretchableImageWithLeftCapWidth:40 topCapHeight:40]];
    [self.view addSubview:imageView];
    [imageView release]; 

    最后看看结果,不解释:
    原图:

    这里写图片描述

    结果图:
    这里写图片描述

    给Button添加背景图片的拉伸问题解决方法
    UIButton实现背景拉伸,即图片两端不拉伸中间拉伸的办法有如下两种:

    第一种方法很简单而且使用性更广。做法就是直接拉伸想要setBackgroundImage的image,代码如下:

    UIImage *image = [UIImage imageNamed:@"image.png"];   
    image = [image stretchableImageWithLeftCapWidth:floorf(image.size.width/2) topCapHeight:floorf(image.size.height/2)];  

    设置了左端帽之后,rightCapWidth = image.size.width - (image.leftCapWidth + 1); 也就是说图片中间的一像素用来拉伸。垂直方向同上。设置之后无论把image放到什么控件中都可以自动拉伸了。

    UIImage *buttonImage = [UIImage imageNamed:@"contact.png"];  
    buttonImage = [buttonImage stretchableImageWithLeftCapWidth:floorf(buttonImage.size.width/2) topCapHeight:floorf(buttonImage.size.height/2)];  
    
    UIImage *buttonImageselected = [UIImage imageNamed:@"contactselected.png"];  
    buttonImage = [buttonImage stretchableImageWithLeftCapWidth:floorf(buttonImage.size.width/2) topCapHeight:floorf(buttonImage.size.height/2)];  
    
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];  
    button.frame = CGRectMake(0, 0, 240, 44);  
    [button setBackgroundImage:buttonImage forState:UIControlStateNormal];  
    [button setBackgroundImage:buttonImageselected forState:UIControlStateHighlighted];  
    button.center = CGPointMake(160, 240);  
    [button setTitle:@"button" forState:UIControlStateNormal];  
    [button setTitle:@"buttonClick" forState:UIControlStateHighlighted];  
    [self.view addSubview:button];  

    第二种方法是在UIButton中加入一个UIImageView,拉伸imageView,然后将button的背景设为clearColor等等。把imageView放入button中,并且sendToBack,得到效果。代码如下:

    //刚才imageView拉伸的代码

    UIImageView *strechTest = [[UIImageyiView alloc] initWithImage:[UIImage imageNamed:@"contact.png"]];  
    [strechTest setContentStretch:CGRectMake(0.5f, 0.5f, 0.f, 0.f)];  
    CGRect frame = strechTest.frame;  
    frame.size.width += 100;  
    strechTest.frame = frame; 
    //把imageView放入button中,并设置为back  
     UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];  
     button1.frame = frame;  
     button1.center = CGPointMake(160, 140);  
     [button1 addSubview:strechTest];  
     [button1 sendSubviewToBack:strechTest];  
     [button1 setBackgroundColor:[UIColor clearColor]];  
     [button1 setTitle:@"button" forState:UIControlStateNormal];  
     [button1 setTitle:@"buttonClick" forState:UIControlStateHighlighted];  
     [self.view addSubview:button]; 

    效果:
    这里写图片描述

    展开全文
  • 经常在以下应用中看到这样的效果:在tableview的上边,有一个背景图片,当向下拖动t
  • 由于导航条文字多少不固定,因此面临的挑战是,当文字内容增加时,中间的背景宽度自动拉伸。CSS3的出现实现这样的效果相对变的容易,本文使用背景图定位的知识,加上CSS其他知识。介绍CSS2实现这样效果的一种思路。...
  • 拉伸显示屏可能是背景图像出现问题,并且有拉伸选项。如果桌面图标也存在此问题,则为分辨率问题。解决方案1:调整鼠标右键属性,桌面位置或桌面空白区域中的图片。 2:在桌面上的空白处调整鼠标右键的分辨率。此外...
  • css 背景图片自适应属性整理

    万次阅读 多人点赞 2019-06-25 19:36:42
    本篇博客主要记录一些使用 css 对背景图片自适应的操作整合 背景图片取消重复 background-image: url(image.jpg); background-repeat:no-repeat; 修改前 修改后 背景图片固定(不会随着内容滚动而改变位置) ...
  • 背景附着 background-attachment • 综合写法 • 背景应用 • CSS3 新增背景属性
  • Android开发之自动更换壁纸

    千次阅读 多人点赞 2014-08-07 14:49:09
    //如果wallpaper目录不存在或为空则将assets目录的壁纸复制到wallpaper目录 if (fileNames==null||fileNames.length==0) { if (cf==null) { cf=new CopyFolder(ChangeService.this, "wpics...
  • 由于导航条文字多少不固定,因此面临的挑战是,当文字内容增加时,中间的背景宽度自动拉伸。CSS3的出现实现这样的效果相对变的容易,本文使用背景图定位的知识,加上CSS其他知识。介绍CSS2实现这样效果的一种思路。 ...
  • CSS 背景

    2019-12-24 11:28:42
    文章目录background-colorbackground 属性 描述 版本 background-color 背景颜色。 CSS1 background-image 背景图像。 CSS1 background-position 背景图像位置。...背景图像的尺寸大小。...背景图像如...
  • 下面张图片,本来是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: // 得到view的尺寸 CGSize viewSize = self.view.bounds.size; // 初始化按钮 ...
  • 1.background-color 设置背景颜色,取颜色值 注意: 1.所有元素默认的背景颜色都是透明色,新建窗口的白色不是body的背景色,是浏览器渲染的 2. 背景颜色从边框位置开始绘制 3. 如果元素添加内边距,也会按照背景...
  • 猫猫分享,必须精品 素材代码地址: ... 先看图片 第一步完成tableView和Cell的架子的图 ...自动回复图: 粗狂的架子 tableView和Cell的创建 首相tableView为了学习方便就直接用stroyBoard拖拽了
  • CSS 背景属性 background CSS 背景属性 1. background 属性: 一次性 集中定义 8个 背景相关属性 2. background-color 属性: 元素的 背景颜色 (纯色,范围到 边框区的 外边缘) 3. background-image 属性: 背景图像...
  • 自动布局-Constraint

    2016-08-08 16:48:27
    自动布局-Constraint
  • 1 与背景相关的新增属性 background-clip:指定背景的显示范围。 background-origin:指定绘制背景图像时的起点。 background-size:指定背景中图像的尺寸。 background-break:指定内联元素的背景图像进行平铺...
  • iOS 自动布局教程

    千次阅读 2014-11-05 18:43:56
    iOS 自动布局详解教程
  • CSS中的盒模型,边框和背景,表格与列表,颜色和透明度,盒子阴影和轮廓,光标样式,CSS3 前缀,以及长度单位 rem。
  • css设置背景图片大小Introduction: 介绍: As we all know that the images are a very responsive yet very creative way to display your web page or website to the users. The images also play a major role...
  • web的背景与音乐

    2020-12-01 16:36:36
    代码样式:代码说明:这是在网页中插入一副图像,能调整图像大小,能拉伸图像,但是不能平铺图像,图像要占用页面的空间的,一般情况,文字不能在这样的图像上面。代码标签解释:1、 标签定义图像。2、src :要...
  • 它是图像CSS背景大小JavaScript实现。 图像可以覆盖所有可用空间,也可以限制以适合较长的边缘。 初始化 imgSize ( options ) // parameter is optional 选项是由脚本生成的类,默认情况: { container : 'img...
  • // 不需要自动调节滚动区域 self .automaticallyAdjustsScrollViewInsets = NO ; // 记录最开始偏移量y值 _oriOffsetY = -(HeadViewHeight + SuspensionViewHeight); // 设置tableView顶部额外滚动区域...
  • Storyboard自动布局

    千次阅读 2014-04-28 17:15:36
    这个教程将你展示如何使用Interface Builder开始自动布局.在 iOS6 教程中 ,我们进一步讨论过这个教程,然后有一个基于这个知识点完整的新章节,并且你展示如何通过代码完全释放出自动布局的能量。   ...
  • Python 定时获取卫星图像做为桌面背景 简介 这两天看新闻的时候,突然发现最近有个台风产生,并且在不断的增强中。幸运的是从中央气象台预报的路径来看,不会登陆我国。也正是通过这则新闻,我发现了一个不错的卫星...
  • H:/0718/00_UIKit_控件总结.m一、UIView常见属性 1.frame 位置和尺寸(以父控件的左上角为原点(0,0)) 2.center 中点(以父控件的左上角为原点(0,...5.backgroundColor 背景颜色 6.tag 标识(父控件可以根据这个标
  • 前两天写了个盒模型,遇到了父盒子的背景图片因子盒子的撑开而拉伸,或是因子盒子的缩短而收缩的情况,不开心!怎么解决呢?父盒子未设定固定高度,完全靠动态获取的子盒子的高度变化来决定它的最终高度.在这种情况,背景...
  • css3中新增了几个与背景相关的属性: background-clip:指定背景的显示范围 background-origin:指定绘制背景图像时的起点 background-size:指定背景图像的尺寸 background-break:指定内联元素的背景图像...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,004
精华内容 3,201
关键字:

背景向下自动拉伸