当用户点击"返回"按钮时,我想让键盘消失,我被告知要使用
-(BOOL)textFieldShouldReturn:(UITextField *)textField {
[tf resignFirstResponder];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
但是当我点击"返回"按钮时没有任何反应,甚至没有调用该方法.我这样做了
@interface gameOverMenu : UIView
Run Code Online (Sandbox Code Playgroud)
不在ViewController中.我也不使用界面构建器.我该怎么办?
我有一个readwrite int属性类:
@interface PlayScene : UIView
@property (readwrite, assign) int Figure1;
@property (readwrite, assign) int Figure2;
@property (readwrite, assign) int Figure3;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试更改属性的值时,会发生错误:
[self Figure1] = 1;
Run Code Online (Sandbox Code Playgroud)
分配给不允许的Objective-C消息的'readonly'返回结果
问题是什么?
在这段代码中
for (int i=0;i<3;i++) {
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*(i+1), self.yShift+self.rectLen*10);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*(i+1), self.yShift+self.rectLen*10+self.rectLen);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*i, self.yShift+self.rectLen*10+self.rectLen);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*i, self.yShift+self.rectLen*10);
CGContextMoveToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*i, self.yShift+self.rectLen*10);
}
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*4, self.yShift+self.rectLen*10);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*4, self.yShift+self.rectLen*10+self.rectLen);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*3, self.yShift+self.rectLen*10+self.rectLen);
CGContextAddLineToPoint(context, self.xShift+15+self.rectLen*self.width+self.rectLen*3, self.yShift+self.rectLen*10);
[[UIColor cyanColor] setFill];
[[UIColor blackColor] setStroke];
CGContextSetLineWidth(context, 1);
CGContextDrawPath(context, kCGPathStroke);
Run Code Online (Sandbox Code Playgroud)
使用setFill方法的行不起作用.这可能是什么问题?代码位于drawRect:方法中