Linear Control Group
Defined in framework ScanditDataCaptureCore
- SDCLinearControlGroupOrientation
Added in version 6.14.0
The orientation in which a SDCLinearControlGroup will render its child controls.
- SDCLinearControlGroupOrientationVertical
Added in version 6.14.0
Vertical orientation.
- SDCLinearControlGroupOrientationHorizontal
Added in version 6.14.0
Horizontal orientation.
- SDCLinearControlGroup
@interface SDCLinearControlGroup : NSObject <SDCControl>
Added in version 6.14.0
A Control that contains multiple sub-controls allowing for spacing and orientation to be specified through initializer. This control will arrange child controls either horizontally in a single column or vertically in a single row. Use one of the initializers to build an instance of this control and add to a DataCaptureView by calling SDCDataCaptureView.addControl:.
For example, in Swift:
let torchControl = TorchSwitchControl() let macroModeControl = MacroModeControl() let linearControlGroup = LinearControlGroup(controls:[torchControl, macroModeControl], orientation:.horizontal); captureView.addControl(linearControlGroup)
or, in Objective-C:
SDCTorchSwitchControl *torchControl = [[SDCTorchSwitchControl alloc] init]; SDCMacroModeControl *macroModeControl = [[SDCMacroModeControl alloc] init]; SDCLinearControlGroup *linearControlGroup = [[SDCLinearControlGroup alloc] initWithControls:@[torchControl, macroModeControl] orientation:SDCLinearControlGroupOrientationHorizontal]; [self.captureView addControl:linearControlGroup];
Note
The controls are added from top to bottom when vertical, from left to right when horizontal.
- - initWithControls:
- (
instancetype
)initWithControls:(NSArray<id
<SDCControl>> *)controlsAdded in version 6.14.0
Initializes a new linear control group with controls which will be displayed inside the LinearControlGroup.
- - initWithControls:orientation:
- (
instancetype
)initWithControls:(NSArray<id
<SDCControl>> *)controls orientation:(SDCLinearControlGroupOrientation)orientationAdded in version 6.14.0
Initializes a new linear control group with controls which will be displayed inside the LinearControlGroup and specified orientation.
- - initWithControls:spacing:
- (
instancetype
)initWithControls:(NSArray<id
<SDCControl>> *)controls spacing:(SDCFloatWithUnit)spacingAdded in version 6.14.0
Initializes a new linear control group with controls which will be displayed inside the LinearControlGroup and specified spacing applied between controls inside the LinearControlGroup.
- - initWithControls:orientation:spacing:
- (
instancetype
)initWithControls:(NSArray<id
<SDCControl>> *)controls orientation:(SDCLinearControlGroupOrientation)orientation spacing:(SDCFloatWithUnit)spacingAdded in version 6.14.0
Initializes a new linear control group with controls which will be displayed inside the LinearControlGroup, specified orientation and spacing applied between controls inside the LinearControlGroup.
- + linearControlGroupFromJSONString:error:
+ (nullable
instancetype
)linearControlGroupFromJSONString:(nonnull NSString *)JSONString error:(NSError **)errorAdded in version 6.15.0
Constructs a new linear control group with the provided JSON serialization.
- orientation
@property (nonatomic, readonly) SDCLinearControlGroupOrientation orientation
Added in version 6.14.0
Get the orientation for the LinearControlGroup.
- spacing
@property (nonatomic, readonly) SDCFloatWithUnit spacing
Added in version 6.14.0
Get the spacing applied between controls inside the LinearControlGroup being built.
- controls
@property (nonatomic, nonnull, readonly) NSArray<id<SDCControl>> *controls
Added in version 6.14.0
Get the list of controls currently in this group.