2016-08-27 2 views
0

お時間をいただきありがとうございます。 screenshot1すべての行のテキストを複数行ラベルの中央に整列させる方法はありますか?

screenshot1

私は複数行のラベル(.textAligement = NSTextAlignmentCenter & .lineBreakMode = NSLineBreakByWordWrapping)でそれをやっている

、そしてこれまでのようになります。ここでは

は、最終的な効果です。ここ)

は、サンプルコードである:

NSArray *detailTimePointsArray = @[@"08:00",@"08:05",@"08:10",@"08:15",@"08:20", 
            @"08:25",@"08:30",@"08:35",@"08:40",@"08:45", 
            @"08:50",@"08:55",@"09:00",@"09:05",@"09:10", 
            @"09:15",@"09:20",@"09:25",@"10:00",@"10:05", 
            @"10:10",@"10:15",@"10:20",@"10:25",@"10:35", 
            @"10:40",@"10:45",@"10:50",@"10:55",@"11:25"]; 

UILabel *detailTimeInfoLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds))]; 
detailTimeInfoLabel.numberOfLines = 0; 
detailTimeInfoLabel.textAlignment = NSTextAlignmentCenter; 
detailTimeInfoLabel.lineBreakMode = NSLineBreakByWordWrapping; 

detailTimeInfoLabel.text = [detailTimePointsArray componentsJoinedByString:@" "]; 

[self addSubview:detailTimeInfoLabel]; 

UICollectionViewでそれを行う方が良いかもしれませんが、ラベルや他のいくつかのコントロールをもっと軽量にすることは可能でしょうか?

ご協力いただきまして誠にありがとうございます。

+0

あなたはあなたのコードをshwo –

+0

これらの文字列の間にスペーサー文字列を追加しようとしましたか? –

+0

@TejaNandamuri「それらの文字列の間にスペーサー文字列を追加する」方法を知らないと申し訳ありません、私に方法を示すことができますか? – CoderWang

答えて

0

達成しようとするものは、テキストの正当化と呼ばれます。 UILabelはそれをサポートしていません。

サードパーティのテキストキットを試すこともできますが、私は個人的にはUICollectionViewとします。それは残酷な気分かもしれませんが、少なくともセットアップと管理は容易です。

+0

ええ、私はあなたに同意します、UICollectionViewは長期的にはより良い解決策です。たださまよう:) – CoderWang

関連する問題