3

好的,所以我有两个UIImageViews在 a 的子视图中UIScrollView。我想要的是,当用户在屏幕上的某个位置滚动并单击表格(屏幕上的按钮)时,会出现一个弹出窗口(UIImageview)。我想要的是图像视图位于center. 这是我的代码:

    - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    NSLog(@"%f scrollView Last X", scrollView.contentOffset.x);
    NSLog(@"%f scrollView Last y", scrollView.contentOffset.y);

    //This is for the orders
    self.roundFrame = [[UIImageView alloc] initWithFrame:CGRectMake(190 + scrollView.contentOffset.x ,120 + scrollView.contentOffset.y, 385, 280)];
    self.roundFrame.image = [UIImage imageNamed:@"frame_round_edge.png"];
    [_roundFrame setUserInteractionEnabled:YES];

    //This is for the split Table
    self.roundFrameForSplit = [[UIImageView alloc] initWithFrame:CGRectMake(190 +  scrollView.contentOffset.x, 120 + scrollView.contentOffset.y, 370, 300)]; // 362
    self.roundFrameForSplit.image = [UIImage imageNamed:@"frame_round_edge.png"];
    [_roundFrameForSplit setUserInteractionEnabled:YES];
}

但发生的情况是,大多数时候它会出现在中心,但有时它不会出现在中心。我不知道如何解决这个问题。有谁知道如何解决这一问题?谢谢您的帮助!

编辑:对于任何在未来寻找这个问题的答案的人,这里就是。因为在我的情况下(你的可能会有所不同,具体取决于你想要完成的事情),我只希望 UIImageView 位于 ipadMini 屏幕的中心,所以我有点作弊并硬编码了值(1024 / 2 和 768 / 2)。不要忘记将您的 UIImageView 作为子视图添加到 self.View(我犯了错误,迷路了哈哈)。希望这可以帮助 !

4

3 回答 3

1

在滚动视图之外制作图像视图并将其隐藏。

当您希望它显示在scrollview 上时,给imageview它的图像并取消隐藏它。

于 2013-05-29T14:40:51.300 回答
0

尝试编写相同的代码

  • (void)scrollViewDidScroll:(UIScrollView *)scrollView

也然后检查。

于 2013-05-29T14:26:22.837 回答
0

这可能是你的线程。在主线程上做这项工作,如

  [self performSelectorOnMainThread:@selector(yourMethos:) withObject:YourObject waitUntilDone:NO];

我希望你能理解并可以轻松申请。谢谢

于 2013-05-29T14:29:20.537 回答