`
jsntghf
  • 浏览: 2543823 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

自定义导航栏按钮

    博客分类:
  • iOS
阅读更多

首先,写一个类,继承于UIButton。

 

头文件:

 

#import <Foundation/Foundation.h>

@interface BlueButton : UIButton {
	
}

- (id)init;

@end

 

实现文件:

 

#import "BlueButton.h"

@implementation BlueButton

- (id)init {
  if(self = [super init]) {
    self.frame = CGRectMake(0, 0, 49.0, 30.0);
    self.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
    self.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
		
    UIImage *image = [UIImage imageNamed:@"blueButton.jpg"];
    UIImage *stretchImage = [image stretchableImageWithLeftCapWidth:15.0 topCapHeight:0.0];
    [self setBackgroundImage:stretchImage forState:UIControlStateNormal];
		
    self.backgroundColor = [UIColor clearColor];
    [self setTitleShadowColor:[UIColor blackColor] forState:UIControlStateNormal];
    self.titleShadowOffset = CGSizeMake(0, -1);
    self.titleLabel.font = [UIFont boldSystemFontOfSize:13];
  }
	
  return self;
}

@end

 

示例:

 

- (void)viewDidLoad {
	[super viewDidLoad];
	
	BlueButton *blueButton = [[BlueButton alloc] init];	
	[blueButton setTitle:@"Add" forState:UIControlStateNormal];	
	[blueButton addTarget:self action:@selector(add)
			 forControlEvents:UIControlEventTouchUpInside];
	
	UIBarButtonItem *button = [[UIBarButtonItem alloc]
														 initWithCustomView:blueButton];
	self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(Cancel)];
	self.navigationItem.rightBarButtonItem = button;
	
	[button release];
	[blueButton release];
}

 

示例图:


分享到:
评论

相关推荐

    swift-一个iOS11自定义导航栏按钮偏移问题的优雅解决方案

    当开发者面临特定场景,如在iOS 11中遇到自定义导航栏按钮的偏移问题时,就需要寻找优雅且高效的解决方案。这篇内容将深入探讨如何在Swift中处理这个问题,以及如何确保自定义按钮的布局正确和触摸事件能够正常响应...

    Qt 自定义导航栏

    在Qt开发中,自定义导航栏是一项常见的任务,它能够为应用程序提供更加直观且具有特色的用户界面。本文将深入探讨如何在Qt中实现自定义导航栏,并分享一个使用案例,帮助开发者创建美观、易用的树形导航结构。 首先...

    IOS 自定义导航栏 和表格 学习笔记

    例如,可以自定义导航栏的背景色、标题文字样式、左右按钮等。要实现自定义导航栏,你可以: 1. 使用`appearance`代理方法统一设置所有导航栏的样式。 2. 在每个ViewController中重写`navigationBar:didPopItem:`...

    ios-自定义导航栏.zip

    2. **扩展功能**:通过自定义导航栏,可以添加额外的按钮、滑块、下拉菜单等交互元素,以提供更多操作选项。比如,你可以在右侧添加一个搜索按钮,点击后弹出搜索视图。 3. **动画效果**:为了提升用户体验,可以为...

    C#自定义导航栏控件(组件)源代码(pdf)

    1. C#自定义导航栏控件的定义和功能 自定义导航栏控件是一个具有主菜单和子菜单的组件,能够通过代码实现动态生成。它允许用户根据数据库配置来构建导航栏,并通过点击导航栏的按钮来动态加载不同的Tab页签。这种...

    微信小程序(uniapp + uView)自定义导航栏

    微信小程序(uniapp + uView)自定义导航栏

    uni-app自定义导航栏按钮|uniapp仿微信顶部导航条功能

    本文将深入探讨如何在uni-app中自定义导航栏按钮,以及如何实现仿微信顶部导航条的功能。 首先,要在uni-app中自定义导航栏按钮,我们需要对页面的配置文件page.json进行编辑。在这个文件中,我们可以通过配置app-...

    Swift5.2 CustomNavigationController自定义导航栏.zip

    3. **自定义导航栏按钮**:可以创建自定义的`UIButton`,添加图像和标题,然后将其设置为`UIBarButtonItem`,再将其添加到`navigationItem`的`leftBarButtonItem`或`rightBarButtonItem`。 4. **动态调整导航栏**:...

    OC-UINavigation自定义导航栏

    3. **自定义导航栏按钮**:`leftBarButtonItem` 和 `rightBarButtonItem` 是默认的左右按钮,我们可以替换为自定义的 `UIBarButtonItem` 或自定义视图。同时,可以通过 `appearance` API 来全局改变按钮的样式,如...

    iOS自定义导航栏

    - 自定义导航栏的item,如标题、按钮,可以通过`setTitleTextAttributes:`、`setBackButtonTitlePositionAdjustment:`等方法实现。 3. **自定义行为**: - 重写`layoutSubviews()`方法,调整子视图的位置和大小。...

    IOS 入门开发之导航栏按钮切换

    五、自定义导航栏按钮 1. 自定义按钮外观:可以创建自定义的UIView或UIButton作为`UIBarButtonItem`的custom view,实现更复杂的交互效果。 2. 动画效果:利用`UIView`的动画API,为按钮切换添加过渡效果,提升用户...

    header-navbar-小程序自定义导航栏,左上角胶囊按钮返回|首页详解.zip

    小程序自定义导航栏,左上角胶囊按钮返回|首页详解详情介绍地址:https://juejin.im/post/5d0219536fb9a07ef06f8eab主要API获取设备信息wx.getSystemInfo获得胶囊按钮坐标信息wx.getMenuButtonBoundingClientRect...

    iOS自定义导航栏库

    本文将深入探讨名为"iOS自定义导航栏库"的解决方案,以及如何利用WRNavigationBar-master这个开源项目进行自定义导航栏的实践。 首先,我们来看WRNavigationBar。这是一个专为iOS开发设计的第三方库,它的主要功能...

    自定义导航栏

    1. **创建布局文件**:自定义导航栏通常会包含一些UI元素,如标题、返回按钮、菜单等。这些元素可以在XML布局文件中定义,然后在自定义控件类中引用。 2. **创建自定义View类**:创建一个新的Java类,继承自`...

    ios-自定义导航全局返回按钮.zip

    以上就是关于`ios-自定义导航全局返回按钮.zip`这个资源包所涵盖的知识点,主要涉及了自定义导航栏按钮、全局应用、保持系统代理工作以及支持侧滑返回手势等内容。在实际项目中,这样的自定义能够提升用户体验,同时...

    微信小程序自定义头部标题导航栏

    * navIcon: 用户自定义导航按钮图标路径 * navHome: 导航按钮为主页home,与返回back互斥,默认false显示返回back * 外部样式类:(使用时注意权重,添加外部样式类无效果的时候,给类加点权重就可以了) * ...

    自定义导航栏返回按钮backBarButtonItem的标题对应的Demo

    在iOS应用开发中,导航栏(Navigation Bar)...总之,自定义导航栏返回按钮的标题是提升iOS应用用户体验的一个有效手段。通过以上步骤,开发者可以轻松地调整返回按钮的外观和行为,使之与应用的整体设计风格保持一致。

Global site tag (gtag.js) - Google Analytics