This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.2 KiB
53 lines
1.2 KiB
/** |
|
* Copyright (c) 2015-present, Facebook, Inc. |
|
* |
|
* This source code is licensed under the MIT license found in the |
|
* LICENSE file in the root directory of this source tree. |
|
*/ |
|
|
|
#import "RCTSegmentedControl.h" |
|
|
|
#import "RCTConvert.h" |
|
#import "RCTEventDispatcher.h" |
|
#import "UIView+React.h" |
|
|
|
@implementation RCTSegmentedControl |
|
|
|
- (instancetype)initWithFrame:(CGRect)frame |
|
{ |
|
if ((self = [super initWithFrame:frame])) { |
|
_selectedIndex = self.selectedSegmentIndex; |
|
[self addTarget:self action:@selector(didChange) |
|
forControlEvents:UIControlEventValueChanged]; |
|
} |
|
return self; |
|
} |
|
|
|
- (void)setValues:(NSArray<NSString *> *)values |
|
{ |
|
_values = [values copy]; |
|
[self removeAllSegments]; |
|
for (NSString *value in values) { |
|
[self insertSegmentWithTitle:value atIndex:self.numberOfSegments animated:NO]; |
|
} |
|
super.selectedSegmentIndex = _selectedIndex; |
|
} |
|
|
|
- (void)setSelectedIndex:(NSInteger)selectedIndex |
|
{ |
|
_selectedIndex = selectedIndex; |
|
super.selectedSegmentIndex = selectedIndex; |
|
} |
|
|
|
- (void)didChange |
|
{ |
|
_selectedIndex = self.selectedSegmentIndex; |
|
if (_onChange) { |
|
_onChange(@{ |
|
@"value": [self titleForSegmentAtIndex:_selectedIndex], |
|
@"selectedSegmentIndex": @(_selectedIndex) |
|
}); |
|
} |
|
} |
|
|
|
@end
|
|
|