blob: 520a7f702585a80113243c82c0177fc7c353bbc9 [file] [log] [blame]
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ButtonFactory.h"
@interface PlatformButton: NSObject<FlutterPlatformView>
@property (strong, nonatomic) UIButton *button;
@property (assign, nonatomic) int counter;
@end
@implementation PlatformButton
- (instancetype)init
{
self = [super init];
if (self) {
_counter = 0;
_button = [[UIButton alloc] init];
[_button setTitle:@"Initial Button Title" forState:UIControlStateNormal];
[_button addTarget:self action:@selector(buttonTapped) forControlEvents:UIControlEventTouchUpInside];
}
return self;
}
- (UIView *)view {
return self.button;
}
- (void)buttonTapped {
self.counter += 1;
NSString *title = [NSString stringWithFormat:@"Button Tapped %d", self.counter];
[self.button setTitle:title forState:UIControlStateNormal];
}
@end
@implementation ButtonFactory
- (NSObject<FlutterPlatformView> *)createWithFrame:(CGRect)frame viewIdentifier:(int64_t)viewId arguments:(id)args {
return [[PlatformButton alloc] init];
}
@end