繁体   English   中英

iOS如何在scrollview上放置阴影

[英]iOS how to put shadow on scrollview

在我的iOS应用中

我的应用程序包含滚动视图,我想放一个阴影,我尝试了很多代码,但没有一个起作用。

我以编程方式采取了scrollview

[self.view addsubview:scroll1];

想要使用滑块在scrollview上设置阴影

所以如果有人知道然后回答...

-(IBAction)slide3changed:(id)sender
{
    UISlider *slider=(UISlider*)sender;

    scroll1.layer.shadowColor = [UIColor blackColor].CGColor;
    scroll1.layer.shadowRadius = slider.value;
    scroll1.layer.shadowOpacity = slider.value;
}

您处在正确的轨道上,但需要设置masksToBounds

-(IBAction)slide3changed:(id)sender
{
    UISlider *slider=(UISlider*)sender;

    scroll1.layer.shadowColor = [UIColor blackColor].CGColor;
    scroll1.layer.shadowRadius = slider.value;
    scroll1.layer.shadowOpacity = slider.value;
    scroll1.layer.masksToBounds = NO; // This is important
}

我相信您还必须设置偏移量,阴影才能开始出现。

scroll1.layer.masksToBounds = NO; // this default
scroll1.layer.shadowColor = [[UIColor blackColor] CGColor];
scroll1.layer.shadowOpacity = slider.value;
scroll1.layer.shadowRadius = slider.value;
scroll1.layer.shadowOffset = CGSizeMake(0.0f, 0.0f);

首先,您确定您的scrollView的外部边缘在superView内部可见吗? 如果scrollView一直延伸到superView的边缘,则阴影将在屏幕外,因此不可见。

shadowOpacity是介于0.0到1.0之间的浮动值,因此请确保将滑块的最小值和最大值分别设置为0.0和1.0。

另外,我不希望您像现在一样更改shadowRadius。 您可能可以只留下该财产,直到获得成功。

您也可以尝试更改shadowOffset属性,以确保阴影指向所需的方向。

我想达到相同的效果,这里给定的解决方案对我不起作用。 即使用分页的滚动视图虽然嵌套在视图控制器(第35、80、250、447帧)中,但无法正确呈现。 我所做的是在简单的uiview中添加滚动视图,并使用以下代码:

self.scrollViewContainer.layer.shadowColor = [UIColor blackColor].CGColor;
self.scrollViewContainer.layer.shadowOpacity = 0.2f;
self.scrollViewContainer.layer.shadowOffset = CGSizeMake(0, 20);
self.scrollViewContainer.layer.shadowRadius = 5;
self.scrollViewContainer.layer.masksToBounds = NO;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM