无法在tvOS 13上设置UITabBar leadingAccessoryView

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

Human Interface Guidelines for tvOS under "Tab Bar Customization"中指出:

此外,您可以在标签页中显示徽标或其他信息通过提供出现在标签栏的前端和后端。

UITabBar文档中,以下属性可用:

trailingAccessoryView

tvOS上选项卡栏后端的视图。使用这个属性在标签栏的前端集成自定义视图接口。使用此视图显示自定义徽标或授予访问权限您的应用中的自定义附件。

https://developer.apple.com/documentation/uikit/uitabbar/3213944-leadingaccessoryview

还有trailing version

-

HOWEVER ... trailingAccessoryView被定义为只读:

var leadingAccessoryView: UIView { get }

因此不能直接在代码中设置。

我找不到直接在UITabBarController UITabBar上,直接放置在视图控制器上的UITabBar上或通过将UIViews拖到UITabBar上的故事板文件中进行设置的方法。

我还尝试通过创建自定义UITabBar并覆盖该属性来进行设置,如下所示:类CustomTabBar:

UITabBar {       
    override var leadingAccessoryView: UIView {  
        return UIImageView(image: UIImage(named: "example-image"))  
    }  
}  

[我已确认已将情节提要中的选项卡栏设置为自定义选项卡,并且该菜单栏正在使用自定义选项卡,但是leadingAccessoryView值从未访问过,并且从不显示它返回的视图。

-

在tvOS中如何在leadingAccessoryView上设置UITabBar

-

环境:

Xcode版本11.0(11A420a)

项目部署目标:tvOS 13.0

模拟器:Apple TV 4K-tvOS 13.0(17J577)

此问题也已发布在Apple开发者论坛上:https://forums.developer.apple.com/thread/123469

uitabbar tvos tvos13
1个回答
0
投票
您必须将视图添加为子视图。

实施例:

let imageView = UIImageView(image: UIImage(named: "example-image")) tabBar.leadingAccessoryView.addSubview(imageView)

© www.soinside.com 2019 - 2024. All rights reserved.