2
This commit is contained in:
@@ -595,7 +595,7 @@ static void KBULDarwinCallback(CFNotificationCenterRef center, void *observer, C
|
|||||||
_deleteButtonInternal.layer.cornerRadius = 12.0;
|
_deleteButtonInternal.layer.cornerRadius = 12.0;
|
||||||
_deleteButtonInternal.layer.masksToBounds = YES;
|
_deleteButtonInternal.layer.masksToBounds = YES;
|
||||||
_deleteButtonInternal.titleLabel.font = [UIFont systemFontOfSize:16 weight:UIFontWeightSemibold];
|
_deleteButtonInternal.titleLabel.font = [UIFont systemFontOfSize:16 weight:UIFontWeightSemibold];
|
||||||
[_deleteButtonInternal setTitle:KBLocalized(@"删除") forState:UIControlStateNormal];
|
[_deleteButtonInternal setTitle:KBLocalized(@"Delete") forState:UIControlStateNormal];
|
||||||
[_deleteButtonInternal setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
|
[_deleteButtonInternal setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
|
||||||
[_deleteButtonInternal addTarget:self action:@selector(onTapDelete) forControlEvents:UIControlEventTouchUpInside];
|
[_deleteButtonInternal addTarget:self action:@selector(onTapDelete) forControlEvents:UIControlEventTouchUpInside];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
"请切换到主App完成登录" = "Please switch to the main app to finish signing in";
|
"请切换到主App完成登录" = "Please switch to the main app to finish signing in";
|
||||||
|
|
||||||
// Generic buttons & tips
|
// Generic buttons & tips
|
||||||
"好" = "OK";
|
"OK" = "OK";
|
||||||
"Confirm" = "Confirm";
|
"Confirm" = "Confirm";
|
||||||
"Cancel" = "Cancel";
|
"Cancel" = "Cancel";
|
||||||
"Close" = "Close";
|
"Close" = "Close";
|
||||||
@@ -80,8 +80,8 @@
|
|||||||
"Shop" = "Shop";
|
"Shop" = "Shop";
|
||||||
"Circle" = "Circle";
|
"Circle" = "Circle";
|
||||||
"Mine" = "Mine";
|
"Mine" = "Mine";
|
||||||
"热门" = "Hot";
|
"Hot" = "Hot";
|
||||||
"排行" = "Rank";
|
"Rank" = "Rank";
|
||||||
|
|
||||||
// Search & history
|
// Search & history
|
||||||
"Clear history" = "Clear history";
|
"Clear history" = "Clear history";
|
||||||
@@ -91,14 +91,14 @@
|
|||||||
"Loaded more successfully" = "Loaded more successfully";
|
"Loaded more successfully" = "Loaded more successfully";
|
||||||
|
|
||||||
// Skins & shop
|
// Skins & shop
|
||||||
"皮肤中心" = "Skin Center";
|
"Skin Center" = "Skin Center";
|
||||||
"No skins yet" = "No skins yet";
|
"No skins yet" = "No skins yet";
|
||||||
"Pull down to refresh" = "Pull down to refresh";
|
"Pull down to refresh" = "Pull down to refresh";
|
||||||
"下载并应用" = "Download & Apply";
|
"Download & Apply" = "Download & Apply";
|
||||||
"已应用,切到键盘查看" = "Applied. Switch to the keyboard to view.";
|
"Applied. Switch to the keyboard to view." = "Applied. Switch to the keyboard to view.";
|
||||||
"应用失败" = "Apply failed";
|
"Apply failed" = "Apply failed";
|
||||||
"Open agreement" = "Open agreement";
|
"Open agreement" = "Open agreement";
|
||||||
"购物商城" = "Shop Mall";
|
"Shop Mall" = "Shop Mall";
|
||||||
|
|
||||||
// Skin sample names
|
// Skin sample names
|
||||||
"极光" = "Aurora";
|
"极光" = "Aurora";
|
||||||
@@ -126,7 +126,7 @@
|
|||||||
// Payment & IAP
|
// Payment & IAP
|
||||||
"Payment successful" = "Payment successful";
|
"Payment successful" = "Payment successful";
|
||||||
"Payment failed" = "Payment failed";
|
"Payment failed" = "Payment failed";
|
||||||
"购买:%@ Coins %@" = "Purchase: %@ Coins %@";
|
"Purchase: %@ Coins %@" = "Purchase: %@ Coins %@";
|
||||||
"Pay clicked" = "Pay clicked";
|
"Pay clicked" = "Pay clicked";
|
||||||
|
|
||||||
// Example categories/items
|
// Example categories/items
|
||||||
|
|||||||
@@ -19,47 +19,44 @@
|
|||||||
"current_lang" = "当前:%@";
|
"current_lang" = "当前:%@";
|
||||||
"common_back" = "返回";
|
"common_back" = "返回";
|
||||||
|
|
||||||
// 登录与账号
|
// 登录与账号(以英文 key 为准)
|
||||||
"登录" = "登录";
|
"Log In" = "登录";
|
||||||
"登录成功" = "登录成功";
|
"Signed in successfully" = "登录成功";
|
||||||
"登录失败" = "登录失败";
|
"Sign-in failed" = "登录失败";
|
||||||
"登录后可使用全部功能" = "登录后可使用全部功能";
|
"Sign in to unlock all features" = "登录后可使用全部功能";
|
||||||
"我们将使用 Apple 进行快速安全登录" = "我们将使用 Apple 进行快速安全登录";
|
"We'll use Apple for a quick, secure sign-in" = "我们将使用 Apple 进行快速安全登录";
|
||||||
"Apple 登录需要 iOS 13 及以上版本" = "Apple 登录需要 iOS 13 及以上版本";
|
"Apple 登录需要 iOS 13 及以上版本" = "Apple 登录需要 iOS 13 及以上版本";
|
||||||
"需要 iOS13+ 才能使用 Apple 登录" = "需要 iOS13+ 才能使用 Apple 登录";
|
"Sign in with Apple requires iOS 13 or later" = "需要 iOS13+ 才能使用 Apple 登录";
|
||||||
"无效的登录凭证" = "无效的登录凭证";
|
"Invalid login credential" = "无效的登录凭证";
|
||||||
"未返回 token" = "未返回 token";
|
"No token returned" = "未返回 token";
|
||||||
"保存登录态失败" = "保存登录态失败";
|
"Failed to save login state" = "保存登录态失败";
|
||||||
"请切换到主App完成登录" = "请切换到主App完成登录";
|
"请切换到主App完成登录" = "请切换到主App完成登录";
|
||||||
|
|
||||||
// 英文 key 映射(用于代码中直接使用英文 key)
|
// 通用按钮与提示(英文 key)
|
||||||
"Failed to save login state" = "保存登录态失败";
|
"OK" = "好";
|
||||||
|
"Confirm" = "确定";
|
||||||
|
"Cancel" = "取消";
|
||||||
|
"Close" = "关闭";
|
||||||
|
"Delete" = "删除";
|
||||||
|
"Clear" = "清空";
|
||||||
|
"Paste" = "粘贴";
|
||||||
|
"Send" = "发送";
|
||||||
|
"Retry" = "重试";
|
||||||
|
"Success" = "成功";
|
||||||
|
"Failed" = "失败";
|
||||||
|
"Network error" = "网络错误";
|
||||||
|
"Saved" = "已保存";
|
||||||
|
"Copy Success" = "复制成功";
|
||||||
|
|
||||||
// 通用按钮与提示
|
// 网络相关(英文 key)
|
||||||
"好" = "好";
|
"Network unavailable" = "网络不可用";
|
||||||
"确定" = "确定";
|
"Network disabled (Full Access may be off)" = "网络未启用(可能未开启完全访问)";
|
||||||
"取消" = "取消";
|
"Invalid URL" = "无效的URL";
|
||||||
"关闭" = "关闭";
|
"Invalid response" = "无效的响应";
|
||||||
"删除" = "删除";
|
"No data" = "无数据";
|
||||||
"清空" = "清空";
|
"Failed to parse JSON" = "JSON解析失败";
|
||||||
"粘贴" = "粘贴";
|
"Parse failed" = "解析失败";
|
||||||
"发送" = "发送";
|
"No data received" = "未获取到数据";
|
||||||
"重试" = "重试";
|
|
||||||
"成功" = "成功";
|
|
||||||
"失败" = "失败";
|
|
||||||
"网络错误" = "网络错误";
|
|
||||||
"已保存" = "已保存";
|
|
||||||
"复制成功" = "复制成功";
|
|
||||||
|
|
||||||
// 网络相关
|
|
||||||
"网络不可用" = "网络不可用";
|
|
||||||
"网络未启用(可能未开启完全访问)" = "网络未启用(可能未开启完全访问)";
|
|
||||||
"无效的URL" = "无效的URL";
|
|
||||||
"无效的响应" = "无效的响应";
|
|
||||||
"无数据" = "无数据";
|
|
||||||
"JSON解析失败" = "JSON解析失败";
|
|
||||||
"解析失败" = "解析失败";
|
|
||||||
"未获取到数据" = "未获取到数据";
|
|
||||||
"请求失败\nURL: %@\n状态: %ld\n错误: %@\nUserInfo: %@" = "请求失败\nURL: %@\n状态: %ld\n错误: %@\nUserInfo: %@";
|
"请求失败\nURL: %@\n状态: %ld\n错误: %@\nUserInfo: %@" = "请求失败\nURL: %@\n状态: %ld\n错误: %@\nUserInfo: %@";
|
||||||
"响应成功(JSON)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@" = "响应成功(JSON)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@";
|
"响应成功(JSON)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@" = "响应成功(JSON)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@";
|
||||||
"响应成功(Data)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@" = "响应成功(Data)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@";
|
"响应成功(Data)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@" = "响应成功(Data)\nURL: %@\n状态: %ld\nContent-Type: %@\n数据: %@";
|
||||||
@@ -69,41 +66,40 @@
|
|||||||
"网络不可用\n请在“设置”中检查本应用的无线数据权限或网络连接。" = "网络不可用\n请在“设置”中检查本应用的无线数据权限或网络连接。";
|
"网络不可用\n请在“设置”中检查本应用的无线数据权限或网络连接。" = "网络不可用\n请在“设置”中检查本应用的无线数据权限或网络连接。";
|
||||||
"请在“设置”中检查本应用的无线数据权限或网络连接。" = "请在“设置”中检查本应用的无线数据权限或网络连接。";
|
"请在“设置”中检查本应用的无线数据权限或网络连接。" = "请在“设置”中检查本应用的无线数据权限或网络连接。";
|
||||||
|
|
||||||
// 权限与引导
|
// 权限与引导(英文 key)
|
||||||
"使用引导" = "使用引导";
|
"Usage Guide" = "使用引导";
|
||||||
"开启【允许完全访问】,体验完整功能" = "开启【允许完全访问】,体验完整功能";
|
"Turn on Allow Full Access to experience all features" = "开启【允许完全访问】,体验完整功能";
|
||||||
"允许完全访问" = "允许完全访问";
|
"Allow Full Access" = "允许完全访问";
|
||||||
"请按路径:设置→通用→键盘→键盘→%@→允许完全访问" = "请按路径:设置→通用→键盘→键盘→%@→允许完全访问";
|
"Follow: Settings → General → Keyboard → Keyboards → %@ → Allow Full Access" = "请按路径:设置→通用→键盘→键盘→%@→允许完全访问";
|
||||||
"去开启" = "去开启";
|
"Go enable" = "去开启";
|
||||||
"去设置" = "去设置";
|
"Open Settings" = "去设置";
|
||||||
"网络未启用(可能未开启完全访问)" = "网络未启用(可能未开启完全访问)";
|
"After pasting the conversation in the keyboard, choose a reply style" = "在键盘粘贴对话后,选择回复方式";
|
||||||
"在键盘粘贴对话后,选择回复方式" = "在键盘粘贴对话后,选择回复方式";
|
"Current: %@" = "当前:%@";
|
||||||
"当前:%@" = "当前:%@";
|
|
||||||
|
|
||||||
// 首页 / Tab 文案
|
// 首页 / Tab 文案(英文 key)
|
||||||
"首页" = "首页";
|
"Home" = "首页";
|
||||||
"商城" = "商城";
|
"Shop" = "商城";
|
||||||
"社区" = "社区";
|
"Circle" = "社区";
|
||||||
"我的" = "我的";
|
"Mine" = "我的";
|
||||||
"热门" = "热门";
|
"Hot" = "热门";
|
||||||
"排行" = "排行";
|
"Rank" = "排行";
|
||||||
|
|
||||||
// 搜索与历史
|
// 搜索与历史(英文 key)
|
||||||
"清空历史" = "清空历史";
|
"Clear history" = "清空历史";
|
||||||
"是否删除所有历史记录?" = "是否删除所有历史记录?";
|
"Delete all history?" = "是否删除所有历史记录?";
|
||||||
"删除该标签?" = "删除该标签?";
|
"Delete this tag?" = "删除该标签?";
|
||||||
"删除后不可恢复" = "删除后不可恢复";
|
"This action cannot be undone" = "删除后不可恢复";
|
||||||
"加载更多成功" = "加载更多成功";
|
"Loaded more successfully" = "加载更多成功";
|
||||||
|
|
||||||
// 皮肤与商城
|
// 皮肤与商城(英文 key)
|
||||||
"皮肤中心" = "皮肤中心";
|
"Skin Center" = "皮肤中心";
|
||||||
"暂无皮肤" = "暂无皮肤";
|
"No skins yet" = "暂无皮肤";
|
||||||
"下拉刷新试试" = "下拉刷新试试";
|
"Pull down to refresh" = "下拉刷新试试";
|
||||||
"下载并应用" = "下载并应用";
|
"Download & Apply" = "下载并应用";
|
||||||
"已应用,切到键盘查看" = "已应用,切到键盘查看";
|
"Applied. Switch to the keyboard to view." = "已应用,切到键盘查看";
|
||||||
"应用失败" = "应用失败";
|
"Apply failed" = "应用失败";
|
||||||
"跳转协议" = "跳转协议";
|
"Open agreement" = "跳转协议";
|
||||||
"购物商城" = "购物商城";
|
"Shop Mall" = "购物商城";
|
||||||
|
|
||||||
// 皮肤示例名称
|
// 皮肤示例名称
|
||||||
"极光" = "极光";
|
"极光" = "极光";
|
||||||
@@ -128,10 +124,10 @@
|
|||||||
"🎉 如您遇到其他问题,可点击在线客服帮您解决~" = "🎉 如您遇到其他问题,可点击在线客服帮您解决~";
|
"🎉 如您遇到其他问题,可点击在线客服帮您解决~" = "🎉 如您遇到其他问题,可点击在线客服帮您解决~";
|
||||||
"👋 欢迎使用『Lovekey 键盘』" = "👋 欢迎使用『Lovekey 键盘』";
|
"👋 欢迎使用『Lovekey 键盘』" = "👋 欢迎使用『Lovekey 键盘』";
|
||||||
|
|
||||||
// 支付与内购
|
// 支付与内购(英文 key)
|
||||||
"支付成功" = "支付成功";
|
"Payment successful" = "支付成功";
|
||||||
"支付失败" = "支付失败";
|
"Payment failed" = "支付失败";
|
||||||
"购买:%@ Coins %@" = "购买:%@ Coins %@";
|
"Purchase: %@ Coins %@" = "购买:%@ Coins %@";
|
||||||
"Pay clicked" = "Pay clicked";
|
"Pay clicked" = "Pay clicked";
|
||||||
|
|
||||||
// 示例商品/分类
|
// 示例商品/分类
|
||||||
@@ -187,11 +183,10 @@
|
|||||||
"橡胶大蛇炮" = "橡胶大蛇炮";
|
"橡胶大蛇炮" = "橡胶大蛇炮";
|
||||||
|
|
||||||
// 其它
|
// 其它
|
||||||
"测试" = "测试";
|
"Test" = "测试";
|
||||||
"暂无数据" = "暂无数据";
|
"暂无数据" = "暂无数据"; // 已有英文 key "No data"
|
||||||
"这里是设置内容占位" = "这里是设置内容占位";
|
"Settings" = "设置";
|
||||||
"设置" = "设置";
|
"Usage Guide" = "使用引导";
|
||||||
"使用引导" = "使用引导";
|
|
||||||
"螃蟹啊斯柯达积分卡" = "螃蟹啊斯柯达积分卡";
|
"螃蟹啊斯柯达积分卡" = "螃蟹啊斯柯达积分卡";
|
||||||
"❎不是自己的键盘" = "❎不是自己的键盘";
|
"❎不是自己的键盘" = "❎不是自己的键盘";
|
||||||
"是自己的键盘" = "是自己的键盘";
|
"是自己的键盘" = "是自己的键盘";
|
||||||
|
|||||||
@@ -44,7 +44,7 @@
|
|||||||
|
|
||||||
// 社区
|
// 社区
|
||||||
KBCommunityVC *community = [[KBCommunityVC alloc] init];
|
KBCommunityVC *community = [[KBCommunityVC alloc] init];
|
||||||
community.title = KBLocalized(@"社区");
|
// community.title = KBLocalized(@"Circle");
|
||||||
BaseNavigationController *navCommunity = [[BaseNavigationController alloc] initWithRootViewController:community];
|
BaseNavigationController *navCommunity = [[BaseNavigationController alloc] initWithRootViewController:community];
|
||||||
navCommunity.tabBarItem = [self tabItemWithTitle:KBLocalized(@"Circle")
|
navCommunity.tabBarItem = [self tabItemWithTitle:KBLocalized(@"Circle")
|
||||||
image:@"tab_shequ"
|
image:@"tab_shequ"
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ static __weak UIViewController *sDefaultPresenter = nil; // 可选外部指定
|
|||||||
[self _markFinishedAndContinue];
|
[self _markFinishedAndContinue];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
NSString *ok = button ?: (NSLocalizedString(@"OK", nil).length ? NSLocalizedString(@"OK", nil) : KBLocalized(@"好"));
|
NSString *ok = button ?: (NSLocalizedString(@"OK", nil).length ? NSLocalizedString(@"OK", nil) : KBLocalized(@"OK"));
|
||||||
UIAlertController *ac = [UIAlertController alertControllerWithTitle:(title ?: @"")
|
UIAlertController *ac = [UIAlertController alertControllerWithTitle:(title ?: @"")
|
||||||
message:(message ?: @"")
|
message:(message ?: @"")
|
||||||
preferredStyle:UIAlertControllerStyleAlert];
|
preferredStyle:UIAlertControllerStyleAlert];
|
||||||
|
|||||||
@@ -137,7 +137,7 @@
|
|||||||
|
|
||||||
// 两个按钮
|
// 两个按钮
|
||||||
self.hotButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
self.hotButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
[self.hotButton setTitle:KBLocalized(@"热门") forState:UIControlStateNormal];
|
[self.hotButton setTitle:KBLocalized(@"Hot") forState:UIControlStateNormal];
|
||||||
[self.hotButton setTitleColor:[UIColor darkTextColor] forState:UIControlStateNormal];
|
[self.hotButton setTitleColor:[UIColor darkTextColor] forState:UIControlStateNormal];
|
||||||
[self.hotButton setTitleColor:[UIColor blackColor] forState:UIControlStateSelected];
|
[self.hotButton setTitleColor:[UIColor blackColor] forState:UIControlStateSelected];
|
||||||
self.hotButton.titleLabel.font = [UIFont boldSystemFontOfSize:16];
|
self.hotButton.titleLabel.font = [UIFont boldSystemFontOfSize:16];
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
[self.topBar addSubview:self.hotButton];
|
[self.topBar addSubview:self.hotButton];
|
||||||
|
|
||||||
self.rankButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
self.rankButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
[self.rankButton setTitle:KBLocalized(@"排行") forState:UIControlStateNormal];
|
[self.rankButton setTitle:KBLocalized(@"Rank") forState:UIControlStateNormal];
|
||||||
[self.rankButton setTitleColor:[UIColor darkTextColor] forState:UIControlStateNormal];
|
[self.rankButton setTitleColor:[UIColor darkTextColor] forState:UIControlStateNormal];
|
||||||
[self.rankButton setTitleColor:[UIColor blackColor] forState:UIControlStateSelected];
|
[self.rankButton setTitleColor:[UIColor blackColor] forState:UIControlStateSelected];
|
||||||
self.rankButton.titleLabel.font = [UIFont boldSystemFontOfSize:16];
|
self.rankButton.titleLabel.font = [UIFont boldSystemFontOfSize:16];
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ static const CGFloat JXheightForHeaderInSection = 50;
|
|||||||
self.naviBGView.frame = CGRectMake(0, 0, KB_SCREEN_WIDTH, KB_NAV_TOTAL_HEIGHT);
|
self.naviBGView.frame = CGRectMake(0, 0, KB_SCREEN_WIDTH, KB_NAV_TOTAL_HEIGHT);
|
||||||
[self.view addSubview:self.naviBGView];
|
[self.view addSubview:self.naviBGView];
|
||||||
UILabel *naviTitleLabel = [[UILabel alloc] init];
|
UILabel *naviTitleLabel = [[UILabel alloc] init];
|
||||||
naviTitleLabel.text = KBLocalized(@"商城");
|
naviTitleLabel.text = KBLocalized(@"Shop");
|
||||||
naviTitleLabel.textAlignment = NSTextAlignmentCenter;
|
naviTitleLabel.textAlignment = NSTextAlignmentCenter;
|
||||||
naviTitleLabel.frame = CGRectMake(0, KB_STATUSBAR_HEIGHT, self.view.bounds.size.width, 44);
|
naviTitleLabel.frame = CGRectMake(0, KB_STATUSBAR_HEIGHT, self.view.bounds.size.width, 44);
|
||||||
[self.naviBGView addSubview:naviTitleLabel];
|
[self.naviBGView addSubview:naviTitleLabel];
|
||||||
|
|||||||
Reference in New Issue
Block a user