diff --git a/app/src/main/java/com/maxistar/textpad/activities/SettingsActivity.java b/app/src/main/java/com/maxistar/textpad/activities/SettingsActivity.java
index e4e0fcc..ef7dea7 100644
--- a/app/src/main/java/com/maxistar/textpad/activities/SettingsActivity.java
+++ b/app/src/main/java/com/maxistar/textpad/activities/SettingsActivity.java
@@ -2,7 +2,6 @@
import java.nio.charset.Charset;
import java.util.ArrayList;
-import java.util.Locale;
import java.util.Map;
import android.app.AlertDialog;
@@ -11,7 +10,6 @@
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
-import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
import android.preference.ListPreference;
@@ -154,7 +152,7 @@ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, Strin
SettingsService.SETTING_FONT_SIZE.equals(key) ||
SettingsService.SETTING_USE_SIMPLE_SCROLLING.equals(key)
) {
- String lang = sharedPreferences.getString(SettingsService.SETTING_LANGUAGE, TPStrings.EN);
+ String lang = sharedPreferences.getString(SettingsService.SETTING_LANGUAGE, TPStrings.EMPTY);
setLocale(lang);
SettingsService.setLanguageChangedFlag();
}
@@ -170,12 +168,7 @@ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, Strin
public void setLocale(String lang) {
- Locale locale2 = new Locale(lang);
- Locale.setDefault(locale2);
- Configuration config2 = new Configuration();
- config2.locale = locale2;
-
- getBaseContext().getResources().updateConfiguration(config2, null);
+ SettingsService.applyLocale(getBaseContext(), lang);
showPreferences();
}
@@ -184,4 +177,4 @@ protected void showPreferences(){
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/com/maxistar/textpad/service/SettingsService.java b/app/src/main/java/com/maxistar/textpad/service/SettingsService.java
index a88d67d..42f112f 100644
--- a/app/src/main/java/com/maxistar/textpad/service/SettingsService.java
+++ b/app/src/main/java/com/maxistar/textpad/service/SettingsService.java
@@ -3,6 +3,7 @@
import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.Configuration;
+import android.content.res.Resources;
import android.preference.PreferenceManager;
import com.maxistar.textpad.TPStrings;
@@ -250,17 +251,28 @@ static public boolean isLanguageWasChanged() {
}
public void applyLocale(Context context) {
- String lang = getLanguage();
- if ("".equals(lang)) {
- return; //use system default
- }
- Locale locale2 = new Locale(lang);
+ applyLocale(context, getLanguage());
+ }
+
+ public static void applyLocale(Context context, String language) {
+ Locale locale2 = getLocale(language);
Locale.setDefault(locale2);
Configuration config2 = new Configuration();
config2.locale = locale2;
context.getResources().updateConfiguration(config2, null);
}
+ private static Locale getLocale(String language) {
+ if (language == null || TPStrings.EMPTY.equals(language)) {
+ return Resources.getSystem().getConfiguration().locale;
+ }
+ String[] parts = language.split("[-_]");
+ if (parts.length >= 2) {
+ return new Locale(parts[0], parts[1]);
+ }
+ return new Locale(language);
+ }
+
public boolean isAlternativeFileAccess() {
return alternative_file_access;
}
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..2339f3a
--- /dev/null
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -0,0 +1,110 @@
+
+
+
+ 简单文本编辑器
+ 简单文本编辑器 - 设置
+ 打开
+ 打开最近的文件
+ 新建
+ 保存
+ 另存为
+ 位置: %s
+ 选择
+ 文件名:
+ 取消
+ 新建
+ 没有数据
+ 文件没有保存
+ 保存当前文件?
+ 是
+ 否
+ 确认
+ 文件已保存
+ 文件不可写
+ 打开文件 %s
+ 未发现文件
+ 无法读取文件
+ 取消操作
+ 设置
+ 关于
+ 继续
+ 这是一个Android的简单文本编辑器,想获取更多信息请访问 https://simpleditor.org 。
+ 选择语言
+ 语言
+ 更换界面语言
+ 检索
+ 请输入文本
+ 没有发现 \"%s\"
+ 打开上次编辑的文件 %s
+ 搜索
+ 选择颜色
+ 打开文件
+ 保存文件
+ 点击设置字符集
+ 字符集
+ 行尾
+ 行尾定界符
+ 文字大小
+ 选择文字大小
+ 文字颜色
+ 选择文字颜色
+ 背景色
+ 选择背景色
+ 版本
+ 仅供参考
+ 关于作者
+ 产品信息
+ 字体
+ 选择字体
+ 最近打开
+ 打开上一次编辑的文件
+ 主要设置
+ 外观
+ 您已经修改了文件内容
+ 您确定退出程序吗?
+ 文件已存在
+ 继续操作会覆盖已存在的文件, 确定执行?
+ 退出
+ 在此输入些东西
+ 遗留文件选择器
+ 使用遗留的文件选择器
+ 编辑
+ 撤销
+ 重做
+ 文件系统访问
+ 替代文件路径
+ 如果未授予文件系统权限,则允许为文件分配备用地址。
+ 重置替代文件路径
+ 单击此处重置存储的替代文件路径
+ 无法使用文件系统名称打开文件,您要使用媒体管理器选择此文件吗?
+ 您确定要删除存储的替代文件路径吗?
+ 默认颜色
+ 选择文本突出显示颜色
+ 文本高亮颜色
+ 选择搜索结果突出显示颜色
+ 搜索结果突出显示颜色
+ 显示上次编辑的文件
+ 在选项菜单中显示最后编辑的文件
+ 自动保存
+ 关闭窗口时自动保存当前正在编辑的文件
+ 自动换行
+ 当文本过长时自动换行
+ 打开其他…
+ 分享…
+ 打印
+ 颜色主题
+ 选择系统主题
+ 自动
+ 明亮
+ 深色
+ 自定义
+ 使用唤醒锁定
+ 阻止设备进入睡眠模式
+ 此文件以只读模式打开。您可以另存为其他名称,或使用应用菜单中的“打开”命令重新打开。
+ 点击此处了解更多信息。
+ 警告:文件为只读!
+ 重新打开
+ 以只读模式继续
+ 修复滚动问题
+ 如果文本在滚动时意外跳转到末尾,请启用此选项
+
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..62fda5f
--- /dev/null
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -0,0 +1,109 @@
+
+
+ 簡易文字編輯器
+ 簡易文字編輯器 - 設定
+ 開啟
+ 開啟最近的檔案
+ 開啟新檔
+ 儲存
+ 另存新檔
+ 位置:%s
+ 選擇
+ 檔案名稱:
+ 取消
+ 儲存
+ 沒有資料
+ 檔案尚未儲存:
+ 是否儲存目前的檔案?
+ 是
+ 否
+ 確認
+ 檔案已儲存
+ 無法寫入檔案
+ 開啟檔案 %s
+ 找不到檔案
+ 無法讀取檔案
+ 操作已取消
+ 設定
+ 關於
+ 繼續
+ 此為 Android 的簡易文字編輯器。若要取得更多資訊請前往 https://simpleditor.org
+ 選擇語言
+ 語言
+ 點擊以變更介面的語言
+ 搜尋
+ 文字
+ 找不到「%s」
+ 開啟最後編輯的檔案 %s
+ 搜尋
+ 選擇色彩
+ 開啟檔案
+ 儲存檔案
+ 點擊以變更字元編碼
+ 字元編碼
+ 行尾
+ 換行格式
+ 字型大小
+ 選擇字型大小
+ 字型色彩
+ 選擇字型色彩
+ 背景色彩
+ 選擇背景色彩
+ 版本
+ 僅供參考
+ 關於編輯器
+ 保固資訊
+ 字型
+ 選擇字型類型
+ 開啟最後
+ 開啟最後編輯的檔案
+ 主要設定
+ 外觀
+ 您已進行了一些變更。
+ 您是否確認您想要離開此應用程式?
+ 檔案已經存在
+ 已經存在的檔案將會被覆蓋,您是否確認要繼續?
+ 退出
+ 在此輸入某些東西
+ 傳統檔案選取器
+ 使用傳統檔案選取器
+ 編輯
+ 復原
+ 取消復原
+ 檔案系統存取
+ 替代檔案路徑
+ 如果沒有檔案系統授權,則允許檔案分配備用位址。
+ 重置替代檔案路徑
+ 點擊此處以重置儲存的替代檔案路徑
+ 無法使用檔案系統名稱開啟檔案,您是否想要使用媒體管理器選擇此檔案?
+ 您是否確認您想要刪除儲存的替代檔案路徑?
+ 預設色彩
+ 選擇文字突顯顏色
+ 文字突顯顏色
+ 選擇搜尋結果突顯顏色
+ 搜尋結果突顯顏色
+ 顯示最後編輯的檔案
+ 在選項選單中顯示最後編輯的檔案
+ 自動儲存
+ 當視窗關閉時自動地儲存目前編輯的檔案
+ 文字過長時自動換行
+ 開啟其它…
+ 分享…
+ 列印
+ 色彩主題
+ 選擇系統主題
+ 自動
+ 淺色
+ 深色
+ 自訂
+ 使用喚醒鎖定
+ 防止裝置進入睡眠模式
+ 此檔案以唯讀模式開啟。您可以另存為其他名稱,或使用應用程式選單中的「開啟」命令重新開啟。
+ 按一下這裡了解更多資訊。
+ 警告:檔案為唯讀!
+ 重新開啟
+ 以唯讀模式繼續
+ 修正捲動問題
+ 如果文字在捲動時意外跳到末尾,請啟用此選項
+ 自動換行
+
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml
index 6ee8616..2339f3a 100644
--- a/app/src/main/res/values-zh/strings.xml
+++ b/app/src/main/res/values-zh/strings.xml
@@ -4,6 +4,7 @@
简单文本编辑器
简单文本编辑器 - 设置
打开
+ 打开最近的文件
新建
保存
另存为
@@ -33,7 +34,7 @@
更换界面语言
检索
请输入文本
- 没有发现 "%s"
+ 没有发现 \"%s\"
打开上次编辑的文件 %s
搜索
选择颜色
@@ -51,7 +52,7 @@
选择背景色
版本
仅供参考
- 关于编辑器
+ 关于作者
产品信息
字体
选择字体
@@ -70,8 +71,6 @@
编辑
撤销
重做
- 打开最近的文件
-
文件系统访问
替代文件路径
如果未授予文件系统权限,则允许为文件分配备用地址。
@@ -79,7 +78,6 @@
单击此处重置存储的替代文件路径
无法使用文件系统名称打开文件,您要使用媒体管理器选择此文件吗?
您确定要删除存储的替代文件路径吗?
-
默认颜色
选择文本突出显示颜色
文本高亮颜色
@@ -89,22 +87,19 @@
在选项菜单中显示最后编辑的文件
自动保存
关闭窗口时自动保存当前正在编辑的文件
- 当文本过长时自动换行
自动换行
- 打开其他...
- 分享
+ 当文本过长时自动换行
+ 打开其他…
+ 分享…
打印
-
颜色主题
选择系统主题
自动
- 浅色
+ 明亮
深色
自定义
-
- 使用唤醒锁
- 防止设备进入睡眠模式
-
+ 使用唤醒锁定
+ 阻止设备进入睡眠模式
此文件以只读模式打开。您可以另存为其他名称,或使用应用菜单中的“打开”命令重新打开。
点击此处了解更多信息。
警告:文件为只读!
@@ -112,5 +107,4 @@
以只读模式继续
修复滚动问题
如果文本在滚动时意外跳转到末尾,请启用此选项
-
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 5a08531..3f41afa 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -13,7 +13,8 @@
- Français
- Italiano
- Türk
- - 中文
+ - 简体中文
+ - 繁體中文
- 日本語
@@ -30,7 +31,8 @@
- fr
- it
- tr
- - zh
+ - zh-CN
+ - zh-TW
- ja
@@ -62,4 +64,4 @@
- dark
- custom
-
\ No newline at end of file
+