2
This commit is contained in:
@@ -889,12 +889,24 @@ edgeSpacerMultiplier:(CGFloat)edgeSpacerMultiplier {
|
||||
}
|
||||
|
||||
- (KBKeyboardLayout *)kb_currentLayout {
|
||||
NSString *baseLayoutName = self.currentLayoutJsonId.length > 0 ? self.currentLayoutJsonId : @"letters";
|
||||
|
||||
if (self.layoutStyle == KBKeyboardLayoutStyleNumbers) {
|
||||
// 优先查找当前语言的数字/符号布局,如 letters_es_numbers / letters_es_symbols
|
||||
// 如果不存在,回退到通用布局 numbers / symbolsMore
|
||||
NSString *numbersName = [NSString stringWithFormat:@"%@_numbers", baseLayoutName];
|
||||
NSString *symbolsName = [NSString stringWithFormat:@"%@_symbols", baseLayoutName];
|
||||
NSString *targetName = self.symbolsMoreOn ? symbolsName : numbersName;
|
||||
|
||||
KBKeyboardLayout *layout = [self kb_layoutForName:targetName];
|
||||
if (layout && layout.rows.count >= 4) {
|
||||
return layout;
|
||||
}
|
||||
// 回退到通用布局
|
||||
return [self kb_layoutForName:(self.symbolsMoreOn ? @"symbolsMore" : @"numbers")];
|
||||
}
|
||||
// 使用当前设置的 layoutJsonId,如果为空则回退到 "letters"
|
||||
NSString *layoutName = self.currentLayoutJsonId.length > 0 ? self.currentLayoutJsonId : @"letters";
|
||||
return [self kb_layoutForName:layoutName];
|
||||
|
||||
return [self kb_layoutForName:baseLayoutName];
|
||||
}
|
||||
|
||||
- (void)reloadLayoutWithProfileId:(NSString *)profileId {
|
||||
|
||||
Reference in New Issue
Block a user