2011-01-13 3 views
1

Я довольно новичок в Core Text, но хорошо ладил, однако у меня возникли проблемы с настройкой ширины вкладки.Настроить ширину вкладки основного текста

В настоящее время я использую этот код, который я написал, глядя на документацию и список рассылки:

CFIndex theNumberOfSettings = 1; 

    CFIndex i = 0; 
    CTTextTabRef tabArray[1]; 
    CTTextAlignment align = 0; 
    CGFloat location = 80; 
    for (;i < 1; i++) { 
     tabArray[i] = CTTextTabCreate(align, location, NULL); 
    }  
    CFArrayRef tabStops = CFArrayCreate(kCFAllocatorDefault, (const void**) tabArray, 1, &kCFTypeArrayCallBacks);  
    for (;i < 1; i++) { CFRelease(tabArray[i]); } 

    CTParagraphStyleSetting theSettings[1] = 
    { 
     { kCTParagraphStyleSpecifierTabStops, sizeof(CFArrayRef), &tabStops }, 
    }; 

    CTParagraphStyleRef paragraphStyle = CTParagraphStyleCreate(theSettings, theNumberOfSettings); 
    [self.attributedString addAttribute:(NSString *)kCTParagraphStyleAttributeName 
            value:(id)paragraphStyle 
            range:range]; 

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

Почему это делается?

ответ

2

Я бы предположил, что проблема заключается в том, что все ваши вкладки создаются с одинаковым местоположением. Вероятно, каждый из них должен быть кратным 80, а не ровно 80.

+0

Это именно то, что было, спасибо большое! – Joshua

Смежные вопросы