diff --git a/app/src/main/java/com/gzq/wanandroid/exit_app/ExitApp.kt b/app/src/main/java/com/gzq/wanandroid/exit_app/ExitApp.kt index ba27340..da58829 100644 --- a/app/src/main/java/com/gzq/wanandroid/exit_app/ExitApp.kt +++ b/app/src/main/java/com/gzq/wanandroid/exit_app/ExitApp.kt @@ -6,6 +6,8 @@ import androidx.compose.material3.SnackbarHostState import androidx.compose.runtime.Composable import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource +import com.gzq.wanandroid.R import com.gzq.wanandroid.features.main.LocalSnackbarHostState import kotlinx.coroutines.launch @@ -18,11 +20,13 @@ fun MyBackHandler(snackbarHostState: SnackbarHostState = LocalSnackbarHostState. val scope = rememberCoroutineScope() + val exitApp = stringResource(id = R.string.exit_app_tips) + BackHandler(enabled = true) { val curTime = System.currentTimeMillis() if (curTime - lastBackTime > 2000) { scope.launch { - snackbarHostState.showSnackbar("再按一次退出程序") + snackbarHostState.showSnackbar(exitApp) } lastBackTime = curTime } else { diff --git a/app/src/main/java/com/gzq/wanandroid/features/change_language/ChanageLanguagePage.kt b/app/src/main/java/com/gzq/wanandroid/features/change_language/ChanageLanguagePage.kt index 7ecb9a0..8f72b83 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/change_language/ChanageLanguagePage.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/change_language/ChanageLanguagePage.kt @@ -23,11 +23,13 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.navigation.NavGraphBuilder import androidx.navigation.NavHostController import androidx.navigation.compose.composable import com.gzq.wanandroid.MainActivity +import com.gzq.wanandroid.R import com.gzq.wanandroid.router.Router import com.gzq.wanandroid.widget.MyTopAppBar import com.yariksoffice.lingver.Lingver @@ -67,7 +69,7 @@ fun ChangeThemePage(clickBack: () -> Unit) { } Scaffold(topBar = { - MyTopAppBar(titleStr = "切换语言", clickBack = clickBack) + MyTopAppBar(titleStr = stringResource(id = R.string.change_language), clickBack = clickBack) }) { paddingValues -> Column( modifier = Modifier @@ -91,7 +93,10 @@ fun ChangeThemePage(clickBack: () -> Unit) { .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically ) { - Text(text = "跟随系统", modifier = Modifier.weight(1.0f)) + Text( + text = stringResource(id = R.string.follow_system), + modifier = Modifier.weight(1.0f) + ) RadioButton( selected = Lingver.getInstance().isFollowingSystemLocale(), onClick = null @@ -140,7 +145,10 @@ fun ChangeThemePage(clickBack: () -> Unit) { .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically ) { - Text(text = "英文", modifier = Modifier.weight(1.0f)) + Text( + text = stringResource(id = R.string.language_english), + modifier = Modifier.weight(1.0f) + ) RadioButton(selected = language == Locale.ENGLISH, onClick = null) } Divider(Modifier.padding(horizontal = 16.dp)) diff --git a/app/src/main/java/com/gzq/wanandroid/features/change_theme/ChanageThemePage.kt b/app/src/main/java/com/gzq/wanandroid/features/change_theme/ChanageThemePage.kt index 5328534..ac3ee24 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/change_theme/ChanageThemePage.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/change_theme/ChanageThemePage.kt @@ -19,11 +19,13 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.navigation.NavGraphBuilder import androidx.navigation.NavHostController import androidx.navigation.compose.composable import com.gzq.wanandroid.LocalKey +import com.gzq.wanandroid.R import com.gzq.wanandroid.core.quality.LogCompositions import com.gzq.wanandroid.router.Router import com.gzq.wanandroid.ui.theme.Theme @@ -51,7 +53,7 @@ fun ChangeThemePage(clickBack: () -> Unit) { LogCompositions(msg = "ChangeThemePage") Scaffold(topBar = { - MyTopAppBar(titleStr = "切换主题", clickBack = clickBack) + MyTopAppBar(titleStr = stringResource(id = R.string.change_theme), clickBack = clickBack) }) { paddingValues -> @@ -74,7 +76,10 @@ fun ChangeThemePage(clickBack: () -> Unit) { .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically ) { - Text(text = "默认", modifier = Modifier.weight(1.0f)) + Text( + text = stringResource(id = R.string.theme_default), + modifier = Modifier.weight(1.0f) + ) RadioButton(selected = theme == Theme.Default, onClick = null) } Divider(Modifier.padding(horizontal = 16.dp)) @@ -86,7 +91,10 @@ fun ChangeThemePage(clickBack: () -> Unit) { .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically ) { - Text(text = "绿色", modifier = Modifier.weight(1.0f)) + Text( + text = stringResource(id = R.string.theme_green), + modifier = Modifier.weight(1.0f) + ) RadioButton(selected = theme == Theme.Green, onClick = null) } Divider(Modifier.padding(horizontal = 16.dp)) @@ -98,7 +106,10 @@ fun ChangeThemePage(clickBack: () -> Unit) { .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically ) { - Text(text = "紫色", modifier = Modifier.weight(1.0f)) + Text( + text = stringResource(id = R.string.theme_purple), + modifier = Modifier.weight(1.0f) + ) RadioButton(selected = theme == Theme.Purple, onClick = null) } Divider(Modifier.padding(horizontal = 16.dp)) diff --git a/app/src/main/java/com/gzq/wanandroid/features/home/profile/ProfileMainPage.kt b/app/src/main/java/com/gzq/wanandroid/features/home/profile/ProfileMainPage.kt index 1e35164..9645bbb 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/home/profile/ProfileMainPage.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/home/profile/ProfileMainPage.kt @@ -1,5 +1,6 @@ package com.gzq.wanandroid.features.home.profile +import androidx.annotation.StringRes import androidx.compose.foundation.ScrollState import androidx.compose.foundation.background import androidx.compose.foundation.clickable @@ -40,7 +41,9 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Brush +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp @@ -193,7 +196,7 @@ fun ProfileMainPage( //用户名 ProfileUserNameC( - if (userInfo == null) "登录/注册" + if (userInfo == null) stringResource(id = R.string.sign_in_up) else userInfo!!.nickname ?: "" ) { scroll.value } } @@ -242,16 +245,16 @@ fun BaseUserInfo() { colors = CardDefaults.cardColors(containerColor = MaterialTheme.colorScheme.tertiaryContainer) ) { Row(Modifier.height(80.dp)) { - BaseUserInfoItem(label = "收藏", value = "4") - BaseUserInfoItem(label = "分享", value = "1") - BaseUserInfoItem(label = "积分", value = "541") - BaseUserInfoItem(label = "历史", value = "41") + BaseUserInfoItem(labelId = R.string.collection, value = "4") + BaseUserInfoItem(labelId = R.string.share, value = "1") + BaseUserInfoItem(labelId = R.string.rewards_points, value = "541") + BaseUserInfoItem(labelId = R.string.history, value = "41") } } } @Composable -fun RowScope.BaseUserInfoItem(label: String, value: String) { +fun RowScope.BaseUserInfoItem(@StringRes labelId: Int, value: String) { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, @@ -265,7 +268,7 @@ fun RowScope.BaseUserInfoItem(label: String, value: String) { style = MaterialTheme.typography.titleLarge.copy(fontWeight = FontWeight.Bold) ) Spacer(modifier = Modifier.height(10.dp)) - Text(text = label) + Text(text = stringResource(id = labelId), maxLines = 1, overflow = TextOverflow.Ellipsis) } } @@ -321,18 +324,21 @@ fun MenuNormal() { .padding(horizontal = 16.dp) ) { Text( - text = "常规", + text = stringResource(id = R.string.menu_normal), style = MaterialTheme.typography.titleMedium.copy(color = MaterialTheme.colorScheme.onSurface) ) Spacer(modifier = Modifier.height(12.dp)) Card { - ProfileMenuItemC(iconRes = R.drawable.icon_001, title = "隐私政策") { + ProfileMenuItemC(iconRes = R.drawable.icon_001, title = R.string.privacy_policy) { } - ProfileMenuItemC(iconRes = R.drawable.icon_002, title = "用户协议") { + ProfileMenuItemC(iconRes = R.drawable.icon_002, title = R.string.user_service) { } - ProfileMenuItemC(iconRes = R.drawable.icon_004, title = "开源项目") { + ProfileMenuItemC( + iconRes = R.drawable.icon_004, + title = R.string.open_source_libraries + ) { } } @@ -348,15 +354,15 @@ fun MenuSetup(launchChangeLanguagePage: () -> Unit, launchChangeThemePage: () -> .padding(horizontal = 16.dp) ) { Text( - text = "设置", + text = stringResource(id = R.string.menu_settings), style = MaterialTheme.typography.titleMedium.copy(color = MaterialTheme.colorScheme.onSurface) ) Spacer(modifier = Modifier.height(12.dp)) Card { - ProfileMenuItemC(iconRes = R.drawable.icon_001, title = "切换语言") { + ProfileMenuItemC(iconRes = R.drawable.icon_001, title = R.string.change_language) { launchChangeLanguagePage() } - ProfileMenuItemC(iconRes = R.drawable.icon_002, title = "切换主题") { + ProfileMenuItemC(iconRes = R.drawable.icon_002, title = R.string.change_theme) { launchChangeThemePage() } } @@ -372,7 +378,7 @@ fun MenuAccount(exitLogin: () -> Unit, checkUpdate: () -> Unit) { .padding(horizontal = 16.dp) ) { Text( - text = "账户", + text = stringResource(id = R.string.menu_account), style = MaterialTheme.typography.titleMedium.copy(color = MaterialTheme.colorScheme.onSurface) ) Spacer(modifier = Modifier.height(12.dp)) @@ -380,13 +386,13 @@ fun MenuAccount(exitLogin: () -> Unit, checkUpdate: () -> Unit) { if (LocalLoginState.current) { ProfileMenuItemC( iconRes = R.drawable.icon_001, - title = "退出登录", + title = R.string.sign_out, onClick = exitLogin ) } ProfileMenuItemC( iconRes = R.drawable.icon_002, - title = "检查更新", + title = R.string.check_update, onClick = checkUpdate ) } diff --git a/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/LogoutDialogC.kt b/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/LogoutDialogC.kt index 31f09af..6788774 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/LogoutDialogC.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/LogoutDialogC.kt @@ -5,6 +5,8 @@ import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.Composable +import androidx.compose.ui.res.stringResource +import com.gzq.wanandroid.R @Composable fun LogoutDialogC(onDismiss: () -> Unit, confirm: () -> Unit) { @@ -12,18 +14,18 @@ fun LogoutDialogC(onDismiss: () -> Unit, confirm: () -> Unit) { onDismissRequest = onDismiss, text = { Text( - text = "确定退出登录吗?", + text = stringResource(id = R.string.sure_sign_out), style = MaterialTheme.typography.titleMedium ) }, dismissButton = { TextButton(onClick = onDismiss) { - Text(text = "取消") + Text(text = stringResource(id = R.string.cancel)) } }, confirmButton = { TextButton(onClick = confirm) { - Text(text = "确定") + Text(text = stringResource(id = R.string.confirm)) } } ) diff --git a/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/ProfileMenuItemC.kt b/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/ProfileMenuItemC.kt index 0d457d4..d1e8183 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/ProfileMenuItemC.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/home/profile/components/ProfileMenuItemC.kt @@ -1,6 +1,7 @@ package com.gzq.wanandroid.features.home.profile.components import androidx.annotation.DrawableRes +import androidx.annotation.StringRes import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer @@ -15,11 +16,12 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import com.gzq.wanandroid.R @Composable -fun ProfileMenuItemC(@DrawableRes iconRes: Int, title: String, onClick: () -> Unit) { +fun ProfileMenuItemC(@DrawableRes iconRes: Int, @StringRes title: Int, onClick: () -> Unit) { Row( Modifier .height(54.dp) @@ -34,7 +36,7 @@ fun ProfileMenuItemC(@DrawableRes iconRes: Int, title: String, onClick: () -> Un tint = Color.Unspecified ) Spacer(modifier = Modifier.width(12.dp)) - Text(text = title, style = MaterialTheme.typography.bodyMedium) + Text(text = stringResource(id = title), style = MaterialTheme.typography.bodyMedium) Spacer(modifier = Modifier.weight(1.0f)) Icon( painter = painterResource(id = R.drawable.navigate_next), diff --git a/app/src/main/java/com/gzq/wanandroid/features/home/project/ProjectMainPage.kt b/app/src/main/java/com/gzq/wanandroid/features/home/project/ProjectMainPage.kt index 6450848..817e354 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/home/project/ProjectMainPage.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/home/project/ProjectMainPage.kt @@ -9,10 +9,12 @@ import androidx.compose.material3.SnackbarHostState import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.navigation.NavGraphBuilder import androidx.navigation.NavHostController import androidx.navigation.compose.composable +import com.gzq.wanandroid.R import com.gzq.wanandroid.core.preview.DevicePreviews import com.gzq.wanandroid.core.preview.ThemePreviews import com.gzq.wanandroid.exit_app.MyBackHandler @@ -22,7 +24,7 @@ fun NavGraphBuilder.projectMainPage( navController: NavHostController, ) { composable(Router.ProjectPage.route) { - ProjectMainPage( routeGlideImagePage = { + ProjectMainPage(routeGlideImagePage = { navController.navigate(Router.GlideImagePage.route) }, routeCoilImagePage = { navController.navigate(Router.CoilImagePage.route) @@ -34,8 +36,6 @@ fun NavGraphBuilder.projectMainPage( } } -@ThemePreviews -@DevicePreviews @Composable fun ProjectMainPage( modifier: Modifier = Modifier, @@ -55,7 +55,7 @@ fun ProjectMainPage( onClick = routeGlideImagePage ?: {}, Modifier.fillMaxWidth() ) { - Text(text = "Glide加载图片") + Text(text = stringResource(id = R.string.glide_load_image)) } } item { @@ -63,7 +63,7 @@ fun ProjectMainPage( onClick = routeCoilImagePage ?: {}, Modifier.fillMaxWidth() ) { - Text(text = "Coil加载图片") + Text(text = stringResource(id = R.string.coil_load_image)) } } item { @@ -71,7 +71,7 @@ fun ProjectMainPage( onClick = routeSketchImagePage ?: {}, Modifier.fillMaxWidth() ) { - Text(text = "Sketch加载图片") + Text(text = stringResource(id = R.string.sketch_load_image)) } } item { @@ -79,7 +79,7 @@ fun ProjectMainPage( onClick = routeFreeStylePage ?: {}, Modifier.fillMaxWidth() ) { - Text(text = "自由测试项目") + Text(text = stringResource(id = R.string.free_style_projects)) } } } diff --git a/app/src/main/java/com/gzq/wanandroid/features/login/LoginPage.kt b/app/src/main/java/com/gzq/wanandroid/features/login/LoginPage.kt index 757465c..3e6a92a 100644 --- a/app/src/main/java/com/gzq/wanandroid/features/login/LoginPage.kt +++ b/app/src/main/java/com/gzq/wanandroid/features/login/LoginPage.kt @@ -41,6 +41,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalLifecycleOwner import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.input.PasswordVisualTransformation @@ -168,11 +169,11 @@ fun LoginPage( }, modifier = Modifier.fillMaxWidth() ) { - Text(text = "登录") + Text(text = stringResource(id = R.string.sign_in)) } TextButton(onClick = launchRegisterPage) { - Text(text = "新用户注册") + Text(text = stringResource(id = R.string.sign_up)) } Spacer(modifier = Modifier.weight(1.0f)) Row(verticalAlignment = Alignment.CenterVertically) { @@ -211,14 +212,14 @@ fun NameAndPassword( leadingIcon = { Image( imageVector = Icons.Default.Person, - contentDescription = "用户名" + contentDescription = stringResource(id = R.string.user_name) ) }, label = { - Text("请输入用户名") + Text(stringResource(id = R.string.please_input_user_name)) }, placeholder = { - Text(text = "不能包含特殊符号") + Text(text = stringResource(id = R.string.cannot_contain_special_characters)) }, maxLines = 1, modifier = Modifier.fillMaxWidth() @@ -250,15 +251,15 @@ fun NameAndPassword( if (pwdTransform is PasswordVisualTransformation) R.drawable.eye_close else R.drawable.eye_open - ), contentDescription = "显示/隐藏密码" + ), contentDescription = stringResource(id = R.string.display_hide_password) ) }, label = { - Text("请输入密码") + Text(stringResource(id = R.string.please_input_password)) }, placeholder = { - Text(text = "密码长度不少于6个字符") + Text(text = stringResource(id = R.string.password_at_least_length)) }, visualTransformation = pwdTransform, maxLines = 1, @@ -279,23 +280,24 @@ fun PolicyText( val userTag = "UserPolicy" val text = buildAnnotatedString { - append("我已阅读") + append(stringResource(id = R.string.i_had_read)) pushStringAnnotation( tag = privacyTag, annotation = privacyUrl ) withStyle(style = SpanStyle(color = MaterialTheme.colorScheme.primary)) { - append("《隐私政策》") + append("《${stringResource(id = R.string.privacy_policy)}》") } - append("和") + + append(stringResource(id = R.string.and)) pushStringAnnotation( tag = userTag, annotation = userUrl ) withStyle(style = SpanStyle(color = MaterialTheme.colorScheme.primary)) { - append("《用户协议》") + append("《${stringResource(id = R.string.user_service)}》") } pop() } diff --git a/app/src/main/java/com/gzq/wanandroid/widget/PageHolder.kt b/app/src/main/java/com/gzq/wanandroid/widget/PageHolder.kt index 31646f6..f4a45f4 100644 --- a/app/src/main/java/com/gzq/wanandroid/widget/PageHolder.kt +++ b/app/src/main/java/com/gzq/wanandroid/widget/PageHolder.kt @@ -12,9 +12,11 @@ import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.core.graphics.ColorUtils +import com.gzq.wanandroid.R import com.gzq.wanandroid.core.page.PageState /** @@ -31,17 +33,26 @@ fun PageHolder( ) { CircularProgressIndicator(color = MaterialTheme.colorScheme.primary) Spacer(modifier = Modifier.height(12.dp)) - Text(text = "正在加载") + Text(text = stringResource(id = R.string.on_loading)) } }, emptyComponentBlock: @Composable BoxScope.() -> Unit = { - Text(text = "暂无数据", modifier = Modifier.align(Alignment.Center)) + Text( + text = stringResource(id = R.string.no_data), + modifier = Modifier.align(Alignment.Center) + ) }, errorComponentBlock: @Composable BoxScope.() -> Unit = { - Text(text = "出错了~", modifier = Modifier.align(Alignment.Center)) + Text( + text = stringResource(id = R.string.wrong), + modifier = Modifier.align(Alignment.Center) + ) }, comingSoonComponentBlock: @Composable BoxScope.() -> Unit = { - Text(text = "该功能正在开发中", modifier = Modifier.align(Alignment.Center)) + Text( + text = stringResource(id = R.string.on_developing), + modifier = Modifier.align(Alignment.Center) + ) }, content: @Composable (T?) -> Unit ) { diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index f20506c..a1ce62d 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -1,9 +1,50 @@ - wanandroid - Home - Project - Profile - + wanandroid + Home + Project + Profile + Collection + Share + Rewards Points + History + Privacy Policy + User Service + Open Source Libraries + Language + Theme + Sign Out + Update + and + I had read + Sign In + Sign Up + User Name + Please Input User Name + Cannot Contain Special Characters + Display/Hide Password + Please Input Password + At Least Six Characters for Password + Follow System + English + NORMAL + GENERAL + ACCOUNT + Sign In/Sign Up" + Are you sure sign out? + Cancel + Confirm + Default + Green + Purple + Press again to exit APP + Loading + No Data + Wrong~ + On Developing + Glide Load Image + Coil Load Image + Sketch Load Image + Free Style Projects diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 5d4fb70..8f2e964 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -5,5 +5,46 @@ 首页 项目 我的 - + 收藏 + 分享 + 积分 + 历史 + 隐私政策 + 用户协议 + 开源项目 + 切换语言 + 切换主题 + 退出登录 + 检查更新 + + 我已阅读 + 登录 + 新用户注册 + 用户名 + 请输入用户名 + 不能包含特殊字符 + 显示/隐藏密码 + 请输入密码 + 密码长度不少于6个字符 + 跟随系统 + 英语 + 常规 + 设置 + 账户 + 登录/注册" + 确定退出登录吗? + 取消 + 确定 + 默认 + 绿色 + 紫色 + 再按一次退出程序 + 正在加载 + 暂无数据 + 出错了~ + 该功能正在开发中 + Glide加载图片 + Coil加载图片 + Sketch加载图片 + 自由测试项目 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 5d4fb70..3d75005 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1,9 +1,50 @@ - wanandroid - 首页 - 项目 - 我的 - + wanandroid + 首页 + 项目 + 我的 + 收藏 + 分享 + 积分 + 历史 + 隐私政策 + 用户协议 + 开源项目 + 切换语言 + 切换主题 + 退出登录 + 检查更新 + + 我已阅读 + 登录 + 新用户注册 + 用户名 + 请输入用户名 + 不能包含特殊字符 + 显示/隐藏密码 + 请输入密码 + 密码长度不少于6个字符 + 跟随系统 + 英语 + 常规 + 设置 + 账户 + 登录/注册" + 确定退出登录吗? + 取消 + 确定 + 默认 + 绿色 + 紫色 + 再按一次退出程序 + 正在加载 + 暂无数据 + 出错了~ + 该功能正在开发中 + Glide加载图片 + Coil加载图片 + Sketch加载图片 + 自由测试项目 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7022cc9..e88af81 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,4 +3,46 @@ 首页 项目 我的 + 收藏 + 分享 + 积分 + 历史 + 隐私政策 + 用户协议 + 开源项目 + 切换语言 + 切换主题 + 退出登录 + 检查更新 + + 我已阅读 + 登录 + 新用户注册 + 用户名 + 请输入用户名 + 不能包含特殊字符 + 显示/隐藏密码 + 请输入密码 + 密码长度不少于6个字符 + 跟随系统 + 英语 + 常规 + 设置 + 账户 + 登录/注册" + 确定退出登录吗? + 取消 + 确定 + 默认 + 绿色 + 紫色 + 再按一次退出程序 + 正在加载 + 暂无数据 + 出错了~ + 该功能正在开发中 + Glide加载图片 + Coil加载图片 + Sketch加载图片 + 自由测试项目 \ No newline at end of file