如何在 iOS 7 获得导航栏上的模糊和半透明效果?

2024-09-02 01:18

本文主要是介绍如何在 iOS 7 获得导航栏上的模糊和半透明效果?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题

我的应用程序出现,要订的正确,但我不能达到模糊的半透明效果的 iOS 7 是著名的。矿井显示为不透明。

enter image description here

预期的效果

我想获得更明显的模糊效果,如苹果的拖车 app:

enter image description here

半透明

在我的 UINavigationController 的子类,我使导航栏半透明:

- (id)initWithRootViewController:(UIViewController *)rootViewController
{if (self = [super initWithRootViewController:rootViewController]) {self.navigationBar.translucent = YES;}return self;
}

色调颜色

在我的 UIApplicationDelegate 的子类,我设置导航栏中的色调颜色。我发现色调颜色的 alpha 没有区别。也就是说,使用 alpha 0.1 不会导致要变得更透亮的栏。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{[[UINavigationBar appearance] setTintColor:[UIColor greenColor]];
}

边缘

在我的内容视图控制器中,我将设置边缘为 UIRectEdgeNone 这样顶部的导航栏不会砍。如果要使用默认的 UIRectEdgeAll ,导航栏将会永久地盖顶部的我的内容。即使我要住在一起这种异常, UIRectEdgeAll 仍然不会启用半透明效果。

- (void) viewDidLoad
{[super viewDidLoad];self.edgesForExtendedLayout = UIRectEdgeNone;
}

编辑: 试验与边缘

@rmaddy 在评论中所指出的广告问题可能与 edgesForExtendedLayout。我发现综合教程 edgesForExtendedLayout ,并试图实现它:

- (void) viewDidLoad
{[super viewDidLoad];self.edgesForExtendedLayout = UIRectEdgeAll;self.automaticallyAdjustsScrollViewInsets = YES;self.extendedLayoutIncludesOpaqueBars = NO;
}

它不工作。首先,那里是没有半透明效果。第二,我的内容的顶部被切掉。在上面的代码与以下示例页上,神通最初由导航栏和它是很难向滚动。你可以拉下,看到顶部的化身,但当你放开,页面会自动弹起来,神通将会再次被遮掩。

enter image description here

解决方法 1:

问题是由第三方拉下来刷新视图EGORefreshTableHeaderView,而普遍地使用了之前的 iOS 6 介绍系统刷新控制引起的。

enter image description here

这种观点混淆了 iOS 7,让它认为内容是比真的很高。Ios 6 和 7,我已经有条件地切换到使用UIRefreshControl。现在的导航栏不会砍掉我的内容。我可以使用 UIRectEdgeAll ,使我下面的导航栏的内容走。最后,显示我的导航栏与较低的 α 要获得半透明效果色调图。

// mostly redundant calls, because they're all default
self.edgesForExtendedLayout = UIRectEdgeAll;
self.automaticallyAdjustsScrollViewInsets = YES;
self.extendedLayoutIncludesOpaqueBars = NO;[[UINavigationBar appearance] setTintColor:[UIColor colorWithWhite:0.0 alpha:0.5]];

这篇关于如何在 iOS 7 获得导航栏上的模糊和半透明效果?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1128583

相关文章

Kotlin Compose Button 实现长按监听并实现动画效果(完整代码)

《KotlinComposeButton实现长按监听并实现动画效果(完整代码)》想要实现长按按钮开始录音,松开发送的功能,因此为了实现这些功能就需要自己写一个Button来解决问题,下面小编给大... 目录Button 实现原理1. Surface 的作用(关键)2. InteractionSource3.

使用WPF实现窗口抖动动画效果

《使用WPF实现窗口抖动动画效果》在用户界面设计中,适当的动画反馈可以提升用户体验,尤其是在错误提示、操作失败等场景下,窗口抖动作为一种常见且直观的视觉反馈方式,常用于提醒用户注意当前状态,本文将详细... 目录前言实现思路概述核心代码实现1、 获取目标窗口2、初始化基础位置值3、创建抖动动画4、动画完成后

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动

Java实现图片淡入淡出效果

《Java实现图片淡入淡出效果》在现代图形用户界面和游戏开发中,**图片淡入淡出(FadeIn/Out)**是一种常见且实用的视觉过渡效果,它可以用于启动画面、场景切换、轮播图、提示框弹出等场景,通过... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

MySQL中like模糊查询的优化方案

《MySQL中like模糊查询的优化方案》在MySQL中,like模糊查询是一种常用的查询方式,但在某些情况下可能会导致性能问题,本文将介绍八种优化MySQL中like模糊查询的方法,需要的朋友可以参... 目录1. 避免以通配符开头的查询2. 使用全文索引(Full-text Index)3. 使用前缀索

Android与iOS设备MAC地址生成原理及Java实现详解

《Android与iOS设备MAC地址生成原理及Java实现详解》在无线网络通信中,MAC(MediaAccessControl)地址是设备的唯一网络标识符,本文主要介绍了Android与iOS设备M... 目录引言1. MAC地址基础1.1 MAC地址的组成1.2 MAC地址的分类2. android与I

Flutter实现文字镂空效果的详细步骤

《Flutter实现文字镂空效果的详细步骤》:本文主要介绍如何使用Flutter实现文字镂空效果,包括创建基础应用结构、实现自定义绘制器、构建UI界面以及实现颜色选择按钮等步骤,并详细解析了混合模... 目录引言实现原理开始实现步骤1:创建基础应用结构步骤2:创建主屏幕步骤3:实现自定义绘制器步骤4:构建U

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二:

MySQL索引的优化之LIKE模糊查询功能实现

《MySQL索引的优化之LIKE模糊查询功能实现》:本文主要介绍MySQL索引的优化之LIKE模糊查询功能实现,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前缀匹配优化二、后缀匹配优化三、中间匹配优化四、覆盖索引优化五、减少查询范围六、避免通配符开头七、使用外部搜索引擎八、分