ios关于UI

1.ios在控件上添加虚线边框

内容很详细,涉及到虚线边框圆角问题及解决过程。

2.ios截图

①截某个显示图片的控件上的截图

 UIGraphicsBeginImageContext(_imgView.frame.size);

[_imgView.layer renderInContext:UIGraphicsGetCurrentContext()];

UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();

UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);

UIGraphicsEndImageContext();

return viewImage;

这里只能截取_imgView上显示的图片及imgView上面覆盖的子视图,而不能截取imgView某个子视图内imgView的图片。

②截取某个控件上某一部分的截图

拖动、缩放、裁剪框UI效果,没有边界判断,裁剪范围不是裁剪框的区域demo

https://www.jianshu.com/p/a76b8385facc

解决裁剪出的图片不是裁剪框范围的问题

https://blog.csdn.net/maggiezzzzz/article/details/51741816

3.ios使用系统插件之后,默认按钮上的文字是英文的,类似navigationItem.rightBarButtonItem、UIImagePickerController拍照和裁剪页面选定了风格之后,显示的文字或图片都是默认的,想要全部显示中文,除了通过代码依次改变之外,还可以通过设置info.plist文件中Localization native development region为China

4.关于UITextfield
修改textfield占位符字体颜色
参考后最简单的方法:

[phoneTf setValue:[UIColor whiteColor] forKeyPath:@"placeholderLabel.textColor"];

②textfield设置文字与左边框距离
//设置左边视图的宽度

textField.leftView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 8, 0)];

//设置显示模式为永远显示(默认不显示 必须设置 否则没有效果)

textField.leftViewMode = UITextFieldViewModeAlways;

5.关于UILabel
① 完成中间六个数字样式


image.png

首先设置字体大小textSize,根据字体大小算出字体间距textWidth,设置字间距NSKernAttributeName,但是第一个字与边距是没有距离的,所以再次设置段落样式首行字符缩进距离firstLineHeadIndent,居中设置没有任何意义,最后把样式赋值给label。

        CGSize textSize = [@"3" boundingRectWithSize:CGSizeMake(MAXFLOAT, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName : [UIFont systemFontOfSize:48]} context:nil].size;

        CGFloat textWidth = textSize.width;

        NSString *labelText = [NSString stringWithFormat:@"%s",szTotpHash];

        NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText attributes:@{NSKernAttributeName:@(_textSpace)}];

        NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];

        [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];

        paragraphStyle.firstLineHeadIndent = _textSpace;
        paragraphStyle.alignment = TextAlignmentCenter;
        self.dPassword.attributedText = attributedString;

6.图层叠加与拦截事件
两个叠加的图层A、B,A在B图层下方:
① 若点击时希望A响应,则B设置userInteractionEnabled为NO,A设置为YES。
② 若希望点击时B响应,则A、B都要设置userInteractionEnabled为YES
③系统默认不能跟用户交互的UI:UIImageView,UILabel
默认和用户交互的:UIView,UIScrollView,UItableView等
7.设置父视图透明度 不影响子视图
preView.backgroundColor=[[UIColor blackColor]colorWithAlphaComponent:0.5];
8.宏定义生成随机色

#define ZRRandomColor ZRColor(arc4random_uniform(256), arc4random_uniform(256), arc4random_uniform(256))

9.tabbar 去线条,加阴影
//移除顶部线条
self.tabBar.backgroundImage = [UIImage new];
self.tabBar.shadowImage = [UIImage new];

//添加阴影
self.tabBar.layer.shadowColor = [UIColor lightGrayColor].CGColor;
self.tabBar.layer.shadowOffset = CGSizeMake(0, -5);
self.tabBar.layer.shadowOpacity = 0.3;

10.UIButton imageEdgeInsets与titleEdgeInsets

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,590评论 4 61
  • UI初级: 第一天 第二天 第三天 UINavigationController:导航控制器 (导航栈型结构), ...
    歌白梨阅读 631评论 0 3
  • 著名足球明星马拉多纳说:“告诉孩子们,让他们崇拜有学问的人,不要崇拜我。我只读过小学,只读过小学的人是一头驴子。”...
    月光墨墨阅读 438评论 2 1
  • 今天是2018年4月6日 早上天还没亮起来的时候,迷迷糊糊感觉脑袋边有小呼噜声,知道一碗儿肯定又趴在我枕头上了,自...
    来迟_3db4阅读 381评论 1 1
  • 心中若有桃花源 何处不是水云间 面朝大海 春暖花开 三月你好!
    梁軍阅读 334评论 0 1

友情链接更多精彩内容