1

Iphone アプリケーションで、ラベル テキストにスペースを追加して空のスペース (サイズで指定) を作成する方法はありますか。この背後にあるアイデアは、ラベルに 2 番目の文字列を追加したいが、固定サイズで区切られているということです。

このようなもの:

//first we append a string containing only spaces to create a width of 100
label1.text = [label1.text stringByAppendingString:[self getSpaceStringByWidth:100 font:label1.font];
//then we append the second string
label1.text = [label1.text stringByAppendingString:@"something else to append"];


-(NSString*)getSpaceStringByWidth:(CGFloat)width andFont:(UIFont*)font
{
    //This method takes the width needed and the font used and returns a string containing only empty spaces that will create an empty space before appending the second string
}
4

3 に答える 3

0

このように現在のサイズを取得する必要があります..

NSDictionary *attr = [NSDictionary dictionaryWithObject:[label1 font]
                                                 forKey:NSFontAttributeName];
NSSize stringSize = [label1.text sizeWithAttributes:attr];
NSSize sizeOfSpace = [@" " sizeWithAttributes:attr];

次に、好きなようにサイズを処理し、ループして、満足するまで他の人が説明するようにスペースを追加します.

于 2013-01-28T15:44:54.877 に答える
0

たぶんこれが役立ちます:

NSString *concatenateString = [[myString1 stringByAppendingString:@" "] stringByAppendingString:myString2];

EDIT(@AKVの回答を見た後)

for(int i=0; i<number ;i++){
   string=[string stringByAppendingString:@" "];
}

NSString *concatenateString = [[myString1 stringByAppendingString:string] stringByAppendingString:myString2];
于 2013-01-28T15:35:18.077 に答える
0

基本はどうでしょう

for(int i=0; i<number ;i++){
   string=[string stringByAppendingString:@" "];
}
于 2013-01-28T15:34:16.907 に答える