Когда я использую файл .txt в своем приложении (даже когда я исправляю его, насколько могу), строки в конце обрезаются. Я хочу, чтобы текст доходил до конца строки (до правой части экрана, как и в первой строке). Стоит ли использовать файл другого типа? Если да, то какие? а если нет, как мне заставить слова доходить до конца строки?
Благодарность
P.s. чистый txt не решает проблему
Я хочу, чтобы это выглядело так
2 ответа
Если я правильно интерпретирую ваш вопрос (на вашем примере), это не вопрос усечения, а вопрос обоснования. Вам нужно «полное выравнивание», то есть растягивание текста слева направо от вставок, чтобы текст отображался как прямоугольный блок текста.
Если да, и вы используете UITextView, то:
Для iOS 6 и более ранних версий UITextView * textView = @ ""; // заменить на свойство, представляющее текст из вашего файла .txt textView.textAlignment = NSTextAlignmentJustified;
Для iOS 7+ (выше не рекомендуется) К сожалению, вам нужно использовать CoreText или UIWebView. См. Этот пост Обоснованное выравнивание в UITextView
Получаете ли вы тот же результат, используя этот код?
NSString *fileName = @"impressum.txt";
NSURL *url = [[NSBundle mainBundle] URLForResource:[fileName stringByDeletingPathExtension] withExtension:[fileName pathExtension]];
NSError *error;
NSAttributedString *attributedString = [[NSAttributedString alloc] initWithFileURL:url
options:@{NSDocumentTypeDocumentAttribute:NSPlainTextDocumentType}
documentAttributes:nil
error:&error];
CGRect paragraphRect = [attributedString boundingRectWithSize:CGSizeMake(_textLabel.frame.size.width), CGFLOAT_MAX)
options:(NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading)
context:nil];
CGRect frame = _textLabel.frame;
frame.size.height = paragraphRect.size.height;
_textLabel.frame = frame;
[_textLabel setAttributedText:attributedString];
Похожие вопросы
Связанные вопросы
Новые вопросы
ios
iOS - мобильная операционная система, работающая на Apple iPhone, iPod touch и iPad. Используйте этот тег [ios] для вопросов, связанных с программированием на платформе iOS. Используйте связанные теги [target-c] и [swift] для проблем, характерных для этих языков программирования.