iOS UI CodeSnippet

UILabel

 {
        UILabel* lb =[[UILabel alloc]initWithFrame:CGRectZero];
        lb.autoresizingMask=UIViewAutoresizingFlexibleWidth;
        _lbEmptyInfo=lb;
        lb.frame=CGRectMake(100, 100, 100, 14);
        lb.textColor=COLORRGB(0x1e1e1e);
        lb.textAlignment=NSTextAlignmentLeft;
        lb.backgroundColor=[UIColor clearColor];
        lb.font=[UIFont systemFontOfSize:12];
        lb.text[email protected]"还没有发布任何约伴信息哦!";
        [self.view addSubview:lb];

    }

UIButton


    {
        UIButton* bt =[UIButton buttonWithType:UIButtonTypeCustom];
        bt.autoresizingMask=UIViewAutoresizingFlexibleWidth;
        [bt setBackgroundImage:[[UIImage imageNamed:@"[email protected]"] resizableImageWithCapInsets:UIEdgeInsetsMake(5, 5, 5, 5)] forState:UIControlStateNormal];
        _btEmptyCreate=bt;
        bt.frame=CGRectMake(100, 100, 100, 30);
        [bt addTarget:self action:@selector(forwardCreatePostVC:) forControlEvents:UIControlEventTouchUpInside];
        bt.backgroundColor=[UIColor clearColor];
        bt.titleLabel.font=[UIFont systemFontOfSize:12];
        [bt setTitle:@"立即发布" forState:UIControlStateNormal];
        [bt setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
        [self.view addSubview:bt];

    }

UIView

{
            UIView* v=[UIView new];
            v.frame=CGRectMake(100, 100, 100, 30);
            v.autoresizingMask=UIViewAutoresizingFlexibleWidth;
            v.backgroundColor=COLORRGB(0xd1d4d4);
            [self.view addSubview:v];

        }

UIImageView

{
            UIImageView* iv =[UIImageView new];
            iv.frame=CGRectMake(0, 0, 35, 35);
            iv.autoresizingMask=UIViewAutoresizingFlexibleWidth;
            iv.backgroundColor=[UIColor clearColor];
            iv.image=[UIImage imageNamed:@"search-calendar-icon"];
            [self.view addSubview:iv];
        }

UITableView

{
        UITableView* tb=[[UITableView alloc]initWithFrame:self.view.bounds];
        self.tbItems=tb;
        tb.tableFooterView=[UIView new];
        tb.autoresizingMask=UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
        tb.separatorColor=COLORRGB(0xd6d6d6);
        tb.separatorStyle=UITableViewCellSeparatorStyleNone;
        tb.delegate=self;
        tb.dataSource=self;
        tb.backgroundColor=MAIN_SECTION_BG_COLOR;
        [self.view addSubview:tb];
    }

UITextView

{
          UITextView* tv=[[UITextView alloc]initWithFrame:CGRectZero];
            tv.frame=CGRectMake(10, 10, 100, 100);
            tv.tag=TAG_CELL_TV_NOTE;
            tv.textColor=COLORRGB(0x606565);
            tv.textAlignment=NSTextAlignmentRight;
            tv.backgroundColor=[UIColor clearColor];
            tv.font=[UIFont systemFontOfSize:12];
            [cell.contentView addSubview:tv];
        }

UISwitch

 {
            UISwitch* sw=[[UISwitch alloc]initWithFrame:CGRectZero];
            sw.frame=CGRectMake(cell.frame.size.width-33-10, (45-20)/2, 33, 20);
            sw.autoresizingMask=UIViewAutoresizingFlexibleRightMargin;
            [sw addTarget:self action:@selector(handlerSwitchEvent:) forControlEvents:UIControlEventValueChanged];
            sw.tag=TAG_CELL_SW_SWITCH;
            sw.onTintColor=MAIN_COLOR_2;
            [cell.contentView addSubview:sw];
        }

UITableViewCell

  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
    if (!cell)
    {
        cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
            cell.selectionStyle=UITableViewCellSelectionStyleNone;
    }

UITextField

 {
            UITextField* tf=[[UITextField alloc]initWithFrame:CGRectZero];
            tf.frame=CGRectMake(80, 16, cell.frame.size.width-80-10, 15);
            tf.tag=TAG_CELL_TF_VALUE;
            [tf addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
            tf.borderStyle=UITextBorderStyleNone;
            tf.textColor=COLORRGB(0x787c7c);
            tf.textAlignment=NSTextAlignmentRight;
            tf.backgroundColor=[UIColor clearColor];
            tf.font=[UIFont systemFontOfSize:13];
            [cell.contentView addSubview:tf];
        }

EYTagView

{//tag flow
        EYTagView* tag=[[EYTagView alloc]initWithFrame:CGRectZero];
        tag.frame=CGRectMake(100,(45-28)/2, SCREEN_WIDTH-100-25, 30);
        tag.tag=TAG_HEADER_V_LOCATION_FLOW;
        tag.type=EYTagView_Type_Flow;
        [APPDELEGATE configEYTagViewLocationFlowStyle:tag];
        tag.numberOfLines=1;
        tag.delegate=self;
        [APPDELEGATE configEYTagViewStyle:tag];
        [_vTableHeader addSubview:tag];
    }

layout

UILabel size

忽略 linenumber ,得到最大的size
{
        UILabel* lb=(id)[_vTableHeader viewWithTag:TAG_HEADER_LB_REMARK];
        lb.backgroundColor=TEST_COLOR_RED;
        CGSize maximumLabelSize = CGSizeMake(lb.frame.size.width,1000);
        NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:lb.font,NSFontAttributeName,nil];
        NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:lb.text attributes:attributesDictionary];
        CGRect newFrame = [string boundingRectWithSize:maximumLabelSize options:NSStringDrawingUsesLineFragmentOrigin context:nil];
        CHANGE_FRAME_HEIGTH(lb, newFrame.size.height);
        CHANGE_FRAME_Y(lb, CGRectGetMaxY([_vTableHeader viewWithTag:TAG_HEADER_V_LOCATION_FLOW].frame)+8)
    }
当linenumber>1时候,得到size
{
        UILabel* lb=(id)_lbSignature;
        CGSize maximumLabelSize = CGSizeMake(lb.frame.size.width,1000);
         CGSize newSize =[lb sizeThatFits:maximumLabelSize];
        CHANGE_FRAME_HEIGHT(lb, newSize.height)
    }
{
        UILabel* lb=(id)[_vTableHeader viewWithTag:TAG_HEADER_LB_NAME];
        CGSize maximumLabelSize = CGSizeMake(1000, lb.frame.size.height);
        NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:lb.font,NSFontAttributeName,nil];
        NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:lb.text attributes:attributesDictionary];
        CGRect newFrame = [string boundingRectWithSize:maximumLabelSize options:NSStringDrawingUsesLineFragmentOrigin context:nil];
        CHANGE_FRAME_WIDTH(lb, newFrame.size.width);
    }

TTTAttributedLabel size

{
        TTTAttributedLabel* lb=(id)[_vTableHeader viewWithTag:TAG_HEADER_LB_REMARK];
        lb.backgroundColor=TEST_COLOR_RED;
        CGSize maximumLabelSize = CGSizeMake(lb.frame.size.width,1000);
        CGSize newSize= [lb sizeThatFits:maximumLabelSize];
        CHANGE_FRAME_HEIGTH(lb, newSize.height);
        CHANGE_FRAME_Y(lb, CGRectGetMaxY([_vTableHeader viewWithTag:TAG_HEADER_V_LOCATION_FLOW].frame)+8)
    }

  {
        UILabel* lb=(id)[_vTableHeader viewWithTag:TAG_HEADER_LB_BROWSE_COUNT];
        CGSize maximumLabelSize = CGSizeMake(1000, lb.frame.size.height);
        NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:lb.font,NSFontAttributeName,nil];
        NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:lb.text attributes:attributesDictionary];
        CGRect newFrame = [string boundingRectWithSize:maximumLabelSize options:NSStringDrawingUsesLineFragmentOrigin context:nil];
        CHANGE_FRAME_WIDTH(lb, newFrame.size.width+2);//HERE: text is clip, why ??
        CHANGE_FRAME_X(lb,  CGRectGetMinX([_vTableHeader viewWithTag:TAG_HEADER_IV_COMMENT_ICON].frame) - lb.frame.size.width -8);
        CHANGE_FRAME_Y(lb, CGRectGetMinY([_vTableHeader viewWithTag:TAG_HEADER_LB_COMMENT_COUNT].frame))
    }
    {
        UIView* v=(id)[_vTableHeader viewWithTag:TAG_HEADER_IV_READ_ICON];
        CHANGE_FRAME_X(v, CGRectGetMinX([_vTableHeader viewWithTag:TAG_HEADER_LB_BROWSE_COUNT].frame) - v.frame.size.width-3)
        CHANGE_FRAME_Y(v, CGRectGetMinY([_vTableHeader viewWithTag:TAG_HEADER_LB_COMMENT_COUNT].frame))
    }

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-25 21:26:03

iOS UI CodeSnippet的相关文章

IOS Ui控件 修改位置和尺寸,代码添加控件

所有的UI控件最终都继承自UIView,UI控件的公共属性都定义在UIView中, UIView的常见属性 UIView *superview; 获得自己的父控件对象 NSArray *subviews; 获得自己的所有子控件对象 NSInteger tag; 控件的ID(标识),父控件可以通过tag来找到对应的子控件 CGAffineTransform transform; 控件的形变属性(可以设置旋转角度.比例缩放.平移等属性) CGRect frame; 控件所在矩形框在父控件中的位置和尺

【腾讯TMQ】解放程序猿(媛)的双手—iOS UI自动化测试

解放程序猿(媛)的双手-iOS UI自动化测试 前言 随着移动互联网时代的蓬勃发展,移动终端的自动化测试也在业界日益活跃,总体来看在Android平台上的自动化工具和实践比较多,但是说到iOS平台无论从自动化工具的数量还是质量上就陡降了.究其原因,无外乎是iOS系统的封闭性,加上相对Android用户的数量少,导致对这个平台系统的自动化进展缓慢,据笔者了解到的情况,很多iOS平台的测试人员还处于纯手工测试模式,自动化程度和Android平台无法相论,更别提和PC端相比了. 然而越是困难的事,越是

ios UI数据库 sqlite小型数据库的增、删、改、查、排序

#import "table.h" @implementation table // 1.创建表 每一列之间用',',如果存在就不创建 create table if not exists t_class( class_id integer primary key autoincrement, class_name varchar, person_count integer default 0) // 1.1// 删除表 drop table if exists t_person //

iOS UI框架

iOS UI 框架          启动引导页面 +  主界面 文件下载 UIFrame

iOS UI Tab开发

iOS UI Tab开发(iOS 8) tab这种样式,类似于单选,可以叫radio-style,这是一个现在主流的layout-design,它让APP内容结构清晰,开发分工逻辑明确,经典的就是微信,时钟等 综述一下: 1.UITabBarController继承UIViewController,是一个ViewController container 2.UITabBarController拥有一个(readonly)的TabBar,TabBar拥有一到多个TabBarItem 3.每一个It

IOS UI多线程 NSThread 下载并显示图片到UIImageView

效果图 @property (weak,nonatomic)IBOutletUILabel *downLabelInfo; @property (weak,nonatomic)IBOutletUIImageView *imageView; @end @implementationViewController - (void)viewDidLoad { [super viewDidLoad]; NSString *url  [email protected]"http://d.hiphotos.b

iOS UI异步更新:dispatch_async 与 dispatch_get_global_queue 的使用方法

GCD (Grand Central Dispatch) 是Apple公司开发的一种技术,它旨在优化多核环境中的并发操作并取代传统多线程的编程模式. 在Mac OS X 10.6和IOS 4.0之后开始支持GCD. 使用GCD的一个理由就是方便.回想一下以前的多线程编程,我们会把异步调用的代码放到另外的一个函数中,并通过NSThread开启新线程来启动这段代码. 这种跳来跳去的流程对于复杂的逻辑简直就是一场灾难.更糟糕的是,调用线程时的环境对异步代码是不可见的,如果我们需要当时的临时变量的话只有

[iOS UI进阶 - 0] Quiartz2D

A.简介 1. 需要掌握的 drawRect:方法的使用 常见图形的绘制:线条.多边形.圆 绘图状态的设置:文字颜色.线宽等 图形上下文状态的保存与恢复 图形上下文栈 1.基本图形绘制* 线段(线宽.线段样式)* 矩形(空心.实心.颜色)* 三角形.梯形等形状* 椭圆\圆* 圆弧* 文字绘制* 图片绘制(pattern)* 图形上下文栈 2.练习(画人) 3.模仿UIImageView 4.自定义checkbox 5.图片裁剪 6.图片水印 7.条纹背景 8.截图     2.概念 Quartz

iOS UI控件7(UITableView)

1.表格(UITableView)与表格控制器(UITableViewController) UITableView是iOS开发中常见的UI控件,本质是一个列表(单列的表格).UITableView允许自由控制行的控件,包括在表格行中添加多个字控件.UITableView继承了UIScrollView,具有UIScrollView的功能,这个UIScrollView主要封装了UITableViewCell单元格控件,因此UITableView默认可以对单元格进行滚动.默认情况下,所有UITabl