- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在 UIView 中有一个 MKMapView。在 iOS7 之前从来没有任何问题。我的 UITabbar 和 UINavigationBars 颜色由 UIAppearance 协议(protocol)设置。
出于某种原因,每当启动 MKMapView 时,我所有的标签栏和导航栏都会重置,而忽略外观类的 barTintColor 设置。 UIAppearance 的所有其他设置似乎都保留了下来,例如 title 属性和 barItem 属性。只有 barTintColor 熄灭。
还有一件事。这只发生在 iPhone 4 和 iPhone4S 上,不会发生在 iPhone 5 上。它也不会发生在模拟器上。在 iOS6 中根本不是问题。
我找不到重置的其他原因。我浏览并评论了几乎所有发生的事情,但无论哪种方式都没有效果。
如果我删除 MKMapView 控件,则不会重置颜色。如果我继续使用 MKMapView 呈现另一个完全不同的 View ,颜色将再次重置。
我正在寻找其他要检查的内容的想法,什么样的设置或方法可能会导致此行为。给我一些要消除的东西,我卡住了。
附加信息:
现在认为这可能是一个错误。我在 ViewDidLoad 中放了一行代码将导航栏的颜色硬编码为任意颜色,只是为了看看发生了什么。
UINavigationBar *bar = self.navigationController.navigationBar;
[bar setBarTintColor = [UIColor GreenColor];
我在下一行换行。检查栏,颜色似乎已设置。
在 iPhone4 或 4S 上,条不会变绿。在 iPhone5 和模拟器上,条变为绿色。
我发现了更多元素。颜色没有变化。看来能见度是。然而,读取颜色和条形的 alpha 值都返回 1.0。
所以颜色是正确的。
半透明是。
Alpha 为 1.0。
然而条形是完全透明的,没有颜色,没有色调。
我想我会把它作为一个错误正式归档。我做了一个只有 MKMapview 的测试 viewController。没有代码,没有委托(delegate),没有注释。用它来代替我适当的 Controller 。同样的事情发生了。
我现在需要的是解决方法。我只是不知道发生了什么变化。当我检查导航栏的属性时,一切都是正确的。色调颜色、半透明度、条形色调颜色、alpha 值。据我所知,该东西应该按预期显示。
谁能告诉我其他可以使导航栏背景完全透明的属性或方法?
最佳答案
经过更多搜索后,我发现开发者论坛中有一些相关主题,并且这个问题已经注意到一段时间了。我希望我会收到回复说我的错误报告是骗人的。与此同时,我相信我已经想出了一个解决方法。
我想到的是一系列设置
self.navigationController.navigationBar.translucent = NO;
self.tabBarController.tabBar.translucent = NO;
当加载包含 MKMapView 的 View ,然后在 viewDidAppear 中将其设置为 YES 时。我在 viewWillDisappear 上再次设置为 NO。然后返回的 viewController 必须在其 viewDidAppear 中再次重置为半透明。
我在带有 map 的 View Controller 中使用了一系列 NSNotification 帖子。我将我的导航 Controller 和标签栏子类化,让它们监听通知并通过切换它们自己的栏半透明属性来响应。
设法完成它。使用少量代码,但无缘无故地进行了大量事件。更希望尽快看到这个修复。
关于iphone - MKMapview 影响 UINavigationBar 和 TabBar 外观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19080459/
我想将照片数据从 Tabbarcontroller 中的一个 Viewcontroller(cameraVC) 传递到同一 Tabbarcontroller 中的另一个 Viewcontroller(
我需要加载选项卡栏项目。在这里,我需要不同标签中标签栏的不同背景颜色。我正在更改 didSelectItem 中的栏色调颜色。但它的背景颜色没有改变。加载标签栏时它工作正常。 这是我的代码 over
我想获取标签栏默认大小,但我在ViewController中没有任何tabBar,所以我没有使用self.tabBarController?.tabBar.frame.size.height . 我使
我有一个应用程序的想法,但在使用 Xcode 几个月后,我遇到了一个主要的设计问题。我想要这个: 但正如许多 ios 开发人员所知,在界面构建器中使用传统的标签栏只会创建单色、非轮廓、标签栏按钮,如下
我在我的应用程序上使用 TabBarController,在其中一个主视图 (aViewController) 中,我按下另一个 Controller (bViewController),并使用 se
我想在用户点击选项卡时切换选定的选项卡。假设我有两个选项卡并且显示第一个选项卡,那么点击第一个选项卡(以及点击第二个选项卡)应该会引导我进入第二个选项卡。我已经实现了一个自定义 UITabBarCon
我有一个带有 3 个选项卡的选项卡栏 Controller ,每个选项卡都有导航 Controller ,在每个导航 Controller 的 Root View Controller 上我想要选项卡
我正在编写一个 iPhone 应用程序,它类似于 5-6 级向下钻取应用程序。我几乎完成了我的应用程序的编写,现在提出了一个新要求,即从第三个屏幕开始添加一个 TabBar(JQuery 中的导航栏)
我正在使用 SWRevealViewController 作为侧边菜单。我的应用程序中还有一个标签栏 Controller 作为主视图。 在我的菜单中,我有“MenuItem”(显示MenuItemV
我正在通过 Storyboard 创建一个 TabBar Controller 应用程序。我正在使用 Storyboard 引用对象来链接第三个选项卡项的另一个 Storyboard 。它工作正常,但
TabBar 没有隐藏在推送的 ViewController 中,我使用下面的代码来隐藏 tabBar, tabBarController?.tabBar.isHidden = true
我目前有两个 View Controller ,一个是使用 imagePicker 拍照的 CameraViewController,另一个是显示一个人收到的所有照片消息的 PhotoInboxVie
我有一个包含 5 个项目的 UITabBarController。在其中一个 ViewController 上,我有一个按钮,我将其称为“开始”,所以当我按下开始时,我想插入另一个 ViewContr
我正在更改 setSelectionIndicatorImage,当我在 iOS 8 上运行应用程序时,我得到图像和 tabBar 的常规宽度之间的间距。有没有一种方法可以使标签栏的高度与 setSe
我想通过在图像上向左滑动从“正在显示”导航到“即将推出”,此外,我希望 Appbar 在我滑动时不要移动,但我认为只有标签栏和我不确定,如果您知道如何实现这一点,请提供一些建议 enter image
在我的项目中,我有一个 UITabBarController。在其中一个 ViewControllers 上我有一个按钮。当我单击此按钮时,一个新的 ViewController 将以模态方式呈现。
我是 iPhone 开发新手,多个 View (xib 或 nib)真的让我感到困惑。这就是我想要实现的目标...... 使用 TabBarControllerAppDelegate 有 5 个不同的
滚动到底部后如何修复 iOS 15 标签栏透明: 最佳答案 在 iOS 15 中,Apple 添加了 scrollEdgeAppearance用于在边缘滚动时配置标签栏外观的属性。 https://d
我尝试创建如下图所示的自定义标签栏: 下面是我得到的结果: 以下是我当前的代码: class CustomTabBarController: UITabBarController { over
Widget build(BuildContext context) { return Scaffold( body: SingleChildScrollView( child: Colu
我是一名优秀的程序员,十分优秀!