質問

私は、ユーザーがiPhoneの画面上で署名を描くようにしたいので、私はUIViewのサブクラスを追加し、その「touchesMoved」メソッドにコードを追加します。


-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch = [touches anyObject];
    firstTouch = [touch locationInView:self];

    CGSize mySize = CGSizeMake(5, 5);
    UIGraphicsBeginImageContext(mySize);                                    
    CGContextRef ctx = UIGraphicsGetCurrentContext();                       

    CGContextBeginPath(ctx);                                                
    CGContextSetRGBFillColor(ctx, 1, 0, 0, 1);                              
    CGContextAddRect(ctx, CGRectMake(0, 0, 5, 5));                          
    CGContextFillPath(ctx);                                                 

    UIImage *redRect = UIGraphicsGetImageFromCurrentImageContext();         
    UIGraphicsEndImageContext();                                            

    UIImageView *redRectView = [[UIImageView alloc] initWithImage:redRect]; 
    redRectView.center = CGPointMake(firstTouch.x, firstTouch.y);                               
    [self addSubview:redRectView];                                      

}

私は小さな長方形でそれを描くことだし、それはドットでドットであることが判明しました。それはあまりにも醜いあるので、私は線で署名を描きたいです。しかし、どのようにfirstTouchとlastTouchを区別するために?私は「touchesMoved」メソッドを使用している場合は、私が唯一のタッチポイントを取得することができます。

役に立ちましたか?

解決

<のhref = "http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIResponder_Class/Reference/Reference.html#//apple_ref/occ/instm/UIResponder/" を1として= "nofollowをnoreferrer" REL> UIResponderクラスリファレンスに、あなたも
を実装する必要があります – touchesBegan:withEvent:
– touchesEnded:withEvent:
あなたはこれらのメソッドを実装した後、あなたがパス・ベジェ曲線または他の適切なソリューションを実装するのに十分なデータを得ることができる必要があります。

[編集]、おそらくよりよい解決策コントローラが
を受信するとUIEventオブジェクトから直接接触を得るためにすべきだろう – touchesMoved:withEvent: 通知。また、 GLPaintサンプルコードはにも役立つことを証明します。

他のヒント

GLPaintのサンプルコードは、初心者のための複雑すぎるかもしれとして

、私はこれを見つけますチュートリアルに。ほとんどの初心者のために学ぶことは簡単です。

1の指で書かれた署名は筆記具で書かれたものとは異なることになるだろうことを覚えておいてください。あなたは、あなたが署名を使用しているものを再と思うし、それはあなたがそれをする必要がありますよう結合のかどうかにしたいことがあります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top