UiScrollview内容在后台复制

问题描述 投票:0回答:1

我正在尝试创建一个简单的天气应用,并且需要一个简单的图像才能在UIScrollView中滚动,但是我注意到当我将背景色设置为透明或透明时,图像在背景中是静态的,而“复制”在UIScrollView中滚动,由于一张图片值一千字,因此这里是默认无图像的证明。

这是Xcode中的层次结构。它只是其中包含图像的滚动视图。

XCode hierarchy image

这是模拟器。我向左滚动了一点,如您所见,在后台有一个静态的副本。

Emulator image

如果我为滚动视图设置背景色,则效果很好。图像可以滚动并且副本不见了,但我需要它是透明的。值得一提的是,我正在虚拟机中运行它。

这是用于将XIB文件添加到视图的代码。

[[NSBundle mainBundle] loadNibNamed:@"WeatherForecastSlideView" owner:self options:nil];
[self addSubview:self.contentView];

我希望这个问题很清楚,对于错别字/错误很抱歉。

objective-c xcode uiscrollview
1个回答
0
投票

原来在构造方法上有错字init方法正在调用internalInit,该实例将nib文件实例化并将nib层次结构视图添加为该类的子视图,问题是从代码中调用了init方法以实例化该类,然后从框架中调用了initWithFrame来创建该类。并放置视图。

-(id) init{
    self = [super init];
    if (self) {
        [self internalInit];
    }
}

-(id) initWithCoder:(NSCoder *)aDecoder{
    self = [super initWithCoder:aDecoder];
    if (self) {
        [self internalInit];
    }
    return self;
}

-(id) initWithFrame:(CGRect)frame{
    self = [super initWithFrame:frame];
    if (self) {
        [self internalInit];
    }
    return self;
}
© www.soinside.com 2019 - 2024. All rights reserved.