`

[IOS]通过子view控制tab的页面转换

tab 
阅读更多
-(void)setSelectButton:(UIButton*)sender{
    
    if(sender == _btPayQR && ![_btPayQR isSelected]){

        [_btPayScan setBackgroundColor:[UIColor whiteColor]];
        [_bgView setBackgroundColor:[UIColor whiteColor]];
        [_btPayScan setSelected:false];
        [_btTranSporttation setSelected:false];

        [sender setBackgroundColor:[[UIColor alloc] initWithRed:115/255.0 green:115/255.0 blue:115/255.0 alpha:1]];
        [sender setSelected:YES];

        [self addChildViewWithStoryboardName:@"PToM" identifier:@"PGPToMQRCodeViewController"];
    }else if(sender == _btPayScan && ![_btPayScan isSelected]){
        [_btPayQR setBackgroundColor:[UIColor whiteColor]];
        [_bgView setBackgroundColor:[UIColor whiteColor]];
        [_btPayQR setSelected:false];
        [_btTranSporttation setSelected:false];

        [sender setBackgroundColor:[[UIColor alloc] initWithRed:115/255.0 green:115/255.0 blue:115/255.0 alpha:1]];
        [sender setSelected:YES];

        [self addChildViewWithStoryboardName:@"PToM" identifier:@"PGPToMScanViewController"];
    

 在当前页面做tab的翻页

不同的按钮点击就显示不同的内容

 

- (void)addChildViewWithStoryboardName:(NSString *)storyboardName identifier:(NSString *)identifier {
    
    if ([self.subView.subviews count] != 0) {
        [self.subView.subviews[0] removeFromSuperview];
    }
    
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle:nil];
    PGBaseViewController *controller = [storyboard instantiateViewControllerWithIdentifier:identifier];
    [self addChildViewController:controller];
    [controller.view setBackgroundColor:[UIColor clearColor]];
    [controller.view setFrame:self.subView.bounds];
    [self.subView addSubview:controller.view];
}

 清空subview数组并加载子页面

分享到:
评论

相关推荐

    IOS应用源码——多种view视图切换效果.zip

    4. **Storyboard**:在iOS开发中,Storyboard是一种可视化布局工具,允许开发者通过图形界面设计UI和定义视图控制器之间的转换。在这个源码中,可能包含了不同的Storyboard场景来展示各种视图切换效果。 5. **Segue...

    swift中实现segment在导航栏控制页面之间的转换

    在storyboard中,将这些页面作为导航控制器的子控制器,并设置适当的segue连接。确保每个页面都具有独特的标识符,这将在之后的代码中使用。 接下来,我们需要编写代码来处理Segment Control的选中事件。首先,为...

    ios多视图 ios学习

    它允许你在Storyboard中直接添加子控制器,并定义其布局和关系。 7. **Transition Animation**:在视图切换时,可以自定义动画效果。系统提供了多种预设动画,也可以通过CATransition或者自定义动画来实现更复杂的...

    TabBarControllers

    导航控制器(UINavigationController)是iOS应用中用于管理一系列视图控制器(View Controllers)的容器类。它提供了一个堆栈式的结构来存储视图控制器,从而实现应用内部页面之间的跳转和返回。每个视图控制器都...

    史上最全的ios开发源码

    列表-让TableView的子view保持固定 列表之ExpansionTableView 列表之iOS Tree Component 列表之Refresh Control 列表之首列固定的列表 日历类 日历(Calendar)之Calendar Picker 日历(Calendar)之TimesSquare ...

    ios开发记录

    //initWithNibName将控制器绑定xib的方法,如果xib的名称和控制器的类名称相同的时候,直接写init(会自动绑定同名的xib)就可以,如果xib的名称和类名称不同的话,必须手动调用此方法来进行绑定 ...

    storyBoard常见用法

    它允许开发者通过一个单一的文件来组织和管理多个视图控制器及其之间的转换。本篇将详细讲解`storyBoard`的常见用法,帮助你掌握如何有效地利用Storyboard进行应用开发。 1. **创建与配置视图控制器** - 在...

    viewPager android

    通过`ViewPager.setPageTransformer()`方法可以设置页面转换器,实现更丰富的视觉效果。 在`ViewPagerDemo`项目中,你可能会发现包含以下内容: 1. 示例应用程序展示了如何创建和配置ViewPager。 2. 自定义的...

    Apress.Beginning.iPhone.Development.Exploring.the.iOS.SDK.2014

    - **分层结构**: 如何通过导航控制器构建层次化的用户界面。 - **回退功能**: 实现回退功能,使用户能够返回上一层级。 **10. 集合视图(Chapter 10: Collection View)** - **集合视图概述**: 了解集合视图的特点...

    粘性 Tabbar 效果,可以看代码学习如何做类似效果.zip

    当用户在页面上滑动时,Tabbar 会有一个平滑的动画过渡,从常规状态变为固定在屏幕底部的状态,这个过程称为“粘性”转换。GooeyTabbar 的设计灵感可能来源于物理效果,如胶水或者果冻般的弹性,因此在视觉上更加...

    在uiview 的tableView中点击cell进入跳转到另一个界面的实现方法

    在iOS应用开发中,我们经常需要在用户交互时实现页面间的跳转,特别是在UITableView中点击Cell进入新的界面。本文将详细介绍如何在UIView的UITableView中点击Cell实现页面跳转的步骤和相关知识点。 首先,我们需要...

    swift创建数据库、模型转字典、封装选择视图

    1. Storyboard:在Interface Builder中,拖拽Tab Bar Controller到Scene,设置其子控制器,并通过关系segue连接。 2. 代码创建:使用UITabBarController的`viewControllers`属性设置初始显示的ViewController数组。...

    iOS tabview如何添加字母索引

    本文实例为大家分享了iOS tabview添加字母索引的具体代码,供大家参考,具体内容如下 文章转载自大神源码传送门 1、将汉字转换成首字母 //系统获取首字母 - (NSString *) pinyinFirstLetter:(NSString*)...

    WhiteHousePetitions:通过JSON数据协议或协议下载可解码的UITabBarController嵌套应用程序

    UITabBarController是iOS中常用的一种界面控制器,它允许用户在多个子视图控制器之间切换,每个子视图控制器通常对应TabBar上的一个标签。在“WhiteHousePetitions”中,可能每个Tab代表一类请愿,如“最新”、...

    swift-RAMAnimatedTabBarController是一个SwiftUI模块用于将动画添加到Ramotion制作的标签栏中

    在本案例中,"swift-RAMAnimatedTabBarController"是一个专门针对SwiftUI的模块,其目的是为了增强Ramotion设计的标签栏(Tab Bar)的用户体验,通过引入动画效果来提升应用的视觉吸引力。 Ramotion是一家知名的...

    map-天津市地图

    首先,Qt5是一个跨平台的应用程序开发框架,由Qt公司开发,支持Windows、Linux、macOS、Android和iOS等多种操作系统。在Qt5中,我们可以利用其丰富的图形用户界面(GUI)组件和强大的编程接口来构建复杂的桌面和移动...

    Swift第三方资源库整理

    Tab Bar、Table View、Alert、Sheet、Button、Switch、Label、TextField、TextView部分,这些是iOS开发中常用的UI组件和控件,可能包含了这些组件的使用示例或者扩展,但具体细节未提供。 Font、Color、CoreText、...

    【国开搜题】国家开放大学 一网一平台 Android核心开发技术18 期末考试押题试卷.docx

    - 通过`android:orientation`属性可以控制子视图的排列方向。 **7. AlertDialog.Builder中,哪个方法设置确定按钮?** 本题考察的是AlertDialog.Builder中设置确认按钮的方法。 - **正确选项:** - A. `...

    WeatherApp

    2. 利用Segmented Control或Tab Bar Controller切换当前天气与未来几天的预报。 3. 使用Stack View或 SwiftUI 的 HStack 和 VStack 进行布局,保持界面整洁有序。 三、数据获取 1. 选择一个可靠的天气API,如...

Global site tag (gtag.js) - Google Analytics