Я пытаюсь получить содержимое из словаря в UITextView.Словарь содержит молекулярные массы в паре с процентами, например:
24 -> 98
25 -> 1.9
26 -> 0.1
У меня есть NSArray, содержащий ключи из словаря, отсортированные в порядке возрастания.Итак, вот мой код для генерации строки для установки в качестве свойства textField.text:
-(void)detailIsotopes:(NSMutableDictionary *)isotopes withOrder:(NSMutableArray *)order{
NSMutableString *detailString = [[NSMutableString alloc] init];
for (NSNumber *mass in order){
[detailString appendString:[NSString stringWithFormat:@"%d: %f\n", [mass integerValue], [[isotopes valueForKey:[NSString stringWithFormat:@"%@", mass]] floatValue]]];
}
NSLog(@"%@", detailString);
textField.text = detailString;
[detailString release];
}
Это должно создать строку, выглядящую так:
24: 89
25: 1.9
26: 0.1
По некоторым причинам,этот метод никогда ничего не делает при первом запуске.Я вижу вывод NSLog, который выводит правильную строку.Тем не менее, содержимое UITextView не меняется: они остаются как «Lorem ipsum dolor sit amet ...» от Interface Builder.Если я снова запустил метод, он работает, вроде.
UITextView отображает часть текста, а затем просто обрезает половину строки, оставляя только верхние части символов.Если я удаляю содержимое над половиной строки, остальные строки вытягиваются из-под границы: содержимое есть, оно просто перестает отображаться, если вы понимаете, о чем я.Это, кажется, уходит, если я включаю подкачку в представлении.Если я это сделаю, то строка не будет усечена, но UITextView просто перестает показывать какой-либо контент после некоторой точки, хотя полоса прокрутки указывает, что есть еще что (что есть).
Представлениесодержащий UITextView не виден, когда установлено содержимое, если это имеет значение.Отдельный контроллер представления генерирует NSMutableDictionary и NSMutableArray и отправляет их своему делегату, который затем отправляет их представлению, которое должно отображать UITextField, и имеет detailIsotopes: withOrder: метод.Их можно поменять местами с помощью информационной кнопки.
Кто-нибудь понимает, почему это происходит?Спасибо за любой совет, который вы можете дать!