• 学习笔记:Tab Bar 控件使用详解


    注意这里是:Tab Bar 不是Tab Bar Controller. Tab bar是继承UIView,所以可以添加到ViewController里。是View就可以add到另一个View上去。Tab Bar Controller是新建View视图。

    XX.h 里需要定义UITabBar,并且要引用协议 UITabBarDelegate.

    @interface LoginViewController :UIViewController<UITabBarDelegate>

    {

        UITabBar *tabbar;

    }

    @property (nonatomic, retain) UITabBar *tabbar;

    XX.m

    @synthesize tabbar;

    - (void)viewDidLoad

    {

        //加载Tab bar

        CGRect footFrame = CGRectMake(0, 420, 320, 60);

        tabbar = [[UITabBar alloc]initWithFrame:footFrame];

        

        UITabBarItem *item1 = [[UITabBarItem alloc]initWithTabBarSystemItem:1 tag:0];

        UITabBarItem *item2 = [[UITabBarItem alloc]initWithTabBarSystemItem:2 tag:1];

        NSArray *items = [[NSArray alloc]initWithObjects:item1,item2, nil];

        [tabbar setItems:items animated:YES];

        [item1 release];

        [item2 release];

        [items release];

        [self.view addSubview:tabbar];

        tabbar.delegate = self;//指定其代理方法,不然方法不起作用

        [tabbar release]; 

    }

    - (void)tabBar:(UITabBar *)tabbar didSelectItem:(UITabBarItem *)item 

    {

        NSLog(@"Selected is %d",item.tag);

        NSString *msg = [[NSString alloc]initWithFormat:@"selected is %d",item.tag];

        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"a" message:msg delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];

        [alert show];

        [msg release];

        [alert release];

    }

  • 相关阅读:
    (译).NET4.X并行任务Task需要释放吗?
    微软面向高并发应用而推出的新程序库——TPL Dataflow
    C# 5.0 Async函数的提示和技巧
    内存泄露——文章
    AJAX POST请求中参数以form data和request payload形式在php中的获取方式
    NodeJS中间层搭建
    HTML5上传预览
    laravel 图片上传 ajax 方式
    抽奖程序
    IText 生成页脚页码
  • 原文地址:https://www.cnblogs.com/langtianya/p/3976152.html
Copyright © 2020-2023  润新知