您的位置:首页 > 产品设计 > UI/UE

IOS_UI_TouchView

2015-09-07 14:31 411 查看
#import <UIKit/UIKit.h>

@interface AppDelegate :
UIResponder <UIApplicationDelegate>

@property (strong,
nonatomic) UIWindow *window;

@end

#import "AppDelegate.h"

#import "MainViewController.h"

@interface
AppDelegate ()

@end

@implementation AppDelegate

- (void)dealloc

{

[_window release];

[super dealloc];

}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

self.window = [[UIWindow
alloc] initWithFrame:[[UIScreen
mainScreen] bounds]];

// Override point for customization after application launch.

self.window.backgroundColor = [UIColor
whiteColor];

[self.window
makeKeyAndVisible];

[_window release];

MainViewController *mainVC = [[MainViewController
alloc]init];

self.window.rootViewController = mainVC;

[mainVC release];

return
YES;

}

#import <UIKit/UIKit.h>

@interface MainViewController :
UIViewController

@end

#import "MainViewController.h"

#import "TouchView.h"

@interface
MainViewController ()

@end

@implementation MainViewController

- (void)viewDidLoad {

[super
viewDidLoad];

// Do any additional setup after loading the view.

//定义视图实现点击

TouchView *touchV = [[TouchView
alloc] initWithFrame:CGRectMake(20,
20, 235,
235)];

touchV.backgroundColor = [UIColor
redColor];

[self.view
addSubview:touchV];

[touchV release];

touchV.target =
self;

touchV.action =
@selector(touchAction:);

}

- (void)touchAction:(TouchView *)view

{

NSLog(@"touchView被点击了");

}

#import <UIKit/UIKit.h>

@interface TouchView :
UIView

//执行方法的对象

@property (nonatomic,assign)
id target;

//target对象的一个方法

@property (nonatomic,assign)
SEL action;

@end

#import "TouchView.h"

@implementation TouchView

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

CGFloat red =
arc4random()%256/255.0;

CGFloat green =
arc4random()%256/255.0;

CGFloat blue =
arc4random()%256/255.0;

self.backgroundColor = [UIColor
colorWithRed:red green:green
blue:blue alpha:1.0];

NSLog(@"点击");

//让target调用action方法

//就 target和action 具体是什么,TouchView本身不需要关心.

[self.target
performSelectorInBackground:self.action
withObject:nil];

}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: