Я предполагаю, что mathsPracticeTextArray
объявлен как NSArray*
или NSMutableArray*
, и в этом случае присвоение ему NSString*
(как это происходит в -(void)loadText
) вызовет предупреждение, которое вы упомянули в заголовке.
Предупреждение - ключ к пониманию того, что происходит: NSString отличается от NSArray, и вы не можете рассматривать одно как другое. Поскольку вы назначаете объекту неправильный тип переменной, многие сообщения, которые вы отправляете объекту, не могут быть обработаны, и ваше приложение не будет работать.