ios 怎么让label中的内容自适应label的大小

ios 怎么让label中的内容自适应label的大小,第1张

,同时设上wordbreak 和 wordrape 属性 拼写错了 但估计能看明白解决方案Label不会自动换行只能按内容的多少然后根据字符大小自己设置高度,但是因为输入的随机性比如输入标点或者中英文字符,长度不一,所以判断高度的设置非常难控制建议LZ换种方法保存内容解决方案好像label不会

如果你用系统cell的 detailtext 貌似是不能设置位置的,他就是固定的位置。
你得自己用一个 继承于 UITableViewCell 的类,来写自己的cell
然后在 那个
-(UITableViewCell )table……………… (UITableView 的delegate这个方法中)
{
static NSString …………;
UITableViewCell cell = ………………; //这里的 UITableViewCell 换成你自己写的cell
if (nil == cell)
cell = [UITableViewCell alloc]init ………………; //这里的 UITableViewCell 也换成你自己写的cell
//后面不变
}
你自定制之后,自己设置detailtext

如果是想要设置label大小不能改变的话可以选中LABEL,右键,有个锁定控件的点击一下就可以了 ,textbook也是如此。如果是想让原本不能改变大小的控件有改变大小的功能,可以把该控件的autosize属性值设置为false就可以设置大小了,textbox也一样,如果textbox还要输入多行文字的话,还要选中multiline 为true

您好,很高兴能帮助您,
下面分两种情况考虑:1、UILabel宽度不变,根据字体多少,自动调整UILabel的高度,并折行显示。代码如下:label = [[UILabel alloc] initWithFrame:CGRectMake(0, 10, 300, 20)];
labelfont = [UIFont boldSystemFontOfSize:200f]; //UILabel的字体大小
labelnumberOfLines = 0; //必须定义这个属性,否则UILabel不会换行
labeltextColor = [UIColor whiteColor];
labeltextAlignment = NSTextAlignmentLeft; //文本对齐方式
[label setBackgroundColor:[UIColor redColor]];
//宽度不变,根据字的多少计算label的高度
NSString str = @"可以更改此内容进行测试,宽度不变,高度根据内容自动调节";
CGSize size = [str sizeWithFont:labelfont constrainedToSize:CGSizeMake(labelframesizewidth, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];
//根据计算结果重新设置UILabel的尺寸
[label setFrame:CGRectMake(0, 10, 300, sizeheight)];
labeltext = str;
[selfview addSubview:label]; 复制代码2、UILabel高度不变,根据字体多少,自动调整UILabel的宽度,并折行显示代码如下
label = [[UILabel alloc] initWithFrame:CGRectMake(0, 10, 20, 20)];
labelfont = [UIFont boldSystemFontOfSize:200f]; //UILabel的字体大小
labelnumberOfLines = 0; //必须定义这个属性,否则UILabel不会换行
labeltextColor = [UIColor whiteColor];
labeltextAlignment = NSTextAlignmentLeft; //文本对齐方式
[label setBackgroundColor:[UIColor redColor]];
//高度固定不折行,根据字的多少计算label的宽度
你的采纳是我前进的动力,还有不懂的地方,请你继续“追问”!
如你还有别的问题,可另外向我求助;答题不易,互相理解,互相帮助!

你先选中你拖的这个label控件,右键 点击属性,在右侧属性列表中点击“”Font“”,
“”Font“”中“”Size“”控制大小,“”ForeColor“”控制颜色,纯手打,请采纳

用setFont(Font
font)这个方法
里边传一个Font的对象,在实例Font的时候可以定义字体,字型和字号,给你写个例子吧:
JLabel
label1=new
JLabel("开始");
label1setFont(new
Font("宋体",FontBOLD,
16));
意思就是设置JLabel里的字为宋体、加粗、16像素
如果不清楚可以拆开写:
JLabel
label1=new
JLabel("开始");
Font
font
=
new
Font("宋体",FontBOLD,
16);
label1setFont(font);

import javaawtContainer;
import javaawteventActionEvent;
import javaawteventActionListener;
import javaxswingButtonGroup;
import javaxswingJFrame;
import javaxswingJPanel;
import javaxswingJRadioButton;
import javaxswingJTextField;
public class Choice extends JFrame{
private JRadioButton button1 = null;
private JRadioButton button2 = null;
private JTextField field1 = null;
private JTextField field2 = null;
public Choice(){
setSize(500,500);
setLocation(100,50);
setDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
setContentPane(getPanel());
setVisible(true);
}
private Container getPanel() {
JPanel panel = new JPanel();
//控制比如按钮的位置的话,把按钮所在的面板(按钮添加到哪里,哪里的设置为null)布局设置为null,
panelsetLayout(null);
button1 = new JRadioButton("A");
button2 = new JRadioButton("B");
ButtonGroup group = new ButtonGroup();
field1 = new JTextField();
field2 = new JTextField();
groupadd(button1);
groupadd(button2);
//给按钮添加点击事件的监听
button1addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
field1setText("选择了:A");
field2setText("选择了:A");
}
});
button2addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
field1setText("选择了:B");
field2setText("选择了:B");
}
});

//设置按钮在面板的为主,第一是左上角的x坐标,第二个是左上角y左边,第三个是控件宽度,第四个是高度
button1setBounds(60, 10, 40,40);
button2setBounds(100, 10, 40,40);
field1setBounds(60, 50, 80,20);
field2setBounds(60, 80, 80,20);
paneladd(button2);
paneladd(button1);
paneladd(field2);
paneladd(field1);
return panel;
}
public static void main(String[] args) {
new Choice();
}
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13329361.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-16
下一篇 2023-07-16

发表评论

登录后才能评论

评论列表(0条)

保存