1

lastPointX の値をラベル テキストに入れようとしましたが、うまくいきません。Interface Builder で、「x」値のラベルと「y」値のラベルの 2 つのラベルを作成します。どなたか解決策をご存知の方、質問にお答えください。

ありがとう。

これがコードとエラーです。

 -(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'))


    }
4

3 に答える 3

1

文字列が必要なプロパティに float 値を代入しようとしています。また、「=」は 2 つではなく 1 つだけ必要です。これを試して:

    labelx.text = [NSString stringWithFormat:@"%f", lastPointX];
于 2011-10-09T12:24:20.197 に答える
0

オペランドは=、 、==のようなもの!=です。そのエラーが発生する理由は、UILabel を CGFloat と比較できないため、オペランドが無効になるためです。=とタイプミスしたと思います==。を に変更===ます。

次に、 notme が言ったように、lastPointX を文字列に変換する必要があります。これを行うには、lastPointX float から NSString を作成します。

label1.text = [NSString stringWithFormat:@"%0.0f", lastPointX];
于 2011-10-09T12:48:26.630 に答える
0

これを使用して、lastPointX を文字列に変換する必要があります。

[NSString stringwithFormat:@"%d", lastPointX];
于 2011-10-09T12:24:21.857 に答える