2つのCGRectの比較


95

ビューのフレームが特定のCGRectと等しいかどうかを確認する必要がありました。私はそれを次のようにしてみました:

CGRect rect = CGRectMake(20, 20, 20, 20);
if (self.view.frame == rect)
{
    // do some stuff
}

しかし、と言うエラーが出ましたInvalid operands to binary expression('CGRect' (aka 'struct CGRect') and 'CGRect')。2つCGRectのを単純に比較できないのはなぜですか?

回答:





2

Swiftでは、単に==or !=演算子を使用するとうまくいきます:

    let rect = CGRect(x: 0, y: 0, width: 20, height: 20)

    if rect != CGRect(x: 0, y: 0, width: 20, height: 21) {
        print("not equal")
    }

    if rect == CGRect(x: 0, y: 0, width: 20, height: 20) {
        print("equal")
    }

デバッグコンソールの出力:

not equal
equal
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.