0

ラベルのテキストを変更し、ユーザーに画面上の必要な場所に移動させたい(現在作業中)(ユーザーは「テキストを追加」を押します)。

彼らが好きな場所に配置したら。「テキストの追加」ボタンで、ユーザーが移動できる新しいラベルを作成したい。これらをオンザフライで作成し、ジェスチャ認識機能が新しいラベルで機能することを確認する方法がわかりません。提案をありがとう。

これは私が今持っているものです、、、まだうまくいきません。


-(IBAction)addText:(id)sender
{
    textView.hidden=YES;


    labelShirt.text= textField.text;
    [textField resignFirstResponder];

    [self addTextButtonPressed];

}



-(void)addTextButtonPressed
{
// CGRect *textFrame =
    // myInitialFrame is a CGRect you choose to place your label
    UILabel *myNewLabel = [[UILabel alloc] initWithFrame:CGRectMake(50,50,100,100)];
    UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self
                                                                                           action:@selector(labelMoved:)];
   myNewLabel.text =textField.text;

[self.view addSubview:myNewLabel];
}

-(void)labelMoved:(UIPanGestureRecognizer *)sender
{
    CGPoint translation = [sender translationInView:self.view];
    sender.view.frame = CGRectOffset(sender.view.frame, translation.x, translation.y);
}
4

1 に答える 1

1
// The action that is added to your add text button
-(void)addTextButtonPressed
{
    // myInitialFrame is a CGRect you choose to place your label
    UILabel *myNewLabel = [[UILabel alloc] initWithFrame:myInitialFrame];
    UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self
                                                                                           action:@selector(labelMoved:)];
    myNewLabel.text = @"My initial text";
    // EDIT
    [self.view addSubview:myNewLabel];
    [myNewLabel addGestureRecognizer:panGestureRecognizer];
}

-(void)labelMoved:(UIPanGestureRecognizer *)sender
{
    CGPoint translation = [sender translationInView:self.view];
    sender.view.frame = CGRectOffset(sender.view.frame, translation.x, translation.y);
}

問題を解決するのに十分かどうかはわかりませんが、さらに説明が必要な場合はコメントしてください。

于 2013-02-01T00:39:49.940 に答える