ハイ、
Objective Cでタッチすると色が変わるものを作成するにはどうすればよいですか。画面全体をタッチ可能にして、指で何かを描きたいです。どこに触れても色が変わるはずです。それを行う最良の方法は何ですか?タッチの座標を取得するために、すでにtouchesMovedを実装しています。
UITouch * touch = [touches anyObject]; CGPoint pos = [touch locationInView: [UIApplication sharedApplication].keyWindow];
サンプルコードはどれもありがたいです。
前もって感謝します、
次のコードがありますが、触れた場所には何も出力されません
-(void)setPaths:(NSMutableArray *)paths
{
self.paths =[[NSMutableArray alloc]init];
}
-(void)setAPath:(UIBezierPath *)aPath
{
self.aPath=[UIBezierPath bezierPath];
}
-(void) drawRect:(CGRect)rect{
[super drawRect:rect];
[[UIColor blackColor] set];
for (UIBezierPath *path in paths) {
[path stroke];
}
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
[self.paths addObject:self.aPath];
//self.aPath=[UIBezierPath bezierPath];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch * touch = [touches anyObject];
CGPoint pos = [touch locationInView: [UIApplication sharedApplication].keyWindow];
[self.aPath addLineToPoint:[touch locationInView:self]];
// [self.aPath addLineToPoint:[touch locationInView:touch]];
NSLog(@"Position of touch: %.3f, %.3f", pos.x, pos.y);
}
@end