如何在 TabBar 中删除和重置顶行 - 适用于 iOS 13+

Posted

技术标签:

【中文标题】如何在 TabBar 中删除和重置顶行 - 适用于 iOS 13+【英文标题】:How to remove and reset top line in TabBar - For iOS 13+ 【发布时间】:2019-11-29 10:29:32 【问题描述】:

我正在尝试在 ios 13.2.2 中删除 TabBar 中的顶行,但以下帖子中的这些答案都不再适用于 iOS 13.2.2

链接 - Remove top line from TabBar

    最近是否有任何 API 更改?

    如何在 iOS 13.2.2 中移除和重置 TabBar 的顶行?

【问题讨论】:

你试过这个解决方案了吗? ***.com/a/47010231/6057764 @vpoltave 是的,我尝试了类似的解决方案。 【参考方案1】:

如果您编写自己的 TabBar 类以确保您可以进行所有您想要的更改,总是会更好。

#import "ViewController.h"

@protocol TabBarDelegate;

@interface TabBar : UIView
    id<TabBarDelegate> delegate;
    UIView *backgroundView;
    UIButton *btn1;
    UIButton *btn2;

    UIImageView *img1;
    UIImageView *img2;

    UIView *hubHolder;



@property (nonatomic, retain) UIView *backgroundView;
@property (nonatomic, retain) id<TabBarDelegate> delegate;
@property (nonatomic, retain) UIButton *btn1;
@property (nonatomic, retain) UIButton *btn2;

@property (nonatomic, retain) UIImageView *img1;
@property (nonatomic, retain) UIImageView *img2;

- (id) initWithFrame:(CGRect)frame;

@end

@protocol TabBarDelegate<NSObject>

@optional
- (void) tabbarTapped:(int)index;

@end

您可以轻松地定义带有按钮的视图(按钮编号取决于您希望通过标签栏访问多少个控制器)并委托控制是否点击了其中一个按钮。由于这是一个 UIView,您可以操纵它的外观。 我希望它有所帮助。

【讨论】:

以上是关于如何在 TabBar 中删除和重置顶行 - 适用于 iOS 13+的主要内容,如果未能解决你的问题,请参考以下文章

在集合视图中显示/隐藏顶行

仅在 Excel 中突出显示具有值的单元格的顶行 |微软访问

使用 TabBar 和 NavBar 在 App Delegate 中配置窗口

有效地为集合中的每个类别选择顶行

导航 navigationbar 与 tabbar

如何使按钮(输入)仅适用于 html 中的一个文本框?