gpt4 book ai didi

ios - 裁剪 View Controller 的一部分

转载 作者:行者123 更新时间:2023-11-29 02:01:38 25 4
gpt4 key购买 nike

我想以半圆形裁剪部分 View Controller ,以便通过裁剪部分可以看到其后面的 View Controller 。有没有办法使用 objective-c 或任何已有的自定义控件来做到这一点。

  1. 具有 10 个单元格的 TableviewContoller

  2. 一个 ImageWiderContoller 大图及其他控件

表格的第一个单元格应该有一个半圆,通过它应该可以看到 ImageWiderContoller(在 TableviewContoller 下面)所以在 tableview 上向左滑动应该会显示 imageWiderController

最佳答案

我想到的唯一方法是拥有自定义 UIView 并将其设置为最顶层 UIViewController 的默认 View 。在 UIView 的 drawRect() 方法中,您可以绘制任何您想要的形状(包括透明形状)。就像如果你想在你的 Controller 中间画一个透明的圆圈,你可以在你的 UIView 的 drawRect() 中这样做:

- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();

[[UIColor orangeColor] setFill]; //background Fill
CGContextFillRect(context, self.bounds);

[[UIColor clearColor] setFill]; //circle Fill.
CGContextFillEllipseInRect(context, (CGRect){self.center.x - 25.0f, self.center.y - 25.0f, 50.0f, 50.0f});
}

在同一个 UIView 的 initWithFrame: 中添加:

[self setBackgroundColor:[UIColor clearColor]];

P.S:如@Lefteris 所述,显然将您的 UIViewControllerUIModalPresentationStyle 设置为 OverCurrentContext,以便它出现在同一个 Controller 上。

注意:我所说的透明是指顶部 Controller 的区域,它根据需要显示下方 Controller 的内容。

关于ios - 裁剪 View Controller 的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30297408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com