xcode помещает значение CGPoint x в label.text - PullRequest
1 голос
/ 09 октября 2011

Я пытаюсь поместить значение lastPointX в текст метки, но не работает.В Интерфейсном Разработчике я создаю две метки, метку для значения «x» и метку для значения «y».Пожалуйста, если кто-нибудь знает решение, пожалуйста, ответьте на вопрос.

Спасибо.

Это код и ошибка.

 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
        UITouch *touch = [touches anyObject];
        lastPoint = [touch locationInView:self.view];
        CGFloat lastPointX = lastPoint.x;
        CGFloat lastPointY = lastPoint.y;
        labelx.text == lastPointX;    // <-----  error: Semantic Issue: Invalid operands to binary expression ('NSString *' and 'CGFloat' (aka 'float'))


    }

Ответы [ 3 ]

1 голос
/ 09 октября 2011

Вы пытаетесь присвоить значение с плавающей точкой свойству, которое ожидает строку.Также вы хотите только один "=", а не два.Попробуйте это:

    labelx.text = [NSString stringWithFormat:@"%f", lastPointX];
0 голосов
/ 09 октября 2011

Операнд - это что-то вроде =, == и !=. Причина, по которой вы получаете эту ошибку, заключается в том, что вы не можете сравнить UILabel с CGFloat, что делает операнд недействительным Я думаю, что вы набрали = с ==. Так что измените == на =.

Далее, у вас есть для преобразования lastPointX в строку , как сказано выше. Вы можете сделать это, создав NSString из числа с плавающей точкой lastPointX.

label1.text = [NSString stringWithFormat:@"%0.0f", lastPointX];
0 голосов
/ 09 октября 2011

Вам нужно преобразовать lastPointX в строку с этим:

[NSString stringwithFormat:@"%d", lastPointX];
...