zoukankan      html  css  js  c++  java
  • Object-C知识点 (二) 控件的实用属性

    开发过程中的组件不常用但是很实用的属性!!!!!!

    #pragma mark -- UIColor
    colorWithPatternImage: 根据图片显示颜色,会将图片裁剪


    #pragma mark--Button

    //自适应
    [self.button sizeToFit];
    
    //禁止触摸事件的2种方式
    
    //方式一: 会改变按钮状态,颜色会变灰
    self.button.enabled = NO;
    
    //方式二: 保持按钮状态,颜色不会变
    self.button.userInteractionEnabled = NO;
    
     
    // 按钮高亮的时候,不要去调整图片(不要调整图片为灰色)
    self.button.adjustsImageWhenHighlighted = NO;
    
    //当按钮不能点击的时候,不要调整为灰色
    self.button.adjustsImageWhenDisabled = NO;
    
    //最彻底的解决办法(重写setHighlighted方法)
    - (void)setHighlighted:(BOOL)highlighted {
    
    }
    
    // titleEdgeInsets:只影响按钮内部的titleLabel
    button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
    
    // imageEdgeInsets:只影响按钮内部的imageView
    button.imageEdgeInsets = UIEdgeInsetsMake(20, 0, 0, 50);
    
    // contentEdgeInsets:会影响按钮内部的所有内容(里面的imageView和titleLabel)
    // button.contentEdgeInsets = UIEdgeInsetsMake(10, 100, 0, 0);
    
    
    //需要设置按钮的image和backgroundImage,建议先把按钮类型改为custom,才能保证设置成功
    
    // 避免多个按钮同时点击 app 启动方法中增加
    // [[UIButton appearance] setExclusiveTouch:YES];

    #pragma mark--text文本框

    //计算内容需要的空间大小
    CGRect rect = [@"abcdefg" boundingRectWithSize:CGSizeMake(bounds.size.width - 40, 100000) 
                    options:NSStringDrawingUsesLineFragmentOrigin
                    attributes:
                    @{NSFontAttributeName:[UIFont systemFontOfSize:17]}
                    context:nil];



    #pragma mark -- textView 文本框
    selectedRange :
    1.本来是用来控制textView的文字选中范围
    2.如果selectedRange.length为0,selectedRange.location就是textView的光标位置

    关于textView文字的字体
    1.如果是普通文字(text),文字大小由textView.font控制
    2.如果是属性文字(attributedText),文字大小不受textView.font控制,应该利用NSMutableAttributedString的
    - (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;方法设置字体

    #pragma mark--UISlider 滑块

    _slider = [[UISlider alloc] initWithFrame:CGRectMake(50, 180, self.view.bounds.size.width, 30)];
    // 真实高度为会发生变化,界面不会变化,设置背景颜色查看
    //滑块的颜色
    _slider.thumbTintColor = [UIColor redColor];
    
    //滑块左边的颜色
    _slider.minimumTrackTintColor = [UIColor yellowColor];
    
    //滑块右边的颜色
    _slider.maximumTrackTintColor = [UIColor blueColor];
    
    //ValueChanged: 当UISlider的值发生变化时调用.
    //TouchDown: 当UISlider被按下时调用.
    //TouchUpInside/TouchUpOutside: 松开时调用.


    #pragma mark -- UIProgressView 进度条

    self.progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault];
    
    self.progressView.frame = CGRectMake(50, 130, 275, 20);
    //真实高度不会改变,界面不会变化
    
    //设置progress的大小 0.0--1.0 默认是0.0
    self.progressView.progress = 0.0;

    #pragma mark--UIImagePickerController 图片选择器

    // 设置编辑图像的属性
    self.picker.allowsEditing = YES;

    #pragma mark--UIScrollView 图片的滚动

    [scrollView.panGestureRecognizer translationInView:scrollView.superview].x
    < 0 向左滑 = 0 上下滑动 >0 向右滑动

     更多内容--> 博客导航 每周一篇哟!!!

    有任何关于iOS开发的问题!欢迎下方留言!!!或者邮件lieryangios@126.com 虽然我不一定能够解答出来,但是我会请教iOS开发高手!!!解答您的问题!!!

  • 相关阅读:
    hadoop配置笔记
    hadoop安装笔记
    抄一篇maven的备忘
    这个计划任务的名字老记不住,还是存一下了
    GodMode
    恢复oracle数据从delete
    在注册表中查看Windows10系统激活密钥的方法
    Jenkins 提效工具之 Jenkins Helper 使用介绍
    移动硬盘安装Ubuntu系统(UEFI引导)的一些记录
    Linux系统下的Jenkins的简要安装方法
  • 原文地址:https://www.cnblogs.com/CoderEYLee/p/Object-C-0014.html
Copyright © 2011-2022 走看看