动态添加方法 并且动态的执行 有类方法 对象方法
2019独角兽企业重金招聘Python工程师标准>>>
//
// ViewController.m
// TESTzz
//
// Created by point on 2017/4/27.
// Copyright © 2017年 dacai. All rights reserved.
//#import "ViewController.h"
#import "DCModel.h"
#import <objc/message.h>static SEL _dcSel;
static SEL _dcSel2;
@interface ViewController ()
{Class _dcModelClass;
}
@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];//动态的 添加方法_dcModelClass = NSClassFromString(@"DCModel"); //这样的写法 不用头文件也可//[DCModel class] 必须包含头文件_dcSel = NSSelectorFromString(@"run:");class_addMethod(_dcModelClass, _dcSel, (IMP)aaa, "v@:@");//执行方法static void(*action)(id, SEL,NSNumber *) = (void(*)(id, SEL,NSNumber *))objc_msgSend;id controller = [[_dcModelClass alloc] init]; //这样执行对象方法action(controller, _dcSel,@(100));_dcSel2 = NSSelectorFromString(@"run");static void(*action2)(id, SEL) = (void(*)(id, SEL))objc_msgSend;action2(_dcModelClass, _dcSel2); //这个执行的是类方法
}void aaa(id self, SEL _cmd, NSNumber *meter) {NSLog(@"跑了%@", meter);
}@end
转载于:https://my.oschina.net/zhaodacai/blog/888326
动态添加方法 并且动态的执行 有类方法 对象方法相关推荐
- python类的成员函数_Python实现动态添加类的属性或成员函数的解决方法
某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法.用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需要的模块. 本文就此简述了Python实现动态添加类的属性或 ...
- Qt封装TDMS文件实现动态添加组以及动态写入通道数据
TDMS文件: TDMS文件是NI主推的一种二进制记录文件,TDMS文件由三个层次结构级别组成:文件.组.通道.在NI的LabVIEW软件中,可通过许多接口直接访问NI TDMS文件,但使用LABVI ...
- Vue中 动态添加class写法 动态静态clas混合
Vue中 动态添加class写法 动态静态clas混合 示例 //fx,cont-block为静态class ob为动态class <div :class="[ 'fx','cont- ...
- php动态添加查询,php动态添加url查询参数的方法,php动态url参数_PHP教程
php动态添加url查询参数的方法,php动态url参数 本文实例讲述了php动态添加url查询参数的方法.分享给大家供大家参考.具体分析如下: 这段代码可以动态为url添加key-value查询参数 ...
- 动态添加综合布局---动态添加控件及将某XML动态加入到Activity显示(续)
前言:以前曾写过一篇关于动态生成控件的文章<动态添加控件及将某XML动态加入到Activity显示>,比较浅显,对于RelativeLayout的相关布局设置方法及相对布局与线性布局的混合 ...
- layui option 动态添加_layuiselect如何动态添加option
这次给大家带来layui select如何动态添加option,layui select动态添加option的注意事项有哪些,下面就是实战案例,一起来看一下. html 产品类别 轻松融 容易融 快乐 ...
- android 动态添加快捷方式,Android动态创建快捷方式
一. 摘要 以Android O为分界,介绍两种动态创建快捷方式的途径:广播和ShortcutManager. 二. Android O以前 在Android O(8.0)以前,动态创建快捷方式是通过 ...
- Elastic-Job:动态添加任务,支持动态分片
多情只有春庭月,犹为离人照落花. 概述 因项目中使用到定时任务,且服务部署多实例,因此需要解决定时任务重复执行的问题.即在同一时间点,每一个定时任务只在一个节点上执行.常见的开源方案,如 elasti ...
- 动态添加 ajax,ajax动态的添加内容【原创】
以前只是见过很多动态添加内容的效果,这次还是自己第一次在项目里接触到呢,就简单记录下来了,希望对大家有帮助. 这里的效果是选中一个选择框,对应的内容区就会相应的出现对应的详细内容,取消选择框,对应的内 ...
最新文章
- 鹅厂是如何使用 Git 的?
- 计算机二级关于数据结构的题目,计算机二级MS OFFICE 练习题(一五三)
- 课程及其编码字典python_【课程15】Python字典
- 我用过 | Keil的发展历史
- fruncm server sql 无法生成 线程_SQL Server无法生成FRunCM线程的解决方法
- php 网页解析错误,php-解析错误:语法错误,文件意外结束
- 第六周--------职业规划------正确的选择让你少奋斗十年
- 慧编程python硬件_什么是慧编程?慧编程介绍
- pdf图片转换成word文字
- zjs-my-diary-20200527
- Mysql查询各门课程成绩大于85分的学生名单—纠正网上大部分文章的错误
- ListView控件和Adapter
- vue3查看当前路由
- APP测试就是手机测试吗?
- 使用Vmware workstation出现权限不足
- Linux红旗语言,如何改变红旗linux控制面板语言
- mysql oracle创建视图索引吗_Oracle视图,索引,序列
- android手环通信协议,BLE通信协议
- python jpg压缩_python 实现图片批量压缩的示例
- 医咖会免费STATA教程学习笔记——二分类Logistic回归