转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50163725

一. 分段控件 (UISegmentedControl)

控件展示 :

1. UISegmentedControl 控件属性

(1) Style 属性

Style 属性 :

     

-- Plain : 分段控件使用最普通的风格;

-- Bordered : 在最普通风格上添加一圈边框;

-- Bar : 分段控件使用工具条风格;

(2) State 属性

State 属性 :

-- Momentary 复选框 : 勾选复选框后, 分段控件不保存控件状态, 如果勾选后, 点击时高亮, 点击后恢复原样;

(3) Tint 属性

Tint 属性 :

-- 作用 : 设置分段控件被选中的高亮颜色;

-- 效果展示 :

(4) Segments 属性

Segments 属性 :

-- 作用 : 控制分成几段;

-- 展示效果 :

(5) Segment 属性

Segment 属性 :

      

-- 作用 : 为不同的分段设置对应的 标题, 图片 等内容;

(6) Tittle 属性

Tittle 属性 : 每个 Segment 都有一个 Tittle 属性, 就是分段按钮每个按钮的标题;

(7) Image 属性

Image 属性 : 为不同的 分段 Segment 设置图片;

(8) Behavior 属性

Behavior 属性 :

-- Enable 复选框 : 用于设置 Segment 是否可用;

-- Selected 复选框 : 用于设置 Segment 是否被选中;

2. 使用 UISegmentedControl 改变背景颜色

(1) 设置 UISegmentedControl 属性

UISegmentedControl 属性 :

-- 属性截图 :

(2) 设置 UISegmentedControl 响应方法

创建 UISegmentedControl 的 IBAction :

-- 按住 control 键将 UISegmentedControl 拖动到 OCViewController.h 中 :

-- 设置 IBAction 属性 :

-- 方法代码 :

[objc] view plaincopy
  1. - (IBAction)segmentControl:(id)sender {
  2. int index = [sender selectedSegmentIndex];
  3. switch (index) {
  4. case 0:
  5. self.baseView.backgroundColor = [UIColor whiteColor];
  6. break;
  7. case 1:
  8. self.baseView.backgroundColor = [UIColor blackColor];
  9. break;
  10. case 2:
  11. self.view.backgroundColor = [UIColor greenColor];
  12. break;
  13. case 3:
  14. self.view.backgroundColor = [UIColor blueColor];
  15. break;
  16. default:
  17. break;
  18. }
  19. }

(3) 代码示例

代码示例 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UISegmentedControl
  4. //
  5. //  Created by octopus on 15-12-4.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. //背景 UIView
  11. @property (strong, nonatomic) IBOutlet UIView *baseView;
  12. - (IBAction)segmentControl:(id)sender;
  13. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UISegmentedControl
  4. //
  5. //  Created by octopus on 15-12-4.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. }
  17. - (void)didReceiveMemoryWarning
  18. {
  19. [super didReceiveMemoryWarning];
  20. // Dispose of any resources that can be recreated.
  21. }
  22. - (IBAction)segmentControl:(id)sender {
  23. int index = [sender selectedSegmentIndex];
  24. switch (index) {
  25. case 0:
  26. self.baseView.backgroundColor = [UIColor whiteColor];
  27. break;
  28. case 1:
  29. self.baseView.backgroundColor = [UIColor blackColor];
  30. break;
  31. case 2:
  32. self.view.backgroundColor = [UIColor greenColor];
  33. break;
  34. case 3:
  35. self.view.backgroundColor = [UIColor blueColor];
  36. break;
  37. default:
  38. break;
  39. }
  40. }
  41. @end

-- 界面展示 :

3. 动态增加删除分段

(1) 主要 API 简介

插入 删除分段 :

-- 插入分段 : 调用 segmentControl 的 insertSegmentWithTittle 方法, 参数一 标题, 参数二 插入索引;

[objc] view plaincopy
  1. [self.segmentControl insertSegmentWithTitle:tittle atIndex:count animated:YES];

-- 删除分段 : 删除只需注明 索引值 即可;

[objc] view plaincopy
  1. [self.segmentControl removeSegmentAtIndex:count - 1 animated:YES];

(2) 源码示例

源码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UISegmentedControl
  4. //
  5. //  Created by octopus on 15-12-4.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. //背景 UIView
  11. @property (strong, nonatomic) IBOutlet UIView *baseView;
  12. //分段控件
  13. @property (strong, nonatomic) IBOutlet UISegmentedControl *segmentControl;
  14. //单行文本
  15. @property (strong, nonatomic) IBOutlet UITextField *textField;
  16. //分段控件方法
  17. - (IBAction)segmentControl:(id)sender;
  18. //点击背景控件方法
  19. - (IBAction)clickBackGround:(id)sender;
  20. //添加分段控件
  21. - (IBAction)addSegment:(id)sender;
  22. //删除分段控件
  23. - (IBAction)minusSegment:(id)sender;
  24. @end

--  OCViewController.m  :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UISegmentedControl
  4. //
  5. //  Created by octopus on 15-12-4.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. }
  17. - (void)didReceiveMemoryWarning
  18. {
  19. [super didReceiveMemoryWarning];
  20. // Dispose of any resources that can be recreated.
  21. }
  22. //分段控件响应方法
  23. - (IBAction)segmentControl:(id)sender {
  24. int index = [sender selectedSegmentIndex];
  25. switch (index) {
  26. case 0:
  27. self.baseView.backgroundColor = [UIColor whiteColor];
  28. break;
  29. case 1:
  30. self.baseView.backgroundColor = [UIColor blackColor];
  31. break;
  32. case 2:
  33. self.view.backgroundColor = [UIColor greenColor];
  34. break;
  35. case 3:
  36. self.view.backgroundColor = [UIColor blueColor];
  37. break;
  38. default:
  39. break;
  40. }
  41. }
  42. - (IBAction)clickBackGround:(id)sender {
  43. // 点击背景 取消虚拟键盘
  44. [self.textField resignFirstResponder];
  45. }
  46. //添加分段控件
  47. - (IBAction)addSegment:(id)sender {
  48. NSUInteger count = self.segmentControl.numberOfSegments;
  49. NSString * tittle = self.textField.text;
  50. if ([tittle length] > 0) {
  51. [self.segmentControl insertSegmentWithTitle:tittle atIndex:count animated:YES];
  52. self.textField.text = @"";
  53. }
  54. }
  55. //删除分段控件
  56. - (IBAction)minusSegment:(id)sender {
  57. NSUInteger count = self.segmentControl.numberOfSegments;
  58. [self.segmentControl removeSegmentAtIndex:count - 1 animated:YES];
  59. }
  60. @end

-- 界面展示 :

二. 图像控件 (UIImageView)

1. UIImageView 控件属性

(1) UIImageView 简介

UIImageView 简介 :

-- 继承结构 : UIImageView 继承 UIView, 该类不能响应用户操作, 是静态控件, (活动控件 静态控件 被动控件);

(2) 图片显示属性

设置图片显示的属性 :

-- image (普通) : 访问或设置该控件显示的图片;

-- HighlightedImage (高亮) : 设置图片处于 高亮状态 时显示的图片;

(3) 动画显示方法

UIImageView 动画显示方法 :

-- animationImages : 设置一个 NSArray 对象, 需要显示多张图片;

-- highlightedAnimationImages : 设置 高亮状态 显示的多张图片;

-- animationDuration : 设置 UIImageView 动画持续时间;

-- animationRepeatCount : 设置 UIImageView 动画重复次数;

-- startAnimating : 开始播放动画;

-- stopAnimating : 停止播放动画;

-- isAnimating : 判断 UIImageView 是否正在播放动画;

(4) UIImageView 缩放属性

UIImageView 缩放属性 :

     

-- Scale To Fill : 不保持 纵横缩放比, 图片完全自适应 UIImageView 控件;

-- Aspect Fit : 保持纵横比缩放, 保证图片长边完全显示出来, 完整显示图片;

-- Aspect Fill : 保持纵横比缩放, 保证图片短边能显示出来, 只在水平或垂直方向某一个方向是完整的, 另一个方向截取;

-- Center : 不缩放图片, 显示图片的中间区域;

-- Top : 不缩放图片, 显示图片的顶部区域;

-- Bottom : 不缩放图片, 显示图片底部区域;

-- Left : 不缩放图片, 显示图片左边区域;

-- Right : 不缩放图片, 显示图片右边区域;

-- Top Left : 不缩放图片, 显示图片左上区域;

-- Top Right : 不缩放图片, 显示图片右上区域;

-- Bottom Left : 不缩放图片, 显示图片左下区域;

-- Bottom Right : 不缩放图片, 显示图片右下区域;

2. 图片浏览器示例

(1) API 简介

手势事件 :

-- 设置手势点击响应 : 每个 UIView 都有一个 userInteractionEnabled 属性为 YES;

[objc] view plaincopy
  1. //设置大图片可以相应手势点击
  2. self.bigPicture.userInteractionEnabled = YES;

-- 创建手势识别器 : 创建 UITapGestureRecognizer 手势识别器, initWithTarget 表示手势响应方法的类, action 对应方法的 selector 方法;

[objc] view plaincopy
  1. UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(click:)];

--  为 UIView 添加手势识别器  : 调用 UIView 的 addGestureRecognizer 方法;

[objc] view plaincopy
  1. [self.bigPicture addGestureRecognizer:tap];

--  设置 UIImageView 图片  :

[objc] view plaincopy
  1. self.bigPicture.image = [UIImage imageNamed:[images objectAtIndex:currentImage%images.count]];

--  设置透明度  :

[objc] view plaincopy
  1. self.bigPicture.alpha = alpha;

--  获取手指触摸位置  :

[objc] view plaincopy
  1. //获取手指触摸的位置
  2. CGPoint point = [recognizer locationInView:self.bigPicture];

--  获取图片对应的 CGImageRef  :

[objc] view plaincopy
  1. //获取原图对应的 CGImageRef
  2. CGImageRef imageRef = [srcImage CGImage];

--  根据一个图片创建新的 CGImageRef  :

[objc] view plaincopy
  1. //创建新的图片
  2. CGImageRef newImageRef = CGImageCreateWithImageInRect(imageRef, CGRectMake(x, y, 140, 140));

--  根据 CGImageRef 创建 UIImage  :

[objc] view plaincopy
  1. [UIImage imageWithCGImage:newImageRef];

(2) 代码示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIImageView
  4. //
  5. //  Created by octopus on 15-12-7.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. //大图片的 UIImageView
  11. @property (strong, nonatomic) IBOutlet UIImageView *bigPicture;
  12. //小图片的 UIImageView
  13. @property (strong, nonatomic) IBOutlet UIImageView *smallPicture;
  14. //UISegmentedControl 的方法
  15. - (IBAction)segmentControl:(id)sender;
  16. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIImageView
  4. //
  5. //  Created by octopus on 15-12-7.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. //图片集合
  13. NSArray * images;
  14. //当前显示的图片
  15. int currentImage;
  16. //透明度
  17. CGFloat alpha;
  18. - (void)viewDidLoad
  19. {
  20. [super viewDidLoad];
  21. // Do any additional setup after loading the view, typically from a nib.
  22. //初始化变量
  23. currentImage = 0;
  24. alpha = 1.0;
  25. images = [NSArray arrayWithObjects:@"1.png" , @"2.jpg", @"3.png", nil nil];
  26. //设置大图片可以相应手势点击
  27. self.bigPicture.userInteractionEnabled = YES;
  28. UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(click:)];
  29. [self.bigPicture addGestureRecognizer:tap];
  30. }
  31. - (void)didReceiveMemoryWarning
  32. {
  33. [super didReceiveMemoryWarning];
  34. // Dispose of any resources that can be recreated.
  35. }
  36. - (IBAction)segmentControl:(id)sender {
  37. int index = [sender selectedSegmentIndex];
  38. switch (index) {
  39. case 0: //透明度+
  40. alpha += 0.1;
  41. if(alpha > 1.0){
  42. alpha = 1.0;
  43. }
  44. self.bigPicture.alpha = alpha;
  45. break;
  46. case 1: //透明度-
  47. NSLog(@"1");
  48. alpha -= 0.1;
  49. if(alpha < 0){
  50. alpha = 0;
  51. }
  52. self.bigPicture.alpha = alpha;
  53. break;
  54. case 2: //下一张图片
  55. NSLog(@"2");
  56. self.bigPicture.image = [UIImage imageNamed:[images objectAtIndex:currentImage%images.count]];
  57. currentImage ++;
  58. break;
  59. default:
  60. break;
  61. }
  62. }
  63. - (void) click : (UIGestureRecognizer * ) recognizer{
  64. //获取正在显示的图片
  65. UIImage * srcImage = self.bigPicture.image;
  66. //获取手指触摸的位置
  67. CGPoint point = [recognizer locationInView:self.bigPicture];
  68. //获取原图对应的 CGImageRef
  69. CGImageRef imageRef = [srcImage CGImage];
  70. //获取缩放比例
  71. CGFloat scale = srcImage.size.width / 320;
  72. //获取图片位置
  73. CGFloat x = point.x * scale;
  74. CGFloat y = point.y * scale;
  75. //验证 x y 坐标, 不要超出边界
  76. if (x + 120 > srcImage.size.width - 140) {
  77. x = srcImage.size.width - 140;
  78. }
  79. if (y + 120 > srcImage.size.height) {
  80. y = srcImage.size.height - 140;
  81. }
  82. //创建新的图片
  83. CGImageRef newImageRef = CGImageCreateWithImageInRect(imageRef, CGRectMake(x, y, 140, 140));
  84. self.smallPicture.image = [UIImage imageWithCGImage:newImageRef];
  85. }
  86. @end

-- 界面展示 :

3. 幻灯片放映

(1) API 简介

幻灯片播放相关 API :

-- 设置 UIImage 数组给 UIImageView :

[objc] view plaincopy
  1. images = [NSArray arrayWithObjects:
  2. [UIImage imageNamed:@"1.png"],
  3. [UIImage imageNamed:@"2.jpg"],
  4. [UIImage imageNamed:@"3.png"],
  5. nil nil];
  6. self.imageView.animationImages = images;

--  设置动画的间隔 和 次数  :

[objc] view plaincopy
  1. //设置 UIImageView 动画间隔
  2. self.imageView.animationDuration = 5;
  3. //设置动画重复次数
  4. self.imageView.animationRepeatCount = 0xFFFF;

--  启动动画  :

[objc] view plaincopy
  1. //启动动画
  2. [self.imageView startAnimating];

(2) 代码示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIimageView2
  4. //
  5. //  Created by octopus on 15-12-9.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. @property (strong, nonatomic) IBOutlet UIImageView *imageView;
  11. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIimageView2
  4. //
  5. //  Created by octopus on 15-12-9.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. NSArray * images;
  13. - (void)viewDidLoad
  14. {
  15. [super viewDidLoad];
  16. // Do any additional setup after loading the view, typically from a nib.
  17. //创建 UIImageView 集合
  18. images = [NSArray arrayWithObjects:
  19. [UIImage imageNamed:@"1.png"],
  20. [UIImage imageNamed:@"2.jpg"],
  21. [UIImage imageNamed:@"3.png"],
  22. nil nil];
  23. //设置集合给 UIImageView 的动画
  24. self.imageView.animationImages = images;
  25. //设置 UIImageView 动画间隔
  26. self.imageView.animationDuration = 5;
  27. //设置动画重复次数
  28. self.imageView.animationRepeatCount = 0xFFFF;
  29. //启动动画
  30. [self.imageView startAnimating];
  31. }
  32. - (void)didReceiveMemoryWarning
  33. {
  34. [super didReceiveMemoryWarning];
  35. // Dispose of any resources that can be recreated.
  36. }
  37. @end

-- 界面展示 :

三. 进度条控件 (UIProgressView)

1. UIProgressView 控件属性

UIProgressView 属性截图 :

(1) Style 属性

Style 属性 :

-- Default : 使用默认风格的进度条;

-- Bar : 工具条风格;

(2) progress 属性

Progress 属性 : 设置已进行的进度的比例值, 取值范围 0.0 ~ 1.0;

(3) Progress Tint 属性

Progress Tint 属性 : 已完成的颜色;

(4) Track Tint 属性

Track Tint 属性 : 进度条轨道颜色;

(5) progressImage 属性

ProgressImage 属性 : 设置进度条完成的图片;

-- 注意 : 该属性在 Interface Builder 中没有体现出来;

(6) trackImage 属性

trackImage 属性 : 设置进度条轨道图片;

-- 注意 : 代码中设置, 界面设计文件中无该属性;

2. 可拉伸图片

(1) 可拉伸图片用法

可拉伸图片作用 : 在上述进度条中, 设置的 progressImage 和 trackImage 必须是可拉伸图片;

(2) 可拉伸图片创建

创建可拉伸图片 : 使用 UIImage 创建 可拉伸图片, 通过 UIEdgeInsets 结构体定义图片拉伸区域;

-- UIEdgeInsets 结构体 : 包括 left, top, right, bottom 四个值;

-- 缩放主体 : 图片缩放只在 UIEdgeInsets 定义的 四个属性值 区域缩放, 图片的中心部分是不进行缩放的;

3. 定制进度条示例

(1) 相关 API 简介

相关 API 简介 :

-- 创建可拉伸的 UIImage :

[objc] view plaincopy
  1. UIImage * trackImage = [[UIImage imageNamed:@"Snip20151210_139.png"] resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];

-- 为进度条设置可拉伸图片 :

[objc] view plaincopy
  1. //将可拉伸图片设置给进度条
  2. self.progress3.progressImage = progressImage;
  3. self.progress3.trackImage = trackImage;

--  创建定时器  :

[objc] view plaincopy
  1. //定时器
  2. timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(doProgress) userInfo:nil repeats:YES];

(2) 代码示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIProgressView
  4. //
  5. //  Created by octopus on 15-12-10.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. @property (strong, nonatomic) IBOutlet UIProgressView *progress1;
  11. @property (strong, nonatomic) IBOutlet UIProgressView *progress2;
  12. @property (strong, nonatomic) IBOutlet UIProgressView *progress3;
  13. - (IBAction)click:(id)sender;
  14. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIProgressView
  4. //
  5. //  Created by octopus on 15-12-10.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. //定时器
  13. NSTimer * timer;
  14. //进度条进度
  15. CGFloat progress;
  16. /*
  17. CGFloat : 是 float 类型, 在 IOS 中定义了下面的类型
  18. -- 32 位 : typedef float CGFloat;// 32-bit
  19. -- 64 位 : typedef double CGFloat;// 64-bit
  20. CGPoint : 二维坐标点;
  21. -- 定义代码 :
  22. struct CGPoint {
  23. CGFloat x;
  24. CGFloat y;
  25. };
  26. typedef struct CGPoint CGPoint;
  27. CGSize : 矩形的宽度和高度;
  28. -- 定义代码 :
  29. struct CGSize {
  30. CGFloat width;
  31. CGFloat height;
  32. };
  33. typedef struct CGSize CGSize;
  34. CGRect : 矩形的位置和大小;
  35. -- 定义代码 :
  36. struct CGRect {
  37. CGPoint origin;
  38. CGSize size;
  39. };
  40. typedef struct CGRect CGRect;
  41. */
  42. - (void)viewDidLoad
  43. {
  44. [super viewDidLoad];
  45. // Do any additional setup after loading the view, typically from a nib.
  46. //创建 可拉伸的图片, 平铺样式
  47. UIImage * trackImage = [[UIImage imageNamed:@"Snip20151210_139.png"] resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];
  48. UIImage * progressImage = [[UIImage imageNamed:@"Snip20151210_140.png"] resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];
  49. //将可拉伸图片设置给进度条
  50. self.progress3.progressImage = progressImage;
  51. self.progress3.trackImage = trackImage;
  52. }
  53. - (void)didReceiveMemoryWarning
  54. {
  55. [super didReceiveMemoryWarning];
  56. // Dispose of any resources that can be recreated.
  57. }
  58. - (IBAction)click:(id)sender {
  59. //进度条
  60. progress = 0;
  61. //定时器
  62. timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(doProgress) userInfo:nil repeats:YES];
  63. }
  64. - (void) doProgress{
  65. progress += 0.1;
  66. if(progress > 1.0){
  67. [timer invalidate];
  68. }else{
  69. [self.progress1 setProgress:progress animated:YES];
  70. [self.progress2 setProgress:progress animated:YES];
  71. [self.progress3 setProgress:progress animated:YES];
  72. }
  73. }
  74. @end

-- 运行展示 : 可拉伸图片效果没有出现, 待调试;

四. 进度环控件 (UIActivityIndicatorView)

1. 进度环控件 (UIActivityIndicatorView) 属性

UIActivityIndicatorView 属性截图 :

(1) Style 属性

Style 属性 :

-- Large White : 大的 白色 风格;

-- White : 白色风格;

-- Gray : 灰色风格;

(2) Color 属性

Color 属性 :

-- 作用 : 设置进度条的颜色, 设置该属性会覆盖之前选中的风格中的颜色;

(3) Behavior 属性

Behavior 属性 :

-- Animating : 显示出来后立即转动;

-- Hides When Stopped : 停止时自动隐藏;

(4) UIActivityIndicatorView 大小

两种大小 :

-- 标准风格 : 像素值 20 x 20;

-- 大风格 : 像素值 37 x 37;

(5) 控制方法

UIActivityIndicatorView 控制方法 :

-- 开始转动 : startAnimating 方法;

-- 停止转动 : stopAnimating 方法;

2. UIActivityIndicatorView 代码示例

(1) 创建 IBOutletConnection

创建 IBOutletConnection :

-- 按住 Option 键 将一个元素拖动到 OCViewController.h 中 : 其中的 Connection 属性, 不要选择 IBOutlet 属性, 选择 IBOutletConnection 属性;

-- 将想要添加到 IBOutletConnection 中的控件拖动到 OCViewController.h 中的 IBOutletConnection 属性变量上 :

(2) 代码示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIProgressView
  4. //
  5. //  Created by octopus on 15-12-10.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. @property (strong, nonatomic) IBOutlet UIProgressView *progress1;
  11. @property (strong, nonatomic) IBOutlet UIProgressView *progress2;
  12. @property (strong, nonatomic) IBOutlet UIProgressView *progress3;
  13. @property (strong, nonatomic) IBOutletCollection(UIActivityIndicatorView) NSArray *IndicatorCollection;
  14. - (IBAction)start:(id)sender;
  15. - (IBAction)end:(id)sender;
  16. - (IBAction)click:(id)sender;
  17. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIProgressView
  4. //
  5. //  Created by octopus on 15-12-10.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. //定时器
  13. NSTimer * timer;
  14. //进度条进度
  15. CGFloat progress;
  16. /*
  17. CGFloat : 是 float 类型, 在 IOS 中定义了下面的类型
  18. -- 32 位 : typedef float CGFloat;// 32-bit
  19. -- 64 位 : typedef double CGFloat;// 64-bit
  20. CGPoint : 二维坐标点;
  21. -- 定义代码 :
  22. struct CGPoint {
  23. CGFloat x;
  24. CGFloat y;
  25. };
  26. typedef struct CGPoint CGPoint;
  27. CGSize : 矩形的宽度和高度;
  28. -- 定义代码 :
  29. struct CGSize {
  30. CGFloat width;
  31. CGFloat height;
  32. };
  33. typedef struct CGSize CGSize;
  34. CGRect : 矩形的位置和大小;
  35. -- 定义代码 :
  36. struct CGRect {
  37. CGPoint origin;
  38. CGSize size;
  39. };
  40. typedef struct CGRect CGRect;
  41. */
  42. - (void)viewDidLoad
  43. {
  44. [super viewDidLoad];
  45. // Do any additional setup after loading the view, typically from a nib.
  46. //创建 可拉伸的图片, 平铺样式
  47. UIImage * trackImage = [[UIImage imageNamed:@"Snip20151210_139.png"] resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];
  48. UIImage * progressImage = [[UIImage imageNamed:@"Snip20151210_140.png"] resizableImageWithCapInsets:UIEdgeInsetsZero resizingMode:UIImageResizingModeTile];
  49. //将可拉伸图片设置给进度条
  50. self.progress3.progressImage = progressImage;
  51. self.progress3.trackImage = trackImage;
  52. }
  53. - (void)didReceiveMemoryWarning
  54. {
  55. [super didReceiveMemoryWarning];
  56. // Dispose of any resources that can be recreated.
  57. }
  58. - (IBAction)start:(id)sender {
  59. for(int i = 0; i < 4; i ++){
  60. //从集合中获取 UIActivityIndicatorView 控件并开启动画
  61. [[self.IndicatorCollection objectAtIndex:i] startAnimating];
  62. }
  63. }
  64. - (IBAction)end:(id)sender {
  65. for(int i = 0; i < 4; i ++){
  66. //从集合中获取 UIActivityIndicatorView 控件并结束动画
  67. [[self.IndicatorCollection objectAtIndex:i] stopAnimating];
  68. }
  69. }
  70. - (IBAction)click:(id)sender {
  71. //进度条
  72. progress = 0;
  73. //定时器
  74. timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(doProgress) userInfo:nil repeats:YES];
  75. }
  76. - (void) doProgress{
  77. progress += 0.1;
  78. if(progress > 1.0){
  79. [timer invalidate];
  80. }else{
  81. [self.progress1 setProgress:progress animated:YES];
  82. [self.progress2 setProgress:progress animated:YES];
  83. [self.progress3 setProgress:progress animated:YES];
  84. }
  85. }
  86. @end

-- 页面展示效果 :

五. 拖动条控件 (UISlider)

1. 拖动条控件 (UISlider) 简介

属性截图 :

(1) UISlider 图片设置方法

UISlider 设置图片方法 :

-- 已完成进度轨道图片 : "setMinimumTrackingImage : forState :";

-- 未完成进度轨道图片 : "setMaximumTrackingImage : forState :";

-- 设置滑块的图片 : "setThumbImage : forState :";

2. 拖动条改变透明度示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UISlider
  4. //
  5. //  Created by octopus on 15-12-14.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController
  10. @property (strong, nonatomic) IBOutlet UISlider *slid;
  11. @property (strong, nonatomic) IBOutlet UIImageView *image;
  12. - (IBAction)valueChange:(id)sender;
  13. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UISlider
  4. //
  5. //  Created by octopus on 15-12-14.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. [self.image setAlpha: 0];
  17. }
  18. - (void)didReceiveMemoryWarning
  19. {
  20. [super didReceiveMemoryWarning];
  21. // Dispose of any resources that can be recreated.
  22. }
  23. - (IBAction)valueChange:(id)sender {
  24. [self.image setAlpha: self.slid.value];
  25. }
  26. @end

-- 运行展示 :

四. 警告框控件 (UIAlertView)

1. 警告框控件 (UIAlertView) 简介

(1) UIAlertView 创建流程

UIAlertView 创建流程  :

-- 创建 UIAlertView : 创建时指定 标题, 内容, 按钮等信息, 按钮监听需要创建 UIAlertView 的 UIAlertViewDelegate 委托对象;

-- 显示 UIAlertView : 调用显示 UIAlertView 的显示方法;

-- 监听按钮 : 为委托对象实现 UIAlertViewDelegate 协议中的方法即可;

(2) UIAlertViewDelegate 协议方法

UIAlertViewDelegate 协议方法简介 :

-- "- (void) alertView : (UIAlertView *) alertView clickedButtonAtIndex : (NSInteger) buttonIndex :" 方法 : 用户单击对话框中的按钮激发的方法, buttonIndex 是点击的按钮的索引;

-- "- (void) willPresentAlertView : (UIAlertView *) alertView" 方法 : 对话框将要显示时激发该方法;

-- "- (void) didPresentAlertView : (UIAlertView *) alertView" 方法 : 对话框完全显示出来后激发该方法;

-- "- (BOOL) alertViewShouldEnableFirstOtherButton : (UIAlertView *) alertView" 方法 : 对话框中除 cancel 按钮之后的第一个按钮被启用回调该方法;

-- "- (void) alertView : (UIAlertView *) alertView willDissmissWithButtonIndex : (NSInteger) buttonIndex" 方法 : 单击某按钮将要隐藏警告框时激发该方法;

-- "- (void) alertView : (UIAlertView *) alertView didDissmissWithButtonIndex : (NSInteger) buttonIndex" 方法: 单击某个按钮已经隐藏警告框后激发该方法;

-- "- (void) alertViewCancel : (UIAlertView * ) alertView " 方法 : 对话框被取消时激发的方法;

(3) UIAlertView 输入框风格设置

UIAlertView 的 actionSheetStyle 属性 :

-- 主要作用 : 设置 UIAlertView 的风格, 取值是 枚举值;

-- UIAlertViewStyleDefault 枚举值 : 默认警告框风格;

-- UIAlertViewStyleSecureTextInput 枚举值 : 警告框中有一个密码输入框;

-- UIAlertViewStylePlainTextInput 枚举值 : 警告框中包含普通输入框;

-- UIAlertViewStyleLoginAndPasswordInput 枚举值 : 警告框中包含 用户名 密码输入;

访问输入框方法 :

-- "- (UITextField *) textFieldAtIndex : (NSInteger) textFieldIndex" : 获取 索引值 为 textFieldIndex 的文本输入框;

.

.

2. 简单的对话框示例

(1) 创建 UIAlertView API

创建方法 :

[objc] view plaincopy
  1. [[UIAlertView alloc] initWithTitle:<#(NSString *)#> message:<#(NSString *)#> delegate:<#(id)#> cancelButtonTitle:<#(NSString *)#> otherButtonTitles:<#(NSString *), ...#>, nil nil];

-- 参数一 : initWithTittle 对话框名称;

-- 参数二 : message 对话框内容;

-- 参数三 : delegate 委托对象;

-- 参数四 : cancelButtonTittle 取消按钮文字内容;

-- 参数五 : otherButtonTittles 其它按钮文字内容;

-- 真实代码 :

[objc] view plaincopy
  1. /*
  2. 创建 UIAlertView 控件, 传入参数 标题 内容 委托对象 取消按钮 其它按钮
  3. */
  4. UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"对话框标题" message:@"对话框内容" delegate:self cancelButtonTitle:@"取消显示" otherButtonTitles:@"按钮1", @"按钮2", @"按钮3", @"按钮4", nil nil];

显示对话框 : [UIAlertView show];

(2) 代码示例

代码示例 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIAlertView
  4. //
  5. //  Created by octopus on 15-12-14.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController <UIAlertViewDelegate>
  10. //按钮的 IBAction 方法
  11. - (IBAction)click:(id)sender;
  12. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIAlertView
  4. //
  5. //  Created by octopus on 15-12-14.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. }
  17. - (void)didReceiveMemoryWarning
  18. {
  19. [super didReceiveMemoryWarning];
  20. // Dispose of any resources that can be recreated.
  21. }
  22. //点击按钮弹出 UIAlertView 对话框
  23. - (IBAction)click:(id)sender {
  24. /*
  25. 创建 UIAlertView 控件, 传入参数 标题 内容 委托对象 取消按钮 其它按钮
  26. */
  27. UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"对话框标题" message:@"对话框内容" delegate:self cancelButtonTitle:@"取消显示" otherButtonTitles:@"按钮1", @"按钮2", @"按钮3", @"按钮4", nil nil];
  28. //调用该方法显示 UIAlertView 控件
  29. [alert show];
  30. }
  31. //实现的 UIAlertViewDelegate 协议中的方法
  32. - (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
  33. NSString * msg = [NSString stringWithFormat:@"点击了按钮 %d", buttonIndex];
  34. UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"弹出框" message: msg delegate:nil cancelButtonTitle:@"取消" otherButtonTitles: nil nil];
  35. [alert show];
  36. }
  37. @end

-- 运行界面展示 :

3. 警告框控件 (UIAlertView) 示例代码

(1) 相关 API 简介

相关 API 简介 :

-- 设置 警告提示框 风格 :

[objc] view plaincopy
  1. //设置提示框的风格 账号密码输入
  2. alertView.alertViewStyle = UIAlertViewStyleLoginAndPasswordInput;

-- 设置输入框键盘输入类型 :

[objc] view plaincopy
  1. //设置密码输入是数字键盘
  2. [alertView textFieldAtIndex:1].keyboardType = UIKeyboardTypeNumberPad;

-- 获取指定索引的输入框 :

[objc] view plaincopy
  1. //获取账号输入文本框
  2. UITextField * userNameField = [alertView textFieldAtIndex:0];

-- 生成警告提示框 :

[objc] view plaincopy
  1. //创建一个带 两个按钮的 提示框 确定 取消
  2. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"登录" message:@"输入用户名密码" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil nil];

-- 显示警告提示框 :

[objc] view plaincopy
  1. //显示警告提示框
  2. [alertView show];

(2) 示例代码

示例代码 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  TextFieldUIAlertView
  4. //
  5. //  Created by octopus on 15-12-17.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController <UIAlertViewDelegate>
  10. - (IBAction)click:(id)sender;
  11. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  TextFieldUIAlertView
  4. //
  5. //  Created by octopus on 15-12-17.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. }
  17. - (void)didReceiveMemoryWarning
  18. {
  19. [super didReceiveMemoryWarning];
  20. // Dispose of any resources that can be recreated.
  21. }
  22. - (IBAction)click:(id)sender {
  23. //创建一个带 两个按钮的 提示框 确定 取消
  24. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"登录" message:@"输入用户名密码" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil nil];
  25. //设置提示框的风格 账号密码输入
  26. alertView.alertViewStyle = UIAlertViewStyleLoginAndPasswordInput;
  27. //设置密码输入是数字键盘
  28. [alertView textFieldAtIndex:1].keyboardType = UIKeyboardTypeNumberPad;
  29. //显示警告提示框
  30. [alertView show];
  31. }
  32. - (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
  33. if(buttonIndex == 1){
  34. //获取账号输入文本框
  35. UITextField * userNameField = [alertView textFieldAtIndex:0];
  36. //获取密码输入文本框
  37. UITextField * passwordField = [alertView textFieldAtIndex:1];
  38. //生成 一个 包含账号 密码 输入的字符串
  39. NSString * content = [NSString stringWithFormat:@"用户名为 : %@, 密码为 : %@", userNameField.text, passwordField.text];
  40. //生成警告提示框
  41. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"标题" message:content delegate:nil cancelButtonTitle:@"确定" otherButtonTitles: nil nil];
  42. //显示警告提示框
  43. [alertView show];
  44. }
  45. }
  46. - (void) willPresentAlertView:(UIAlertView *)alertView{
  47. //遍历所有的 UIView 集合
  48. for(UIView * view in alertView.subviews){
  49. //如果类型是 UILabel
  50. if([view isKindOfClass:[UILabel class]]){
  51. //获取 UILabel 控件
  52. UILabel * label = (UILabel *) view;
  53. //设置 UILabel 控件右对齐
  54. label.textAlignment = UITextAlignmentRight;
  55. }
  56. }
  57. }
  58. @end

-- 界面展示效果 :

五. UIActionSheet 控件

1. UIActionSheet 简介

(1) UIActionSheet 作用

UIActionSheet 作用 : 该控件是显示在界面底部的按钮列表, 该控件 有 一个标题 和 多个按钮;

(2) UIActionSheet 按钮

UIActionSheet 固定按钮 :

-- 取消按钮 : 灰色背景, 主要用于取消该 UIActionSheet 控件显示;

-- 销毁按钮 : 红色背景, 用于删除某记录时, 使用该按钮确认销毁;

(3) UIActionSheet 风格

UIActionSheet 支持风格 :

-- UIActionSheetStyleDefault : 灰色背景上显示白色文字;

-- UIActionSheetStyleBlackTranselucent : 透明黑色背景上显示白色文字;

-- UIActionSheetBlackOpaque : 纯黑的背景上显示白色文字;

2. UIActionSheet 示例代码

UIActionSheet 示例代码 :

-- 界面设计文件 :

-- OCViewController.h :

[objc] view plaincopy
  1. //
  2. //  OCViewController.h
  3. //  UIActionSheet
  4. //
  5. //  Created by octopus on 15-12-17.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface OCViewController : UIViewController <UIActionSheetDelegate>
  10. - (IBAction)click:(id)sender;
  11. @end

-- OCViewController.m :

[objc] view plaincopy
  1. //
  2. //  OCViewController.m
  3. //  UIActionSheet
  4. //
  5. //  Created by octopus on 15-12-17.
  6. //  Copyright (c) 2015年 www.octopus.org.cn. All rights reserved.
  7. //
  8. #import "OCViewController.h"
  9. @interface OCViewController ()
  10. @end
  11. @implementation OCViewController
  12. - (void)viewDidLoad
  13. {
  14. [super viewDidLoad];
  15. // Do any additional setup after loading the view, typically from a nib.
  16. }
  17. - (void)didReceiveMemoryWarning
  18. {
  19. [super didReceiveMemoryWarning];
  20. // Dispose of any resources that can be recreated.
  21. }
  22. - (IBAction)click:(id)sender {
  23. UIActionSheet * actionSheet = [[UIActionSheet alloc] initWithTitle:@"是否删除" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:@"确定" otherButtonTitles: @"按钮一", @"按钮二", nil nil];
  24. actionSheet.actionSheetStyle = UIActionSheetStyleAutomatic;
  25. [actionSheet showInView:self.view];
  26. }
  27. - (void) actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
  28. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:[NSString stringWithFormat : @"点击了第 %d 个按钮", buttonIndex] delegate:nil cancelButtonTitle:@"取消" otherButtonTitles: nil nil];
  29. [alertView show];
  30. }
  31. @end

-- 运行界面展示 :

转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50163725

UIControl类控件(三)相关推荐

  1. 八、pyqt5按钮类控件——QPushButton、QRadioButton、QCheckBox

    pyqt5中常用的按钮类控件有QPushButton.QRadioButton.QCheckBox.QToolButton等.这些按钮类的基类都是QAbstracButton类.所以这些类有部分方法是 ...

  2. 驰骋工作流引擎表单设计控件-字段类控件(2)

    2019独角兽企业重金招聘Python工程师标准>>> Technorati Tags: 开源工作流引擎, 驰骋.net工作流引擎, 开源表单引擎, ccform, ccflow, ...

  3. C#:C#控件系列四(列表类控件)

    列表类控件 1. ListBox 控件: ListBox控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择. 在列表框中,用户一次可以选择一项,也可以选择多项. 1.1. 常用属性: ...

  4. 转载几篇别人写的皮肤类控件的技术文章

    转载几篇别人写的皮肤类控件的技术文章 原连接:http://blog.sina.com.cn/s/blog_4c3538470100ezhu.html 实现控件的透明背景 很多情况下,我们需要控件 的 ...

  5. Adapter类控件使用之ExpandableList(可折叠式列表)的基本使用

    (一)概述 本节要讲解的Adapter类控件是ExpandableListView,就是可折叠的列表,它是 ListView的子类, 在ListView的基础上它把应用中的列表项分为几组,每组里又可包 ...

  6. PyQt5快速开发与实战 4.5 按钮类控件 and 4.6 QComboBox(下拉列表框)

    PyQt5快速开发与实战 文章目录 PyQt5快速开发与实战 4. 第4章 PyQt5 基本窗口控件 4.5 按钮类控件 4.5.1 QAbstractButton 4.5.2 QPushButton ...

  7. android自己定义刷新类控件

    android尽管定义了种类很丰富的控件.可是有的时候这些自己定义的控件还是不能满足我的要求,为了可以适配很多其它的需求,我们须要在原有的基础上进行自己定义控件. 今天我向大家介绍的就是android ...

  8. kettle中java组件_kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件

    该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义 ...

  9. 07.移动先行之谁主沉浮----控件之轮流轰炸——布局类控件

    如果移动方向有任何问题请参考===> 异常处理汇总-移动系列(点) 移动先行之谁主沉浮? 带着你的Net飞奔吧! 链接======>(点) 一.布局类控件 Grid.StackPanel. ...

最新文章

  1. 重复调用的代码块——方法
  2. 同一个页面生成多个sessionid_web页面渲染(一)
  3. Code-First Development with Entity Framework 4
  4. Eclipse使用Git上传新项目到GitHub
  5. Python爬虫,超简单地实现一键提取阴阳师原画
  6. 前端基础知识(三)HTTP和HTTPS、GET和POST
  7. 修改、删除word分节符
  8. OSChina 周三乱弹 ——carlos 你和你的电脑怎么过的幸福?
  9. 美国人口的模型预测——非线性最小二乘法
  10. python pyplot 宽高等比_matplotlib(等单位长度):长宽比为“等”时,z轴不等于x轴和y轴...
  11. 马云:我不为996辩护,我向奋斗者致敬
  12. LIME Low light Image Enhancement via Illumination Map Estimation
  13. KeyError: [] not found in axis_最IN拉花潮改“出圈”,欧拉白猫拓创无限可能_搜狐汽车...
  14. 教你如何白嫖1TOneDrive云空间
  15. hdu 2086 A1 = ?(递推)
  16. Excel表格中排名函数
  17. 【前端安全系列】【万字详解】如何防止XSS攻击?
  18. PDF格式文件怎么编辑?分享一个PDF编辑的方法
  19. 产品经理常用词汇汇总
  20. 函数最值题目及答案_关于函数的习题及答案

热门文章

  1. Spring MappingJackson2JsonView的使用
  2. python笔记2:指定概率生成数据
  3. 【预测模型-BP分类】基于蝙蝠算法优化BP神经网络实现数据分类附matlab代码
  4. 高校财务会计仿真模拟实训软件
  5. Python之TCP Socket网络编程
  6. 数学建模 -- 预测模型
  7. Lucene(9):Lucene优化
  8. Visio制图系列文章总结【终】
  9. mysql数据库的使用
  10. 萌新C#(1)-自定义记事本