• ios-UILabel居中随内容自适应,后面的控件跟在其后


    如图绿蓝框所示,UILabel显示名字,Label框随名字长短而自适应,后面的性别图片跟在其后显示

    分两部分:第一部分先布局

     //名字

        self.nameLab = [[UILabel alloc]initWithFrame:CGRectMake(0, 200, SCREEN_WIDTH, 20)];

        self.nameLab.textColor = [UIColor whiteColor];

        self.nameLab.font = [UIFont fontWithName:@"Helvetica-Blod" size:19];

        self.nameLab.textAlignment = NSTextAlignmentCenter;

        self.nameLab.backgroundColor = [UIColor clearColor];

        [self.bgV addSubview:self.nameLab];

        

        //性别

        self.sexImageView = [[EGOImageView alloc]init];

        [self.bgV addSubview:self.sexImageView];

    第二部分解析得到数据后,根据内容自适应宽度,再重设性别图片的位置

    self.nameLab.text =  self.memberNmStr;//名字

            [self.nameLab sizeToFit];

            

            CGSize size = [self.nameLab.text sizeWithFont:[UIFont systemFontOfSize:19] constrainedToSize:CGSizeMake(SCREEN_WIDTH, 20) lineBreakMode:NSLineBreakByWordWrapping];

            

            CGRect r1 = self.nameLab.frame;

            r1.size.width = size.width;

            self.nameLab.frame = r1;

            self.nameLab.center = CGPointMake(self.bgV.frame.size.width/2, 130+10);

            [self.sexImageView setFrame:CGRectMake(self.nameLab.frame.size.width + self.nameLab.frame.size.width + 10, 130, 20, 20)];

            

            CGRect r2 = self.sexImageView.frame;

            r2.origin.x = self.nameLab.frame.origin.x + 10 + self.nameLab.frame.size.width;

            self.sexImageView.frame = r2;

  • 相关阅读:
    Laravel 安装&基本介绍
    centos7 vi 打开文件 中文乱码问题记录
    Linux-CentOS7下安装LNMP环境笔记
    PHP Socket or TCP 连接错误信息显示乱码问题处理
    MySQL5.7的json数据格式的问题
    JS格式化显示json数据
    Go学习笔记之框架Beego安装
    ThinkPHP框架使用笔记
    郁闷了几天的问题终于解决了
    eclipse安装spring插件
  • 原文地址:https://www.cnblogs.com/xm5mao/p/3972881.html
Copyright © 2020-2023  润新知