如何在IOS中以编程方式创建TTTAttributedLabel对齐中心

前端之家收集整理的这篇文章主要介绍了如何在IOS中以编程方式创建TTTAttributedLabel对齐中心前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个应用程序,其中我有一个字符串,其中包含前缀为#的标签.

我正在使用TTTAttribute标签添加指向给定字符串中具有前缀#的单词的链接.

当我添加到TTTAttribute标签链接时.它成功添加,当点击它时,我能够在该字符串中获得具有前缀#的所选单词.

但我无法根据字符串长度对齐TTTAttribute标签的中心.

默认属性

attributedLabel.verticalAlignment = TTTAttributedLabelVerticalAlignmentCenter;

在应用链接时无法正常工作.我希望标签对齐中心的长度如下所示.

如果它是正常的TTTAttribute标签而没有应用链接,那么默认的对齐属性正确应用..

这是我用来添加链接代码..

- (void)viewDidLoad
    {
        [super viewDidLoad];
        NSRange matchRange;
        NSString *tweet = @"#MYTWEET,#tweet,#fashion #Share";

        NSScanner *scanner = [NSScanner scannerWithString:tweet];
        if (![scanner scanUpToString:@"#" intoString:nil]) {
            // there is no opening tag
        }
        NSString *result = nil;
        if (![scanner scanUpToString:@" " intoString:&result]) {
            // there is no closing tag
        }
        //@"theString is:%@",result);


        NSArray *words = [tweet componentsSeparatedByString:@" "];

      TTTAttributedLabel *attributedLabel=[[TTTAttributedLabel alloc]initWithFrame:CGRectMake(5,200,320,40)];

      attributedLabel.textAlignment=NSTextAlignmentCenter;

        attributedLabel.text=tweet;

        words = [tweet componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@",0123456789`~!@$%^&*()_-+=.></?;:'* "]];

        for (NSString *word in words)
        {
            if ([word hasPrefix:@"#"])
            {
                //@"word %@",word);

                // Colour your 'word' here
                 matchRange=[tweet rangeOfString:word];

                [attributedLabel addLinkToURL:[NSURL URLWithString:word] withRange:matchRange];

                [tagsarray addObject:word];
            }

        }

        attributedLabel.delegate=self;

       }

    - (void)attributedLabel:(TTTAttributedLabel *)label didSelectLinkWithURL:(NSURL *)url
    {
       //@"result ==== %@",url);

        NSString *webString=[NSString stringWithFormat:@"%@",url];

        NSString *tagstring = [webString stringByReplacingOccurrencesOfString:@"#" withString:@""];
        NSLog(@"Tag String is:%@",tagstring);

        }

我不想调整TTTAttribute标签的框架..

任何建议或帮助将不胜感激..

提前致谢..

解决方法

它非常简单,使用以下代码
attributedLabel.textAlignment = NSTextAlignmentCenter;
原文链接:https://www.f2er.com/iOS/331113.html

猜你在找的iOS相关文章