-1

多くのコンテンツがUIScrollView含まれてUITextFieldおり、ユーザーが番組のUILabel1 つを編集し始めると、 .UITextFieldUITableView

私の問題は、ユーザーがそれを非表示にUIScrollViewする以外にクリックしたときと、ユーザーがクリックしたときにセル内のコンテンツを表示する必要があることです。UITableViewtableviewtableviewtableviewtextfield

tableviewは のサブビューであることを思い出してくださいscrollview

私はこのプログラミングに慣れていないので、助けてください。

4

3 に答える 3

1
- (void)viewDidLoad
{
    [super viewDidLoad];

  UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideSubView)];

// prevents the scroll view from swallowing up the touch event of child buttons
  tapGesture.cancelsTouchesInView = NO;    

  [ScrollView addGestureRecognizer:tapGesture];

  [tapGesture release];

}

// method to hide SubView when user taps on a scrollview
-(void)hideSubView
{
    if (self.SubView.isHidden == NO)
        self.SubView.hidden = YES;
}
于 2013-02-21T08:15:04.420 に答える
1

それは良いユーザー インターフェイスではありません。

UITableViewに包み込む必要がありますPopOver。ここに与えられたステップバイステップのプロセスがあります:iPadプログラミングでUIPopoverControllerを使用する方法は?

編集:このメソッドを使用して表示するだけpopOverです。

- (void) showPickerPopOverAction
{
    UIViewController *pickerPopOver = [[UIViewController alloc] init];
    pickerPopOver.view = yourTableView;
    pickerPopOver.contentSizeForViewInPopover = CGSizeMake(300, 210);
    UIPopoverController *pickerPopOverController = [[UIPopoverController alloc]initWithContentViewController:pickerPopOver];
    [pickerPopOverController presentPopoverFromRect:yourTextField.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}

問題を自動的に解決します。

于 2013-02-21T07:58:48.307 に答える
0

ポップオーバーは、iPhone や iPod ではなく iPad でのみ利用できます

于 2013-02-21T08:41:53.800 に答える