zoukankan      html  css  js  c++  java
  • 自定义UINavigationItem的两种方法以及相应的隐藏方法

    第一种:

    UIImage *searchimage=[UIImage imageNamed:@"search.png"];

        UIBarButtonItem *barbtn=[[[UIBarButtonItem alloc] initWithImage:nil style:UIBarButtonItemStyleDone target:self action:@selector(searchprogram)] autoRelease];    

        barbtn.image=searchimage;

        self.navigationItem.rightBarButtonItem=barbtn;

    这种设置出来的item图片跟大小是固定的

    其隐藏方法是:在需要隐藏的时候self.navigationItem.xxxItem = nil;

    显示方法是重新alloc-init一次;

    第二种: 

    IButton*rightButton = [[UIButtonalloc]initWithFrame:CGRectMake(0,0,30,30)];

        [rightButtonsetImage:[UIImageimageNamed:@"search.png"]forState:UIControlStateNormal];

        [rightButtonaddTarget:selfaction:@selector(searchprogram)forControlEvents:UIControlEventTouchUpInside];

       UIBarButtonItem*rightItem = [[UIBarButtonItemalloc]initWithCustomView:rightButton];

        [rightButton release];

       self.navigationItem.rightBarButtonItem= rightItem;

        [rightItem release];

    这种方式设计出来的item比较灵活,尤其是在 隐藏显示的时候:

    隐藏方法:self.navigationItem.xxxItem.customView.hidden =YES;

    显示方法,同上xxx.hidden = NO;

    这种方式更合理一些,因为不需要不断的创建/消除,所以推荐用这种方法!

    第三种:

    UIBarButtonItem *anotherButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemBookmarks target:self action:@selector(methodtocall:) ]; 

  • 相关阅读:
    kafka的使用
    linux卸载mysql
    kafka单机版的安装、集群部署 及使用
    winform改变启动界面
    C#连接sqlserver数据库
    叠加dgv中相同的行信息
    重定向和转发
    [Jenkins] 配置任务中的坑s
    【Android】冷门常用 ADB
    Linux 常用环境搭建
  • 原文地址:https://www.cnblogs.com/starainDou/p/5125004.html
Copyright © 2011-2022 走看看