UIImage в конце текста UILabel - PullRequest
       37

UIImage в конце текста UILabel

3 голосов
/ 31 августа 2010

как найти координату последнего символа в UILabel, если в нем более 1 строки текста? Я хотел бы добавить изображение в конце текста.

Ответы [ 3 ]

0 голосов
/ 31 августа 2010

Вы можете использовать этот код, чтобы получить высоту вашего текста в соответствии с шириной и содержанием.

Попробуйте этот код и вставьте изображение на заданную высоту.

-(float)getHeightByWidth:(NSString*)myString:(UIFont*)mySize:(int)myWidth

{

    CGSize boundingSize = CGSizeMake(myWidth, CGFLOAT_MAX);
    CGSize requiredSize = [myString sizeWithFont:mySize constrainedToSize:boundingSize lineBreakMode:UILineBreakModeWordWrap];  
    return requiredSize.height;
}

СЧАСТЛИВОЕ КОДИРОВАНИЕ ...

0 голосов
/ 31 августа 2010

sizeWithFont не заботится о UILabel ребрах.

0 голосов
/ 31 августа 2010

Не совсем, но вы можете выяснить, насколько высока должна быть ваша метка, чтобы вместить ваш текст, используя -[NSString sizeWithFont:constrainedToSize:lineBreakMode:], и как только у вас будет высота, вы сможете оттуда работать, зная правый край метка и высота, как разместить изображение в качестве подпредставления представления контейнера.

Т.е., вы можете добавить его сразу справа от метки в нижней части метки, и в этом случае добавить его как подпредставление, где его ось x является правым краем метки (ось x метки + width), и там, где у imageview есть ось y, установленная на ось y метки + высота метки, минус размер шрифта должен поставить его в нужное место, однако вы можете захотеть вместо использования шрифта метки свойство height в последнем расчете, чтобы использовать вместо него высоту просмотра изображения, чтобы оно находилось на одном уровне с нижней частью метки и нижней частью представления изображения ... трудно сказать, не видя макета.

Этого должно хватить, чтобы продолжить.

...