0

ViewControllerで動的に10個のラベルを作成します。特定のラベルをクリックしたときに、クリックしたラベルのタイトルを取得したいのですが、どうすればこれを行うことができますか。

4

3 に答える 3

3

UITapGestureRecognizerを使用して、ユーザーがラベルをクリックしたときを次のように見つけることができます。

UITapGestureRecognizer *singleFingerTap = 
    [[UITapGestureRecognizer alloc] initWithTarget:self 
                                            action:@selector(handleSingleTap:)];
    [myLabel addGestureRecognizer:singleFingerTap];
    [singleFingerTap release];

次に、handleSingleTapメソッドで、タップされているラベルを見つけることができます。

- (void)handleSingleTap:(UITapGestureRecognizer *)recognizer
{
    UILabel *view = (UILabel *)recognizer.view;
    NSString *text = view.text;
}
于 2012-08-07T05:58:57.570 に答える
1

UILabelをサブクラス化でき、-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)eventでは、そのを返すことができますtext property value

于 2012-08-07T05:50:43.450 に答える
0

Tapgesturerecognizerを使用できます。これにより、タップの座標が返されます。

次に、タップの座標が動的に作成されたラベルの1つの範囲内にあるかどうかをテストできます。

次に、UILabelの「text」プロパティを使用してタイトルを取得できます。

于 2012-08-07T05:47:48.847 に答える