【iOS 开发】基础控件:UIPageControl

「iOS」UI——无限轮播图实现与UIPageControl运用 通过UIScrollView和UIPageControl,NSTimer来实现无限轮播图 阅读详情

iOS 基础控件 UIPageControl

1. UIPageControl 的常规使用


// 创建分页控制器
let pageControl = UIPageControl(frame: CGRect(x: 25, y: 650, width: 280, height: 30))

// 设置 UIPageControl 页数
pageControl.numberOfPages = 6

// 设置 UIPageControl 背景色
pageControl.backgroundColor = UIColor.gray

// 设置 UIPageControl 页码点背景色
pageControl.pageIndicatorTintColor = UIColor.white

// 设置 UIPageControl 选中的页码点背景色
pageControl.currentPageIndicatorTintColor = UIColor.red

// 设置 UIPageControl 选中的页码数
pageControl.currentPage = 2

self.view.addSubview(pageControl)


效果展示:

pagecontrol


2. UIPageControl 添加交互事件


pageControl.addTarget(self, action: #selector(pageChange), for: UIControl.Event.valueChanged)

@objc func pageChange(pc: UIPageControl) {
    print("分页控制器当前页码:\(pc.currentPage)")
}


效果展示:

pagecontrol-gif


附 Github 源码:

ViewController.swift

【IOS 开发学习总结-OC-59】UI控件——UIPageControl 与UIPageViewController 【IOS 开发学习总结-OC-58】UI控件——UIPageControl 与UIPageViewControllerUIPageControl——页控件是个由 N个小圆点组成的简单控件。——每个小圆点代表一个页面。UIPageControl继承了 UIControl 基类。默认为活动控件。添加时,可以代码添加或者 IB 界面添加。 UIPageControl属性面板: 这里着重提一下defe 阅读详情

相关推荐

iOS开发中的分页控件 - 深入了解UIPageControl

通过创建UIPageControl实例并设置相关属性,我们可以在界面中显示一个分页指示器,并与滚动视图结合使用实现页面切换的功能。接下来,我们需要实现与UIPageControl交互的逻辑。首先,我们需要在视图控制器中创建一个UIPageControl实例,并设置其相关属性,如当前页码、总页码数、圆点颜色等。的UIScrollView实例,并设置其内容大小为视图宽度的3倍,以实现三个页面的滚动。的UIPageControl实例,并设置了总页码数为3,当前页码为0,圆点颜色为灰色,当前页码的圆点颜色为红色。

LogicGuruX的博客 620

iOS UIPageControl和UISegmentedControl控件

UIPageControl控件提供一行点来提示当前显示的多个页面中的哪一页。 主要属性 属性 说明 numberOfPages 小白点的数量 currentPage 当前选中的点 pageIndicatorTintColor 未选中小白点的颜色 currentPageIndicatorTintColor 当前选中小白点的颜色 hidesForSinglePage 只有一个页面时隐藏控件(默认是NO) backgroundStyle 背景样式 allowsContinu

假装你是大灰狼的专栏 1810

TNS-12516及ORA-12516错误解决

在客户端进行sqlplus连接报错如下: ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序 在/home/oracle/product/10.2.0/db_1/network/log/listener.log中查看到错误如下: TNS-12516: TNS:listener could not find available handler with matchin

KEL 2万+

UIPageControl

UIPageControl是一个比较简单的控件,该控件由N个小圆点组成,每个圆点可以表示一个页面,当前页面以高亮的圆点显示。默认情况下,UIPageControl可以与用户互动,并且监测当前值的变化(UIControlEventValueChanged),继而调用自定义的方法来实现界面的切换。 UIPageControl属性和方法介绍 // 设置总页数。 @property(nonatomic) NSInteger numberOfPages; // 设置当前页,当前页的颜色会突出显示。 @proper

qq_32619837的博客 1478

实验六 存储器实验

只读存储器(ROM)是一种在正常工作时其存储的数据固定不变,其中的数据只能读出,不能写入,即使断电也能够保留数据,要想在只读存储器中存入或改变数据,必须具备特定的条件。当地址为00000101时,会分别在数据位宽为8,16,32的只读寄存器中找到地址为00000101所对应的十进制地址位置,也就是地址为5的数据,并将其分别以8位,16位,32位输出。因此,输出保持为0。因此,当异步清零信号为1时,无论其他输入信号是什么,触发器的输出都会被强制清零,输出为0。1)寄存器输入0011,使能端1,异步清零0。

wenmou1111的博客 3001

告别过热焦虑:用Ansys Icepak给你的电子设备做个“水冷体检”(附冷板案例全流程)

本文详细介绍了如何利用Ansys Icepak进行电子设备水冷系统的热仿真分析,帮助工程师解决设备过热问题。通过冷板案例全流程演示,展示了从几何处理、材料设定到求解器设置和后处理的关键步骤,提升散热设计效率与准确性。

weixin_29299807的博客 440

UIPageControl 分页控件-IOS开发

声明 欢迎转载,但是请尊重作者劳动成果,转载请保留此框内声明,谢谢。 文章出处:http://blog.youkuaiyun.com/iukey 分页控件是一种用来取代导航栏的可见指示器,方便手势直接翻页,最典型的应用便是iPhone的主屏幕,当图标过多会自动增加页面,在屏幕底部你会看到原点,用来只是当前页面,并且会随着翻页自动更新。 一、创建 UIPageControl* my

潇洒的程序员 1万+

深圳SILAS(智能融合低空系统)无人机调度系统介绍

一、系统定位与核心目标SILAS(Smart Integrated Lower Airspace System)是深圳市为低空经济打造的“数字大脑”,由粤港澳大湾区数字经济研究院自主研发,定位为城市级低空飞行智能调度与管理平台。核心目标是解决低空经济中“高密度、高复杂度、多主体”的飞行调度难题,实现空域资源的高效分配、飞行安全的智能监管及全场景服务的无缝协同,支撑深圳从“无人机之都”向“天空之城”升级。二、核心架构:低空基础设施“四张网”设施网。

主攻大数据 人工智能 物联网 安全 低空经济等方向。mtsc 、gtest特邀分享嘉宾 3744

IOS UIPageControl

文章目录简介属性和方法点击UIPageControl发生Value Changed事件实际使用,图片轮播器 简介 UIPageControl是一个比较简单的控件,该控件由N个小圆点组成,每个圆点可以表示一个页面,当前页面以高亮的圆点显示。默认情况下,UIPageControl可以与用户交互,并且监测当前值的变化(UIControlEventValueChanged),继而调用自定义的方法来实现界面...

煮酒Shae 5324

hcaptcha无感验证码逆向实战:从接口分析到环境补全

本文详细解析了hcaptcha无感验证码的逆向实战过程。通过分析核心接口与加密逻辑,重点介绍了采用环境补全策略来模拟真实浏览器环境,从而绕过验证码检测。文章提供了从接口抓包、剖析hsw.js加密核心到使用Node.js搭建模拟环境的完整步骤,为自动化操作提供了一种稳健的解决方案。

weixin_29324401的博客 1151

kbjdbc: autodetected server-encoding to be ISO-8859-1, if the message is not readable, please check

这条信息是来自 KingbaseES 数据库的一个 JDBC 客户端连接提示。KingbaseES 是一个企业级的关系型数据库管理系统,它兼容 PostgreSQL 的许多特性。如果上述步骤仍然无法解决问题,建议详细查看数据库和客户端的日志文件,以获取更具体的错误信息。此外,也可以考虑联系 KingbaseES 的技术支持获取帮助。项目融合kingbase数据库,输出日志乱码。结果:网上各种调整各种试。

zjy660358的专栏 4843

iOS UIPageControl使用

2013-09-11 11:20 940人阅读 评论(0) 收藏 举报 [html] view plaincopy #import UIKit/UIKit.h>      @interface ViewController : UIViewControllerUIScrollViewDelegate>   {       UIScrollVi

起点 3万+

基于Simulink和Control System Toolbox的线控转向(Steer-by-Wire)系统设计

通过上述步骤,我们成功设计并实现了基于 Simulink 和 Control System Toolbox 的线控转向(Steer-by-Wire)系统。该系统能够接收来自方向盘的角度指令,经过控制器处理后,驱动转向执行器(如电动机),实现对车辆前轮转向角度的精确控制。通过虚拟场景仿真、硬件在环测试和实车测试,验证了系统的响应速度、控制精度、车辆稳定性和实时性能,并通过参数优化进一步提升了系统的性能。

MHD0815的博客 549

IOS开发 PageViewController和UIPageControl

以前经常把这两个东西当成一回事, PageViewController像电子书那样,一页之中可以放几个childViewcontroller,  然后左右翻,当前frame显示几个viewcontroller。 UIPageControl配合scrollView是用于左右滑动翻页的,当前frame只显示一个viewcontroller。 Page View Controllers 你使

lishichao706的专栏 3624

uniapp(微信小程序) - 实现uniapp小程序电子签名板,横屏手写姓名签名专用写字画板,客户专用签字板,手写签名签字画板组件,手写签名,(详细运行示例,一键复制开箱即用)

uniapp实现微信小程序的电子签名效果,uniapp微信小程序 电子签名 写字板,用uniapp实现微信小程序的电子签名,uniapp微信小程序canvans实现手写签名,记录一个uniapp写的小程序的手写板,横屏,用于签名,unniapp实现电子签名,uniapp怎么做横屏的手写签名,uniapp如何实现签字板,uniapp小程序平台下怎么做电子签名板组件,uniapp电子签名插件,uniapp最好用的电子写字板插件组件源码,实现uniapp 手写签名功能,手写板、签字板,uni-app插件市场最好的

✅ 精选推荐文章 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

iOS开发之修改分页控制器UIPageControl的图片和大小以及圆点之间的距离

今天遇到这个需求,需要修改UIPageControl圆点之间的间距。查资料找到以下两种方法,其一是自定义继承UIPageControl的类,其二是使用runtime交换方法来修改。 文笔不好直接代码记录 法一:继承UIPageControl #import "HYRPageControl.h" #define kDotW 30 //圆点的宽度 #define kMagrin 20 //圆点

iOS小菜鸟的专栏 2948

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

iOS UIScrollView/UIPageControl

9.7——学习第7天 今天学习了UIScrollView和UIPageControl UIScrollView是滚动视图 最关键的三个点 1.初始化UIScrollView的frame 2.设置UIScrollView的contentSize,contentSize的大小一定要大于frame,不管长或高,因为如果滚动范围等于frame的大小,则看不出滚动效果。

王颜华的博客 929

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

iOS开发UIPageControl常用属性方法

// // ViewController.m // UIPageControlAll #import "ViewController.h" @interface ViewController ()<UIScrollViewDelegate> { UIScrollView *helpScrView; UIPageControl *page...

aboi22699的博客 164

ios7 UIPageControl变化

原文:http://www.cnblogs.com/jiangshiyong/p/3334856.html ios6 以前subviews是UIImageView ,到了ios7下就变成了UIView 先说下ios7之前 那些点点的实现非常简单 就是UIPageControl.subviews 就是一个个点的UIImageView 所以只需简单的替换掉就好了代码如下: - (void)upd

1308

iOS 自定义实现 UIPageControl 功能 (OC)

前言 你是否有过 UIPageControl 的小圆点突然不见了的经历? 你是否曾面临设计师小姐姐 自定义 UIPageControl 图片、间距 的需求? —— 恭喜你,本篇文章即为解决以上问题而诞生! 正文 Apple 在 iOS 14 更新了 UIPageControl,提供了很多新的功能,相关细节可以参考这篇文章:(文章) 总结一下 iOS14 针对UIPageControl 的变化: 背景 自动翻页 感觉上是变得更炫酷了,但仔细研究我们可以发现,这为实际开发带来了许多问题。首先,UIPage

fusy0714的博客 1710

iOS控件之UIPageControl

作用:通常与UIScrollView连用,提示用户当前显示的页数 常用属性和方法 // 共有几个分页“圆圈” @property(nonatomic) NSInteger numberOfPages; // 显示当前的页 @property(nonatomic) NSInteger currentPage; // 只存在一页时,是否隐藏,默认为YES @propert

LG_CodeMachine的博客 1475

[iOS]UIPageControl页面翻页循环

IOS开发——UIPageControl页面翻页循环 原理:比如桌面上从左到右,有一排10张图片,我们可以把第十张图片复制一份放到第1张图片之前,同时把第一张图片复制一份放置第10张图片之后。那么现在我们就有了12张图片,多添加的两张图片用作移形换位之用,让视觉上只能感受10张图片。 笔记之用,只有截取取一段代码: -(void)gmSectionZero

Gamin 1766

tpagecontrol属性_iOS开发UIPageControl常用属性方法

//// ViewController.m// UIPageControlAll#import "ViewController.h"@interface ViewController (){UIScrollView *helpScrView;UIPageControl *pageCtrl;}@end@implementation ViewController- (void)viewDidLoa...

weixin_29447313的博客 186

iOS开发学习之路【UI界面】——UIStepper、UIPageControl、UITextField

目录UIStepper 简介IB 实现代码实现UIPageControl 简介IB 实现代码实现UITextField 简介IB 实现代码实现 UIStepper 简介 ​ UIStepper 更精确控制进度,每次增加或减少1(可变)个。 IB 实现 代码实现 @property (strong, nonatomic) IBOutlet UIStepper *myStepper2; - (IB...

guyindong的博客 285

[iOS]通过UIScrollView和UIPageControl实现滑动切换的效果

UIPageControl是自带的控件,可以查看官方文档,下载官方示例学习。

汪海的实验室 1万+

IOS开发-UIPageControl 分页控件

分页控件是一种用来取代导航栏的可见指示器,方便手势直接翻页,最典型的应用便是iPhone的主屏幕,当图标过多会自动增加页面,在屏幕底部你会看到原点,用来只是当前页面,并且会随着翻页自动更新。 一、创建 UIPageControl* myPageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(0.0,

lili 1015
上一篇: 【iOS 开发】基础控件:UISwitch
下一篇: 【iOS 开发】基础控件:UISegmentedControl
Lucky_William
博客等级 码龄11年 161粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值