我需要检查我的View框架是否等于给定的CGRect。我试着这样做:CGRectrect=CGRectMake(20,20,20,20);if(self.view.frame==rect){//dosomestuff}但是,我收到一条错误消息,提示二进制表达式的操作数无效('CGRect'(又名'structCGRect')和'CGRect')。为什么我不能简单地比较两个CGRect? 最佳答案 使用这个:if(CGRectEqualToRect(self.view.frame,rect)){//dosomestuff}
我希望能够调试C结构,而不必显式键入它们所包含的每个属性。即我希望能够做这样的事情:CGPointcgPoint=CGPointMake(0,0);NSLog(@"%@",cgPoint);显然'%@'不起作用,因此问题。 最佳答案 你可以试试这个:NSLog(@"%@",NSStringFromCGPoint(cgPoint));有许多函数providedbyUIKit将各种CG结构转换为NSString。它不起作用的原因是因为%@表示一个对象。CGPoint是一个C结构(CGRects和CGSizes也是如此)。
我希望能够调试C结构,而不必显式键入它们所包含的每个属性。即我希望能够做这样的事情:CGPointcgPoint=CGPointMake(0,0);NSLog(@"%@",cgPoint);显然'%@'不起作用,因此问题。 最佳答案 你可以试试这个:NSLog(@"%@",NSStringFromCGPoint(cgPoint));有许多函数providedbyUIKit将各种CG结构转换为NSString。它不起作用的原因是因为%@表示一个对象。CGPoint是一个C结构(CGRects和CGSizes也是如此)。