自定义视图也是iPhone界面的一种自定义的控件,所谓的自定义视图就是根据自己的需求将一些最基本的控件组合起来,形成一个可以重复使用的小视图,使用时与基本控件使用方法相同,但是节省了很多资源.同时由于一些控件满足不了需求,可以自定义控件,增加一些原来没有的功能.下面是一个自定义的登录界面:一般的登陆界面是一个UILabel加一个UITextField作为一行,来进行界面的显示和数据的输入,而且注册
大多数app都会涉及到上传照片这个功能,图片来源无非是从相册获取或者相机拍摄。如果不是特别要求,调用系统已经满足需求。但对于特殊需求,就需要自定义相机拍摄界面了。对于无需定制的相机,使用系统的UIKit库里的UIImagePickerController类,几行代码,几个代理方法就可满足所需。但如果要深度定制,就要系统库AVFoundation内部的相关类。创建自己的相机管理类CameraMana
说在前面如果不想看文章,可以直接翻到最后,我已经把代码上传到gist上,但这样你会失去一个理解代码的机会。概述该文章会涉及到的概念包括:AVCaptureDeviceInput,AVCaptureVideoDataOutput,AVCaptureVideoPreviewLayer,AVCaptureSession,AVAssetWriterInput,AVAssetWriter,AVCapture
1、苹果的系统相机的调用     在IOS开发中,需要调用苹果的相机,这个其实就是个模态视图的切换,如下:UIImagePickerController *wImagePickerController = [[UIImagePickerController alloc] init]; wImagePickerController.delegate
# iOS开发:自定义Block参数的实现 在iOS开发中,Block(闭包)是一个非常强大的特性,可以让我们在函数中传递代码块,提高代码的灵活性和可重用性。今天,我们将学习如何实现自定义Block参数的使用。本文将从整个流程入手,然后逐步深入,每一步都将给出代码示例及解释。 ## 流程概览 | 步骤 | 描述 | |
原创 9月前
31阅读
1 简单的“自定义”需求总是在不经意间来临,也许是原生控件丑了点,也许是哪些布局复用的多了些,Leader让改改,写个自定义View解决一下,减少一下重复开发工作,这时候该我们迎难而上了,必要的时候还是得造个轮子。这时候,看一眼需求,原来是这个TextView的样式太单调了,只有简单的背景、前景色之类的,产品和UI让改改加点炫酷的东西,文字得一上一下写(^上^~下~)。得,自定义View吧,感觉相
在本文中,我们将探讨“iOS 自定义相机 参数 HDR”这一问题,主要围绕 HDR 参数的配置和优化,以及如何排查相关问题。我们会从多个维度进行分析和阐述,以帮助开发者更好地理解和解决这个问题。 ### 背景定位 在移动应用中,用户对于拍照效果的期望越来越高。特别是在高对比度场景下,HDR(高动态范围)功能变得至关重要。它可以帮助用户捕捉到更广泛的亮度范围,让照片在不同光照条件下都能展现出色的
原创 7月前
124阅读
# iOS自定义PageControl的实现方法 在iOS开发中,`UIPageControl`是用于指示页面的控件,通常用于表示当前视图的索引。默认的`UIPageControl`样式相对简单,开发者可能会希望实现一个更加个性化的页面控件。本文将介绍如何自定义一个`UIPageControl`,并提供详细的代码示例。 ## 自定义PageControl的基本思路 我们将从继承`UICont
原创 8月前
182阅读
iOS-Swift 自定义弹窗 AlertViewAEAlertView 不依赖任何第三方库安装指南从Xcode15.0 开始,要求库的最低版本为iOS12.0,因此AEAlertView在2.3.8中最低支持的版本为iOS12.0, 如果你的项目中兼容12以下,请使用2.3.6Swift Package ManagerFile > Swift Packages > Add Packa
转载 2023-11-12 08:03:26
121阅读
Step 1: 创建新项目打开Xcode,选择“Create a new Xcode project”,选择“Single View Application”,点击“next”。输入项目名称(我这么命名为“Fruits”),并确定Devices中选择的是iPhone,然后勾选上“Use Storyboards”和“Use Automatic Reference Counting”,并点击“Next
转载 2023-09-13 20:39:25
114阅读
下面继续学习ios的其他控件,这次会使用到的控件有Slider,当然还有一些之前已经使用过的控件Label。这次我们不新建一个project了,当然如果你愿意重新创建一个新的项目也完全可以,我们还是使用上一篇的项目Control Fun。上一篇中,我们最后的成果如下图所示我们添加了一个ImageView,2个Label和2个TextField,现在我们继续在此基础上添加其他的控件。1)添加Slid
转载 2023-12-16 19:59:32
79阅读
随着界面的整体效果的各种展现, 起始时间选择器的展现也需求突出! 最近项目中发现时间选择器使用处还挺多, 数了数原型图发现有6处. 便决定自定义时间选择器视图写个 Demo, 封装好在所需控制器里直接调用!主要功能: 调起时间选择器, 传值(起始时间/截止时间), 两者时间均要合理, 不能超过未来时间, 并且起始时间不能大于截止时间. 点击取消或空白处收起时间选择器.如果需要可以根据自己的需求来修
工作需要,最近在进行iOS方面的图表工作。找了很多第三方库都无法实现效果,所以决定自己写一个控件。#0 目标希望可以写一个通用的图表控件(仅针对此项目),虽然开发难度增大,但是可以学习到很多知识。并且控件使用简单,可以自适应大小,支持屏幕旋转。 #1 准备工作网上各种查资料研究了一下系统自带控件,全部基于UIView开发过程中使用storyboard,在页面中加入一个View来控制大小,
转载 2023-11-19 00:00:49
101阅读
一、自定义CustomActionSheet类。 CustomActionSheet类继承UIActionSheet,具体的实现如下所示: (1)CustomActionSheet.h头文件:#import <UIKit/UIKit.h> @interface CustomActionSheet : UIActionSheet { UIToolbar* toolBar; UIV
转载 2023-07-03 16:00:04
205阅读
iOS的用户接口向导中,苹果提供了另外一种显示警告框的手法,叫做UIActionSheet.它和UIAlertView比起来不会显得过于急切和紧张。而是很温和地在继续流程之前给用户提供了诸多选择。 1.普通的sheet框使用 同UIAlertView一样,sheet也可以很简单的创建并且显示.1 - (IBAction)actionSheetShow:(id)sender { 2 /
转载 2023-08-24 09:21:01
181阅读
就玩过越狱的小伙伴应该都知道,越狱后的 iPhone 可以装各种好看的主题,从而自定义各种应用图标。没有越狱的小伙伴也不要羡慕,今天扎比就教小伙伴们如何在不越狱情况修改应用图标。ONE自定义应用图标教程未越狱的小伙伴,我们可以借助快捷指令 App 使用"曲线救国"方法来实现更换应用图标。本教程适用于 iOS13 和 iOS14 版本系统。打开快捷指令 App,点击右上角的 + 
一、创建滑块是一个标准的UIControl。我们可以通过代码创建,如同开关(UISwitch)的宽与高都会被忽略一样滑块的高也会被忽略(但是宽度不会):1. UISlider* mySlider = [ [ UISlider alloc ] initWithFrame:CGRectMake(20.0,10.0,200.0,0.0) ];//高度设为0就好二、设定范围与默认值创建完毕的同时我们要设置
转载 2023-12-06 15:23:12
96阅读
之前我们设置iPhone自定义铃声必须通过电脑的iTunes软件或者越狱的iPhone可以直接设置。库乐队,捷径(苹果的文件App其实也可以,本期将的捷径)的出现,极大的方便了我们设置手机来电/闹钟铃声的过程,现在你通过库乐队,捷径这两个App就可以在手机端设置铃声。 先通过捷径下载你想设置的音乐(链接就不放出来了,自行搜索,不知道的可以评论区留言) 当做到这一步时,该音乐
在写项目时,个人资料生日这一块,想写成QQ中使用的效果。然后就学了一下UIPickerView。系统其实提供了一个日期选择器UIDatePicker,但是它的实现效果并不是我想要的 所以我自定义选择器来实现一个日期选择器。设计思路为了在点击时,背景为灰色,所以我打算将一个背景为灰色的图层加到主页面上,点击确定、取消和空白区域可以移除。再向此图层上加一个contentView。这个contentVi
之前写了一篇关于获取当前位置的文章。现在这篇文章将探讨一下,如何用地图显示地理信息,以及我们怎么自定义地图的Annotation,也就是地图图钉。 接下来的叙述都是为了实现下面的效果: 上图显示的内容包括: 1. 在界面显示一副地图; 2. 在地图上显示一个“笑脸”图标,笑脸所在的位置就是你的当前位置,或者你自己任意设定的地理位置; 3. 点击“
  • 1
  • 2
  • 3
  • 4
  • 5