让 UIImagePickerView 在 iPad 应用程序的 UITableView 中工作

Posted

技术标签:

【中文标题】让 UIImagePickerView 在 iPad 应用程序的 UITableView 中工作【英文标题】:Getting the UIImagePickerView work inside a UITableView in an iPad app 【发布时间】:2011-11-03 08:42:58 【问题描述】:

我有一个小问题。我正在开发一个 iPad 应用程序,并且我有一个 UItableView。在那张桌子里面,每个单元格都有完美位置的按钮。现在,当用户单击这些按钮时,我希望打开一个 UIImagePickerView 以便他可以选择图像并将其设置在那里。

现在,我正在使用 UIPopOver 的对象打开 imagePicker,这就是我遇到问题的地方。我需要 popOver 指向点击它的按钮的完美位置。假设表格中第 3 行的按钮调用它,那么 popOver 应该相应地打开。

我正在使用这段代码打开 popOver 并设置它的框架:

 UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
    imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    imagePicker.delegate = self;
 CGRect fr = tblView.frame;

    fr.origin.x = fr.origin.x + btnActive.frame.origin.x;
    fr.origin.y = fr.origin.y + btnActive.frame.origin.y;
    fr.size = CGSizeMake(320, 480);


    popOver = [[UIPopoverController alloc] initWithContentViewController:imagePicker];
    //self.popoverController = popOver;          
    popOver.delegate = self;
    [popOver presentPopoverFromRect:btnActive.frame 
                             inView:tblView
           permittedArrowDirections:UIPopoverArrowDirectionAny 
                           animated:YES];

    [imagePicker release];

现在,发生的情况是,每当我单击按钮的行时,popOver 仅指向第一个可见行。当用户单击 TableView 中的任何这些按钮时,我调用了一个名为 - (void) setImage: (id) sender 的方法。我将按钮 btnActive 分配如下:

 UIButton *btn = (UIButton *)sender;
 btnActive = btn;

我完美地获得了按钮的标签,但我无法在完美的位置获得 popOver 点。我猜那是因为每次 btnActive 的帧都保持不变。我可能错了。请帮我解决这个问题。提前一百万谢谢!

【问题讨论】:

【参考方案1】:

tblView 不是按钮的超级视图。尝试使用cell.contentViewcell,具体取决于您如何布置 UITableViewCell 子类视图层次结构。您必须确定在哪个单元格中单击了按钮。

[popOver presentPopoverFromRect:btnActive.frame 
                         inView:cell.contentView
       permittedArrowDirections:UIPopoverArrowDirectionAny 
                       animated:YES];

【讨论】:

以上是关于让 UIImagePickerView 在 iPad 应用程序的 UITableView 中工作的主要内容,如果未能解决你的问题,请参考以下文章

在线安装ipa,超链接下载ipa

iOS 企业级 IPA 重签名

Flutter ios打包 ipa

iOS:我可以在APP商店中在不同国家分发不同的.ipa文件吗

iOS 如何缩小打包项目ipa大小

为啥 iPhone .app 文件比 .ipa 文件大得多?