drawRect方式画标签

if ([_info[@"cashBack"] floatValue] > 0) {

y += 10.0;

// 离店返金额说明

UILabel *cashBackLabel = [TRIPLabelFactory createLabelWithText:[[NSString stringWithFormat:@"返¥%0.2f",[_info[@"cashBack"] floatValue]/100.0] hotelPriceFormat]

color:LABEL_RED

fontSize:10

labelStyle:LabelStyleSolid];

CGSize labelTextSize = [cashBackLabel.text calculateSizeWithFont:cashBackLabel.font];

text = [[NSString stringWithFormat:@"入住离店后再返¥%0.2f信用住酒店红包",[_info[@"cashBack"] floatValue]/100.0] hotelPriceFormat];

size = [text calculateSizeWithFont:TEXT_FONT constrainedToSize:CGSizeMake([UIScreen mainScreen].bounds.size.width-15.0-5.0-cashBackLabel.width, 1000)];

if (!onlyHeight) {

// 画标签

[LABEL_RED set];

CGContextRef context5 = UIGraphicsGetCurrentContext(); //设置上下文

CGContextSetLineWidth(context5, 1.0);

CGContextSetRGBStrokeColor(context5, 0.8, 0.1, 0.8, 1);

CGContextFillRect(context5, CGRectMake(x, y+(size.height-cashBackLabel.height)/2.0, cashBackLabel.width, cashBackLabel.height));

// 画标签文案

[[UIColor whiteColor] set];

[cashBackLabel.text drawInRect:CGRectMake(x+(cashBackLabel.width-labelTextSize.width)/2.0, y+(size.height-cashBackLabel.height)/2.0, cashBackLabel.width, cashBackLabel.height) withFont:cashBackLabel.font];

[TITLE_TEXT_COLOR set];

[text drawInRect:CGRectMake(x+cashBackLabel.width+5.0, y, size.width, size.height) withFont:TEXT_FONT];

}

y += size.height;

}

时间: 2024-10-07 02:35:21

drawRect方式画标签的相关文章

利用图形窗口分割法将极坐标方程:r=cos(θ/3)+1/9用四种绘图方式画在不同的窗口中

利用图形窗口分割法将极坐标方程:r=cos(θ/3)+1/9用四种绘图方式画在不同的窗口中. 解:MATLAB指令: theta=0:0.1:6*pi;rho=cos(theta/3)+1/9; >> polar(theta,rho) >> >> plot(theta,rho) >> semilogx(theta,rho) >> grid >> hist(rho,15) 结果分别如下图: 图1 图2 图3 图4

用Jquery动态append方式加入标签时Css样式丢失的解决方法

一般在Jquery中会用下面的方式来添加新标签: var obj = "<fieldset data-role='controlgroup' data-type='vertical' data-role='fieldcontain'> <input id='menu0" type='checkbox'/><label for='menu0'> 复选框 </label> </fieldset>";  //按个人要求拼接

eclipse编码方式、标签语言获取根目录

1.设置工作空间编码方式: window-->preference-->general -->workspace 中设置Text file encoding 把编码方式改为UTF-8 2.设置jsp文件的编码方式,默认是latin-1,是不支持中文的.window-->preferences-->web--> JSP Files 中选择Encoding,把编码方式改为UTF-8. 3.修改常用文件编码方式window-->preferences-->gene

两种方式自定义标签工具栏

在AppDelegate.m中设置根视图控制器 MainTabbarController.h @interface MainTabbarController : UITabBarController { UIImageView *_selectedImg; UIView *_tabbarView; } - (void)showtabbar:(BOOL)show; MainTabbarController.m #import "MainTabbarController.h" #impor

Spring中List、Set、Map、数组注入方式中标签的使用

在这里不多说,直接进入正题,在使用Spring时,如果对象实例含有数据或集合属性时,那我们该如何去配置Spring.xml呢?我们就需要property下的子元素list,set,map等子元素.示例为: <bean> <property> <list>--</list> or <set>--</set> or <map>--</map> </property> </bean> [转载使

unity3d 使用GL 方式画线

这个是画线部分 private Vector3[] linePoints; public int m_LineCount; public int m_PointUsed; public void RenderPath() { GL.Begin(GL.LINES); for (int i = 0; i < m_LineCount - 1; ++i) { GL.Vertex(GetPoint(i)); GL.Vertex(GetPoint(i + 1)); } GL.End(); } 但是这个画线部

通过字符串方式添加标签,并需要注册onclick(flag)这种带参数经常会报对象未定义的错误

var jsonString = "[{'id':'PVG','CityName':'上海','Cname':'浦东国际机场'},{'id':'SHA','CityName':'上海','Cname':'虹桥国际机场'}]"; strData = eval('(' + jsonString + ')'); var ajaxtext = ""; for (i = 0; i < strData.length; i++) { var id = "'&quo

表单设计中标签的布局方式有哪些

表单设计的标签本质上是一个与用户对话的起点,了解表单设计的标签的设置规则后,需要关注标签的布局方式,因为网页表单设计是影响用户如何回答问题的关键.表单设计标签的布局方式主要包含三种,测试数据展示,用户耗时从少到多的分别是顶对齐标签.右对齐标签.左对齐标签.下面介绍表单设计中标签的布局方式有哪些?1.顶对齐标签 表单设计的顶对齐的布局方式,标签和输入框的位置非常靠近,是用户阅读和填写的时间话费少,顶对齐标签为填写表单提供了清晰的完成路径,比左对齐标签方式快.此外,顶对齐标签还提供了大量的横向空间,

自定义布局RelativeLayout 画网格线

在Android中画线必须由一个载体,要么是一个控件,要么是一个布局,其实他们都是继承自View,通过自定义控件或布局的方式画线是最常见的.下面的小例子实现了在自定义RelativeLayout中画网格线 代码下载:http://download.csdn.net/detail/yxg190221/7589287 自定义控件代码: </pre><pre name="code" class="java">package layout.layou