`

[IOS]通过sender判断类型来获得传值

    博客分类:
  • IOS
阅读更多

1.背景:因为程序要用到Notification,传值给一个按钮事件。按钮事件的传入参数是(id)sender,因此要通过转换sender来获得notification的传入值。

 

2.代码:

-(void)onCustomLeftButtonClick:(id)sender {
 if ([sender isKindOfClass:[NSNotification class]]) {
        
        NSString *showType = [sender object];
        
        if ([@"show_left" isEqualToString:showType]) {
            _slider_btn_flag = 101;
            return;
        }else if ([@"show_center" isEqualToString:showType]){
            _slider_btn_flag = 100;
            return;
        }
        
  }
 。。。。。

 

分享到:
评论

相关推荐

    iOS swift3.0 导航页的相互传值

    在iOS应用中,导航控制器(UINavigationController)是一个关键组件,它管理着一系列的视图控制器(UIViewController),通过堆栈的方式进行切换,通常以一个导航栏(navigationBar)的形式呈现。在这样的导航结构中...

    ios开发之正向传值

    在iOS开发中,正向传值(Forwarding)是指在一个视图控制器(ViewController)到另一个视图控制器之间传递数据的方法。通常,这涉及到导航控制器(UINavigationController)的使用,因为它是iOS应用中常见的一种页面...

    iOS-UI-故事版属性传值-8-7PerformSegue

    在这个主题“iOS-UI-故事版属性传值-8-7PerformSegue”中,我们将深入探讨如何在故事板中传递属性值,特别是通过`UIStoryboardSegue`来实现这一目标。`UIStoryboardSegue`是iOS中一个关键的概念,它定义了两个...

    IOS界面之间通过委托传值

    标题提到的"IOS界面之间通过委托传值"是一种常用且灵活的方法,它基于Objective-C或Swift的委托设计模式(Delegate Pattern)。这种模式允许一个对象(在这里是发送者)通知另一个对象(接收者)关于某些事件或操作...

    ios 视图间Block传值

    这样,我们就可以在任何需要传递数据的视图中实现这个协议,并根据具体的数据类型来设置Block。 接下来,在发送数据的视图(SenderViewController)中,我们实现`DataPassingProtocol`并设置Block: ```swift ...

    iOS 多种传值方式

    总结来说,iOS开发中的传值方式多种多样,可以根据需求选择合适的方法。正向传值通常用于简单的数据传递,如通过属性或单例。反向传值则适用于需要反馈结果或复杂交互的情况,如闭包和代理。理解并熟练运用这些技巧...

    iOS Block 界面传值

    可以在BController中声明一个Block属性,然后在AController中通过实例化BController并设置这个Block来传递数据: ```objc // BController.h @interface BController : UIViewController @property (nonatomic, ...

    ios 使用代理双向传值

    标题提到的"ios 使用代理双向传值"是指在Objective-C或Swift中利用代理协议(Delegate Protocol)进行数据的双向传递,通常在不同界面之间或者组件之间进行通信时使用。这种设计模式允许一个对象(发送者)通知另一...

    iOS开发逆向传值之代理传值

    正向传值通常指的是从父控制器到子控制器或者从上一个视图到下一个视图的数据传递,这可以通过初始化参数、属性赋值或协议方法来实现。而逆向传值则是指从子控制器向上级控制器或从下一个视图传递数据回上一个视图,...

    IOS代理方法反向传值

    2. **设置代理**:在子控制器(ChildViewController)中,创建一个属性来存储父控制器(ParentViewController)的引用,类型为协议: ```objc @property (nonatomic, weak) id<ChildViewControllerDelegate> ...

    IOS实现在两个ViewController间传值(一)

    3. 在B ViewController中,通过实例化A ViewController并访问这个属性来获取值: ```objc AViewController *aVC = [[AViewController alloc] init]; NSString *receivedString = aVC.transferString; ``` 请注意,...

    IOS页面传值

    总结来说,iOS页面传值根据场景的不同可以选择单例、委托或属性传值。单例适用于全局共享数据,委托适合需要回调的情况,而属性传值则更直接,适用于简单的数据传递。在实际开发中,开发者应根据需求灵活选择合适的...

    ios 委托代理传值demo

    在iOS开发中,委托代理是一种设计模式,它允许一个对象(通常是一个视图控制器或者类)通过定义特定的协议来通知另一个对象(它的代理)某些事件的发生,或者请求代理执行某些操作。协议定义了一组方法,代理对象...

    ios实现viewcontroller切换传值的三种方法

    这里我们将详细探讨三种在iOS中实现ViewController切换并传值的方法:代理(Delegation)、键值编码(Key-Value Coding,KVC)和封装在自定义初始化方法中的参数。 **1. 代理(Delegation)** 代理是iOS开发中最...

    iOS委托反向传值

    总结来说,通过定义协议、设置和调用委托方法,我们可以实现iOS中的反向传值。这种方式使得视图控制器间的通信更加灵活,同时也保持了代码的清晰和模块化。在实际项目中,委托模式不仅用于反向传值,还常用于处理...

    ios-Block简单的页面传值.zip

    总结来说,"ios-Block简单的页面传值.zip"中的BlockDemo展示了如何在iOS应用中利用Block进行页面间的高效数据传递和事件处理,使得代码更加简洁且易于理解和维护。理解并熟练运用Block对于提升iOS开发效率至关重要。

    ios-代理的用法以及传值.zip

    在这个"ios-代理的用法以及传值.zip"中,我们可以学习如何在iOS应用中使用代理来实现对象间的交互和数据传递。 首先,我们需要了解代理协议。协议在Objective-C或Swift中定义了一组方法,这些方法由遵循该协议的...

    ios 通过delegete委托 在两个界面进行传值

    "ios 通过delegete委托 在两个界面进行传值"这个标题涉及的关键知识点是使用委托(Delegate)协议来实现在多个界面之间的数据传递。下面将详细介绍这一过程,并给出实际操作步骤。 首先,我们需要理解什么是委托...

    ios故事版传值 segue

    而“ios故事版传值 segue”就是通过Segue在视图控制器之间传递数据的方法。这种方法简单快捷,特别适合于基础的数据传递,尤其适用于从下级视图控制器向上级视图控制器传递数据。 一、UIStoryboardSegue简介 ...

Global site tag (gtag.js) - Google Analytics