#import <UIKit/UIKit.h>
@ interface ViewController : UIViewController{
UIButton *btn1;
UIButton *btn2;
UILabel *label1;
}
-( void)testRespond1;
-( void)notTest;
@end
#import "ViewController.h"
@implementation ViewController
- ( void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Release any cached data, p_w_picpaths, etc that aren't in use.
}
#pragma mark - View lifecycle
- ( void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
btn1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn1.frame = CGRectMake(50, 100, 100, 50);
[btn1 setTitle: @"BTN1" forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(btn1Clicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
btn2 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn2.frame = CGRectMake(200, 100, 100, 50);
[btn2 setTitle: @"BTN2" forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(btn2Clicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
}
-( void)btn1Clicked:(id)sender
{
if ([self respondsToSelector:@selector(testRespond1)])
{
[self testRespond1];
}
}
-( void)btn2Clicked:(id)sender
{
if (![self respondsToSelector:@selector(notTest)])
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message: @"notTest 没有被实现" delegate:nil cancelButtonTitle: @"OK" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
}
-( void)testRespond1
{
label1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 200, 220, 200)];
label1.text = @"testRespond1 被实现了";
[self.view addSubview:label1];
[label1 release];
}
- ( void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
-( void)dealloc
{
[super dealloc];
}
@end
@ interface ViewController : UIViewController{
UIButton *btn1;
UIButton *btn2;
UILabel *label1;
}
-( void)testRespond1;
-( void)notTest;
@end
#import "ViewController.h"
@implementation ViewController
- ( void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Release any cached data, p_w_picpaths, etc that aren't in use.
}
#pragma mark - View lifecycle
- ( void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
btn1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn1.frame = CGRectMake(50, 100, 100, 50);
[btn1 setTitle: @"BTN1" forState:UIControlStateNormal];
[btn1 addTarget:self action:@selector(btn1Clicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
btn2 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn2.frame = CGRectMake(200, 100, 100, 50);
[btn2 setTitle: @"BTN2" forState:UIControlStateNormal];
[btn2 addTarget:self action:@selector(btn2Clicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn2];
}
-( void)btn1Clicked:(id)sender
{
if ([self respondsToSelector:@selector(testRespond1)])
{
[self testRespond1];
}
}
-( void)btn2Clicked:(id)sender
{
if (![self respondsToSelector:@selector(notTest)])
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message: @"notTest 没有被实现" delegate:nil cancelButtonTitle: @"OK" otherButtonTitles:nil, nil];
[alert show];
[alert release];
}
}
-( void)testRespond1
{
label1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 200, 220, 200)];
label1.text = @"testRespond1 被实现了";
[self.view addSubview:label1];
[label1 release];
}
- ( void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
-( void)dealloc
{
[super dealloc];
}
@end
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
运行结果
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
转载于:https://blog.51cto.com/mkhgg/733114