相关文章推荐
UIView *view1 = [[UIView alloc] init]; view1.frame = CGRectMake(50, 50, 200, 200); view1.backgroundColor = [UIColor yellowColor]; [self.view addSubview:view1]; //frame是实际视图大小; CGFloat x = view1.frame.origin.x;//获取view的横坐标; CGFloat y = view1.frame.origin.y;//获取view的纵坐标; CGFloat width = view1.frame.size.width;//获取view的宽度; CGFloat height = view1.frame.size.height;//获取view的高度; //bounds是边框大小;x,y永远为零; CGFloat xBounds = view1.bounds.origin.x;//获取view的横坐标; CGFloat yBounds = view1.bounds.origin.y;//获取view的纵坐标; CGFloat widthBounds = view1.bounds.size.width;//获取view的宽度; CGFloat heightBounds = view1.bounds.size.height;//获取view的高度; //center 中心点; CGFloat xCenter = view1.center.x; CGFloat yCenter = view1.center.y; NSLog(@"frame x=%.0f y=%.0f width=%.0f height=%.0f",x,y,width,height); NSLog(@"bounds x=%.0f y=%.0f width=%.0f height=%.0f",xBounds,yBounds,widthBounds,heightBounds); NSLog(@"center x=%0.f y=%0.f",xCenter,yCenter); //坐标是根据父视图的位置来设置的,不会跨层; UIView *view2 = [[UIView alloc] init]; view2.frame = CGRectMake(20, 20, 50, 50); view2.backgroundColor = [UIColor redColor]; view2.tag = 101;//唯一标示值; [view1 addSubview:view2]; UIView *view3 = [[UIView alloc] init]; view3.frame = CGRectMake(100, 100, 50, 50); view3.backgroundColor = [UIColor redColor]; view3.tag = 102; [view1 addSubview:view3]; for (UIView *subView in subViewArray) { if (subView.tag == 101) { subView.backgroundColor = [UIColor blackColor]; } else { subView.backgroundColor = [UIColor whiteColor]; //能获取指定tag标识符的View; UIView *v = [view1 viewWithTag:101]; v.backgroundColor = [UIColor purpleColor];

实现效果如下:

github主页: https://github.com/chenyufeng1991 。欢迎大家访问!

iOS控件其实是有父子关系的,可以进行相互包含。我们通过代码来演示一下:#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; UIView *view1 这里我们默认用storyboard启动: 首先我们要在白色的屏幕上面创建一个 视图 SuperView(蓝色的背景),在 视图 里面创建四个小 视图 (橘黄色的背景) 下面看代码, 在SuperView.h文件里面: #import <UIKit> @interface SuperView : UIView { UIView * _view01; UIView * _view02; UIView * _view03; UIView * _view04; //声明创建 视图 函数 -(void) create
#怎么获取view在 类中的frame, 或者说 UIView 中SubView的坐标怎么转换成在 UIView 中的坐标 // 将像素point由point所在 视图 转换到目标 视图 view中,返回在目标 视图 view中的像素值 - (CGPoint)convertPoint:(CGPoint)point toView:( UIView *)view; // 将像素point从view中转换到当前 视图 ...
for ( UIView * next = [self superview]; next; next = next.superview) { UIResponder *nextResponder = [next nextResponder];
UIView 的使用 UIView 原理 1.它是一个 iOS 开发 中非常重要的类。 UILabel,UIButton,UIImageView 类或间接 类都是 UIView ,换句话说只要是界面上能看到的东西都是 UIView 2.坐标系的属性和方法 @property(nonatomic) CGRect frame; @property(nonatomic) CGRect
抠图和换背景是 iOS 开发 中常用的操作。抠图指的是将图片中的某一部分从背景中分离出来,成为独立的图层,以便进行后续处理。换背景则是将原来的背景替换为新的背景图片或颜色。以下是实现这两种操作的步骤。 1. 打开 Xcode,新建 项目 ,导入要处理的图片。 2. 选中要抠图的部分,使用矩形框或魔棒工具选择抠图区域,再使用钢笔工具对边缘进行微调。 3. 点击图像菜单,选择 “裁剪” 操作,将选中的部分剪切出来。得到一张只包含抠出部分的透明背景 PNG 图片。 4. 将抠出来的图片添加到 项目 中。在代码中使用 CALayer 及其 mask 属性加载图片,设置 mask 为生成的透明 PNG 图片即可。 1. 导入要处理的图片和背景图片。 2. 将背景图片作为 UIView 的背景色或作为 UIImageView 的 image 属性设置。 3. 将要更换背景的图片作为一个 UIImageView 添加到 视图 中。 4. 修改 UIImageView 的 blendMode 属性,将混合模式设置为 Destination In。 以上是 iOS 开发 中抠图和换背景的简单介绍和实现步骤。通过这些操作可以让图片更加美观、实用和个性化。
 
推荐文章