当前位置: 首页 > news >正文

IOS课程笔记[6] 基础控件

UILabel 控件

frame 设置尺寸

    [lb setFrame:CGRectMake(5, 0, 400, 40)];

Font 字体设置

[lb setFont:[UIFont systemFontOfSize:20.f]]    
[lb setFont:[UIFont boldSystemFontOfSize:25.f]];
[lb setFont:[UIFont italicSystemFontOfSize:23.f]];

背景色


[lb setBackgroundColor:[UIColor grayColor]];

shadowColor 阴影设置

设置对齐

//NSTextAlignmentCenter 
//NSTextAlignmentLeft
//NSTextAlignmentRight
[lb setTextAlignment:NSTextAlignmentLeft];

设置行数

//0为自动[lb setNumberOfLines:0]

显示模式


lb.lineBreakMode=NSLineBreakByTruncatingHead;

UIIMageView控件

资源打包

  • 查看调试包路径
// debug模式找到资源位置(lldb) po NSHomeDirectory()/Users/bruce/Library/Developer/CoreSimulator/Devices/78EC5C14-10EA-4BC0-8020-F7668666694D/data/Containers/Data/Application/CE640BE1-3B2A-4AD6-A251-DFE4EB8AC0AA//Containers下的Bundle为沙箱位置/Users/bruce/Library/Developer/CoreSimulator/Devices/78EC5C14-10EA-4BC0-8020-F7668666694D/data/Containers/Bundle/Application/1A2D4A85-1DBB-4134-A958-E9DD5AE1E5D9/BundleMetadata.plist
  • Xcode7以下需要导入文件至Supporting Files中

  • Xcode7以上资源存放在项目配置的Rescources中,如下图

图片添加

//创建图片方式//方式一 通过资源名称UIImage *img2=[UIImage   imageNamed:@"img1"];//方式二 通过文件NSString *path =[[NSBundle mainBundle] pathForResource:@"top/banner" ofType:@"png"];UIImage *img=[UIImage imageWithContentsOfFile:path];

图片模式设置

contentMode的几个属性值:


//可能会被裁剪UIViewContentModeScaleToFill, // 完全缩放UIViewContentModeScaleAspectFit, //按比例缩放UIViewContentModeScaleAspectFill, //按比例填充//重新绘制UIViewContentModeRedraw,//图片偏移UIViewContentModeCenter,UIViewContentModeTop,UIViewContentModeBottom,UIViewContentModeLeft,UIViewContentModeRight,UIViewContentModeTopLeft,UIViewContentModeTopRight,UIViewContentModeBottomLeft,UIViewContentModeBottomRight,

设置尺寸的方式

//创建带尺寸的Image 方式//方式一 直接创建[banner setFrame:CGRectMake(10, 500, 300, 200)];//方式一二 根据图片尺寸创建[banner setFrame:CGRectMake(10, 500, img.size.width, img.size.height)];//方式三  根据尺寸创建UIImageView *banner1=[[UIImageView alloc] initWithFrame:CGRectMake(10, 500, img.size.width, img.size.height)];//方式四 根据图片创建UIImageView *banner2=[[UIImageView alloc] initWithImage:img];banner2.center =CGPointMake(30, 20);

样例


-(void) loadBanner{//创建图片ViewUIImageView *banner=[[UIImageView alloc] init];//设置背景色[banner setBackgroundColor:[UIColor yellowColor]];//设置位置大小 [banner setFrame:CGRectMake(10, 500, 300, 200)];//设置图片UIImage *img=[UIImage   imageNamed:@"img1"];[banner setImage:img];//设置剪裁banner.clipsToBounds=true;//设置 显示模型banner.contentMode=UIViewContentModeScaleToFill;//加毛玻璃UIToolbar *tool= [[UIToolbar alloc] init];// Bounds固定的尺寸,frame可能会随其他设置变化tool.frame =banner.bounds;tool.barStyle = UIBarStyleDefault;tool.alpha =0.6;[banner addSubview:tool];//添加控件[self.view addSubview: banner];}

相关文章:

IOS课程笔记[6] 基础控件

UILabel 控件 frame 设置尺寸 [lb setFrame:CGRectMake(5, 0, 400, 40)];Font 字体设置 [lb setFont:[UIFont systemFontOfSize:20.f]] [lb setFont:[UIFont boldSystemFontOfSize:25.f]]; [lb setFont:[UIFont italicSystemFontOfSize:23.f]];背景色 [lb setBackgroundC…...

python爬虫入门(五)XPath使用

对于网页的节点来说,它可以定义 id、class 或其他属性。而且节点之间还有层次关系,在网页中可以通过 XPath 或 CSS 选择器来定位一个或多个节点。在页面解析时,利用 XPath 或 CSS 选择器来提取某个节点,然后再调用相应方法获取它的…...

【广州华锐互动】VR消防员模拟灭火:身临其境的火场救援

随着科技的不断发展,虚拟现实(VR)技术已经逐渐渗透到各个领域,为我们带来了前所未有的沉浸式体验。在这其中,VR模拟消防员灭火体验无疑是一种极具创新性和实用性的应用。通过这项技术,人们可以亲身体验到消…...

NFS性能瓶颈分析

前言 atop – run it with -d option or press d to toggle the disk stats view. iostat – try it with the -xm 2 options for extended statistics, in megabytes, and in two-second intervals. iotop – top-like I/O monitor. Try it with the -oPa options to show the…...

Java中配置RabbitMQ基本步骤

在Java中配置RabbitMQ&#xff0c;需要遵循以下步骤&#xff1a; 1.添加依赖 在项目的pom.xml文件中添加RabbitMQ的Java客户端依赖&#xff1a; <dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><versio…...

Ingress典型配置

Ingress 是 Kubernetes 中用于管理 HTTP 和 HTTPS 路由的资源。以下是一个典型的 Ingress 配置示例&#xff0c;用于将流量引导到两个不同的服务&#xff1a; apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: example-ingress spec:rules:- host: example.com…...

webpack中常见的Loader解决了什么问题?

一、是什么 loader 用于对模块的"源代码"进行转换&#xff0c;在 import 或"加载"模块时预处理文件 webpack做的事情&#xff0c;仅仅是分析出各种模块的依赖关系&#xff0c;然后形成资源列表&#xff0c;最终打包生成到指定的文件中。如下图所示&#…...

阿里7年经验之谈 —— 如何实现前端项目的自动化测试?

这其实就是我们常说的“UI自动化测试”&#xff0c;针对这个问题&#xff0c;我先告知答题思路如下&#xff1a; 1、什么是UI自动化&#xff1f;有什么优势&#xff1f; 2、UI自动化实践中会遇到什么难题&#xff1f; 3、如何解决难题&#xff0c;将UI落实到实践中&#xff1f;…...

动态开辟内存空间函数

文章目录 malloc函数calloc函数malloc函数和calloc函数的不同free函数realloc函数 malloc函数 参数是要开辟内存空间的大小 开辟成功则返回值为开辟空间的首地址&#xff0c;若开辟失败则返回一个空指针NULL calloc函数 第一个参数为开辟空间的元素个数&#xff0c;第二个参数…...

nodejs+vue备忘记账系统-计算机毕业设计

本文首先介绍了备忘记账系统管理技术的发展背景与发展现状&#xff0c;然后遵循软件常规开发流程&#xff0c;首先针对系统选取适用的语言和开发平台&#xff0c;目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章…...

百度Comate代码助手SaaS版本:智慧编程,引领新潮

引言 在当今数字化时代&#xff0c;软件开发已成为企业成功的关键因素之一。为了应对市场需求的不断变化&#xff0c;企业需要更高效、更灵活的开发工具。百度Comate代码助手的SaaS版本的正式上线&#xff0c;为广大企业和开发者提供了一种全新的编码方式&#xff0c;帮助他们…...

数据与视图的完美契合:Vue响应式的交织魅力

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…...

Centos8 降低gcc版本至gcc-7.3

1 首先卸载系统中的gcc sudo yum remove gcc 2 重新安装gcc-7.3 sudo dnf group install “Development Tools” 然后再次卸载gcc sudo yum remove gcc 然后发现centos-release-scl-rh已经安装了 sudo yum install centos-release-scl-rh yum -y install devtoolset-7-gcc dev…...

Qt之设置QLineEdit只能输入浮点数

Qt提供了QDoubleValidator来进行浮点数校验,但是它同样存在限定范围无效的问题,详见:Qt之彻底解决QSpinBox限定范围无效的问题 因此我们要子类化QDoubleValidator,并重写其中的validate方法,最后调用QLineEdit的setValidator方法,并将这个子类当做参数传入。 QHDoubleVa…...

Spark项目实战-卡口流量统计

一、卡口介绍 卡口摄像头正对车道安装&#xff0c;拍摄正面照片。 功能&#xff1a;抓拍正面特征 这种摄像头多安装在国道、省道、高速公路的路段上、或者城区和郊区交接的主要路口&#xff0c;用来抓拍超速、进出城区车辆等行为。它进行的是车辆正面抓拍&#xff0c;可以清晰…...

kubernetesr进阶--Secret概述

概述 Kubernetes Secret 对象可以用来储存敏感信息&#xff0c;例如&#xff1a;密码、OAuth token、ssh 密钥等。如果不使用 Secret&#xff0c;此类信息可能被放置在 Pod 定义中或者容器镜像中。将此类敏感信息存储到 Secret 中&#xff0c;可以更好地&#xff1a; 控制其使…...

在 Python 中使用 Pillow 进行图像处理【2/4】

第二部分 一、说明 该文是《在 Python 中使用 Pillow 进行图像处理》的第二部分&#xff0c;主要介绍pil库进行一般性处理&#xff1a;如&#xff1a;图像卷积、钝化、锐化、阈值分割。 二、在 Python 中使用 Pillow 进行图像处理 您已经学习了如何裁剪和旋转图像、调整图像大…...

XTU-OJ 1171-coins

题目描述 一个均质硬币抛n次&#xff0c;求不存在连续2次为正面的方案数。 输入 每行一个正整数n&#xff0c;n≤40。如果n为0&#xff0c;表示输入结束&#xff0c;不需要处理。 输出 每行输出一个结果&#xff0c;为一个整数。 样例输入 1 2 3 0样例输出 2 3 5 解题思路&…...

如何使用 JMeter 进行 HTTPS 请求测试?

本文将介绍如何使用 JMeter 测试 HTTPS 请求&#xff0c;并提供相关的技巧和注意事项。 在进行性能测试时&#xff0c;很多网站都采用了 HTTPS 协议。当我们测试 HTTPS 请求&#xff0c;如果服务端开启了双向认证&#xff0c;则需要客户端发送请求时带上证书。本文介绍如何在 …...

KNN-水仙花的分类

题目&#xff1a; 思路&#xff1a; 1、处理数据集&#xff0c;这里用的是题目已知的数据集&#xff0c;所以说需要提前将写好的数据放到excel表格里&#xff0c;再进行读取。 2、将数据集划分为训练集和测试集 3、定义K-NN模型。 4、训练模型 5、预测模型 6、计算分类精…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程&#xff1a;&#xff08;白话解释&#xff09; 我们将原始待发送的消息称为 M M M&#xff0c;依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)&#xff08;意思就是 G &#xff08; x ) G&#xff08;x) G&#xff08;x) 是已知的&#xff09;&#xff0…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件&#xff0c;这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下&#xff0c;实现高效测试与快速迭代&#xff1f;这一命题正考验着…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)

引言 在人工智能飞速发展的今天&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;已成为技术领域的焦点。从智能写作到代码生成&#xff0c;LLM 的应用场景不断扩展&#xff0c;深刻改变了我们的工作和生活方式。然而&#xff0c;理解这些模型的内部…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天&#xff0c;通信网络的角色正变得愈发关键。 2025年6月6日&#xff0c;为期三天的华南国际工业博览会在深圳国际会展中心&#xff08;宝安&#xff09;圆满落幕。作为国内工业通信领域的技术型企业&#xff0c;光路科技&#xff08;Fiberroad&…...