UIView的属性和相关操作

2024-05-28 10:08
文章标签 操作 属性 相关 uiview

本文主要是介绍UIView的属性和相关操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

//创建window
self.window = [[UIWindow alloc]initWithFrame:[UISreen mainScreen].bounds];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];

初始化方法1:初始化的时候确定大小和位置
//初始化视图
UIView *grayView = [[UIView alloc] initWithFrame:CGRectMake(10,10,150,150)];
//配置背景色
grayView.backgroundColor = [UIColor grayColor];
//添加到父视图上
[self.window addSubview:grayView];
[grayView release];

UIView *blackView  = [[UIView alloc] initWithFrame:CGRect(80,100,80,80)];
//配置背景色
blackView.backgoundColor = [UIColor backColor];
//添加到父视图上
[self.winow addSubview:blackView];
[balckView release];

//frame:表示视图在其父视图坐标系的位置以及大小
//bounds:表示视图基于自身坐标的位置和大小,origin为0点,大小不变
//bounds即表示视图的大小(0,0,150,150)
//center:表示父视图坐标系的中心点位置

初始化视图方法2:直接初始化,再确定大小以及中心位置
UIView *grayView =[ [UIView alloc] init];
grayView.bounds = CGRectMake(0,0,150,150);
grayView.center = CGPoint(105,195);
grayView.backgroundColor = [UIColor whiteColor];
[self.window addSubview grayView];


//配置视图透明度,范围0.0 - 1.0,当为0时和隐藏的效果相同
//父视图的透明度直接影响到所有的子视图
grayView.alpha = 0.2;
//配置视图是否需要隐藏,默认为NO
grayView.hidden = YES;

子视图添加到子视图上
UIView *subView = [[UIView alloc] init];
subView.bounds = CGRectMake (0,0,50,50);
subView.center = CGPointMake(CGRectGetMidX(grayView.bounds),CGRectGetMidY(grayView.bounds));
subView.backgroundColor = [UIColor readColor];
[self.window addSubview subView];
[subView release];

视图层级:先添加显示的视图再视图层级的偏下位置,后添加显示的视图,在视图层级的偏上位置
subviews:NSArray类型,视图所管理的子视图集合,索引靠前的是先添加的,索引靠后的是后添加的
superview:UIView类型,只有一个父视图

视图层级操作
1.调整视图添加顺序
[_window addSubview:grayView];
[_window addSubview:blackView];
[blackView release];
[grayView release];
2.调整视图层级方法(父视图调用)
//交换视图层级  通过索引
[_window exchangeSubviewAtIndex:0 withSubviewAtIndex1];
//把视图提到最前
[_window bringSbuviewToFront:grayView];
//把视图提到最后
[_window sendSubviewToBack:blackView];
3.视图层级插入
[_window insertSubview:blackView atIndex:1];
4.视图移除
//子视图从父视图之上移除,引用计数-1
[blackView removeFromSuperview];

//标签,通过标签可以访问到指定的视图
//标签值不能重复,并且需要大于10,10以下是系统预定义的标签
//使用UIView实例方法,viewWithTag:里访问对应标签的范围
grayView.tag = 10;
//拿
//测试当程序失活时
UIView *grayView = [_window viewWithTag:10];
NSLog(@"%@",grayView);

这篇关于UIView的属性和相关操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1010262

相关文章

spring中的@MapperScan注解属性解析

《spring中的@MapperScan注解属性解析》@MapperScan是Spring集成MyBatis时自动扫描Mapper接口的注解,简化配置并支持多数据源,通过属性控制扫描路径和过滤条件,利... 目录一、核心功能与作用二、注解属性解析三、底层实现原理四、使用场景与最佳实践五、注意事项与常见问题六

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Java操作Word文档的全面指南

《Java操作Word文档的全面指南》在Java开发中,操作Word文档是常见的业务需求,广泛应用于合同生成、报表输出、通知发布、法律文书生成、病历模板填写等场景,本文将全面介绍Java操作Word文... 目录简介段落页头与页脚页码表格图片批注文本框目录图表简介Word编程最重要的类是org.apach

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方

MySQL追踪数据库表更新操作来源的全面指南

《MySQL追踪数据库表更新操作来源的全面指南》本文将以一个具体问题为例,如何监测哪个IP来源对数据库表statistics_test进行了UPDATE操作,文内探讨了多种方法,并提供了详细的代码... 目录引言1. 为什么需要监控数据库更新操作2. 方法1:启用数据库审计日志(1)mysql/mariad