gpt4 book ai didi

iphone - iOS iPhone 是否可以克隆 UIView 并将其自身绘制到两个 UIView 上?

转载 作者:技术小花猫 更新时间:2023-10-29 10:15:38 31 4
gpt4 key购买 nike

我正在考虑一种让 UIView 将自身呈现到另一个 UIView 以及第一个 UIView 上的方法。所以我有我的主 UIView 及其边界,并且 UIView 也在其他一些 UIView 中呈现自己。

这可能吗?是否需要大量的图层操作?

最佳答案

不知道您的真实意图是什么,但这会绘制两次 View ,用户交互等将不会在第二个 View 上工作。此解决方案也无法处理不同的帧大小。

要克隆的 View 的标题

@interface SrcView : UIView
@property(nonatomic, readonly, strong) UIView *cloneView;
@end

@interface CloneView : UIView
@property(nonatomic, weak) UIView *srcView;
- (id)initWithView:(UIView *)src;
@end

要克隆的 View 的实现

#import "SrcView.h"
#import "CloneView.h"

@implementation SrcView
@synthesize cloneView;

- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx{
[cloneView setNeedsDisplay];
}

- (UIView *)cloneView {
if (!cloneView) {
cloneView = [[CloneView alloc] initWithView:self];
}
return cloneView;
}

@end

@implementation CloneView
@synthesize srcView;

- (id)initWithView:(UIView *)src {
self = [super initWithFrame:src.frame];
if (self) {
srcView = src;
}
return self;
}

- (void)drawRect:(CGRect)rect
{
[srcView.layer renderInContext:UIGraphicsGetCurrentContext()];
}

@end

现在您可以调用 cloneView 并将其添加到您想要的位置。

关于iphone - iOS iPhone 是否可以克隆 UIView 并将其自身绘制到两个 UIView 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10365735/

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