как установить текст UItextlabel из другого объекта - PullRequest
0 голосов
/ 12 сентября 2011

Я устанавливаю NSString внутри NSobject, в котором я хочу передать значение в uitableviewcell UIlable в другом представлении?Я задумываюсь над тем, какой код должен был бы установить это правильно, так как я чувствую, что делаю правильные вещи, но это просто не меняет текст в метке ..

//inside tableview/forRowAtIndexPath
    //load VehicleSearchObjects
    VehicleSearchObject *vehicleSearchObject = [[VehicleSearchObject alloc] init];

    if(indexPath.section == 0)
    {
        if(indexPath.row == 0)
        {
            UILabel *label1;
            label1 = (UILabel *)[cell viewWithTag:1];
            label1.text = @"Manufacture";

            UILabel *label2;
            label2 = (UILabel *)[cell viewWithTag:2];
            label2.text = [vehicleSearchObject manufacturerString]; //this is where I try to set the text... but nothing is happening, am I doing it right or should I be doing something else?

Ответы [ 3 ]

0 голосов
/ 12 сентября 2011

Вы инициализируете vehicleSearchObject каждый раз, когда вызывается метод. Я надеюсь, что manufacturerString не nil. Кроме того, UILabel может не иметь памяти, если вы ее не выделяете. Попробуйте сделать это @property. Вы можете проверить наличие памяти в консоли отладчика.

РЕДАКТИРОВАТЬ: объявите UILabel * label1 и напишите @property(nonatomic,retain) UILabel * label1; в своем интерфейсе или .h файл и @synthesize label1; в своей реализации или .m файл. Выделите / инициализируйте метки в ваших UIView методах инициализации, таких как viewDidLoad: и т. Д. Это выделяет память для label1 с областью действия для всех функций. Теперь не пишите UILabel *label1; снова. Просто продолжайте устанавливать текст в соответствии с вашими требованиями. Аналогично для label2.

0 голосов
/ 12 сентября 2011

Возможно, вы захотите попробовать [UILabel setText: (NSString)] вместо UILabel.text = (String).

0 голосов
/ 12 сентября 2011

Если изменение текста label1 работает, то я хотел бы выяснить, действительно ли метка, к которой вы пытаетесь получить доступ, действительно имеет тег 2, и если это правда, если manufacturerString действительно что-либо возвращает .

...