diff --git a/app/src/main/java/com/aiosman/ravenow/ui/account/MbtiSelectScreen.kt b/app/src/main/java/com/aiosman/ravenow/ui/account/MbtiSelectScreen.kt
index 7748ade..cf49830 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/account/MbtiSelectScreen.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/account/MbtiSelectScreen.kt
@@ -32,6 +32,7 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Check
+import com.aiosman.ravenow.AppState
import com.aiosman.ravenow.LocalAppTheme
import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R
@@ -80,6 +81,10 @@ fun MbtiSelectScreen() {
isSelected = mbti == currentMbti,
onClick = {
model.mbti = mbti
+ // 立即保存到本地存储,确保选择后立即生效
+ AppState.UserId?.let { uid ->
+ com.aiosman.ravenow.AppStore.setUserMbti(uid, mbti)
+ }
navController.navigateUp()
}
)
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/account/ZodiacSelectScreen.kt b/app/src/main/java/com/aiosman/ravenow/ui/account/ZodiacSelectScreen.kt
index 464fcfd..3a1a494 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/account/ZodiacSelectScreen.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/account/ZodiacSelectScreen.kt
@@ -29,24 +29,55 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Check
+import com.aiosman.ravenow.AppState
import com.aiosman.ravenow.LocalAppTheme
import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R
import com.aiosman.ravenow.ui.comment.NoticeScreenHeader
-// 星座列表
-val ZODIAC_SIGNS = listOf(
- "白羊座", "金牛座", "双子座", "巨蟹座",
- "狮子座", "处女座", "天秤座", "天蝎座",
- "射手座", "摩羯座", "水瓶座", "双鱼座"
+// 星座资源ID列表
+val ZODIAC_SIGN_RES_IDS = listOf(
+ R.string.zodiac_aries,
+ R.string.zodiac_taurus,
+ R.string.zodiac_gemini,
+ R.string.zodiac_cancer,
+ R.string.zodiac_leo,
+ R.string.zodiac_virgo,
+ R.string.zodiac_libra,
+ R.string.zodiac_scorpio,
+ R.string.zodiac_sagittarius,
+ R.string.zodiac_capricorn,
+ R.string.zodiac_aquarius,
+ R.string.zodiac_pisces
)
+/**
+ * 根据存储的星座字符串(可能是任何语言)找到对应的资源ID
+ * 如果找不到,返回null
+ */
+@Composable
+fun findZodiacResId(storedZodiac: String?): Int? {
+ if (storedZodiac.isNullOrEmpty()) return null
+
+ // 尝试在所有语言的资源中查找匹配
+ ZODIAC_SIGN_RES_IDS.forEachIndexed { index, resId ->
+ val zodiacText = stringResource(resId)
+ if (zodiacText == storedZodiac) {
+ return resId
+ }
+ }
+
+ // 如果找不到精确匹配,尝试通过资源ID索引查找(兼容旧数据)
+ // 这里可以根据需要添加更多兼容逻辑
+ return null
+}
+
@Composable
fun ZodiacSelectScreen() {
val navController = LocalNavController.current
val appColors = LocalAppTheme.current
val model = AccountEditViewModel
- val currentZodiac = model.zodiac
+ val currentZodiacResId = findZodiacResId(model.zodiac)
Column(
modifier = Modifier
@@ -70,12 +101,20 @@ fun ZodiacSelectScreen() {
modifier = Modifier.fillMaxSize(),
contentPadding = androidx.compose.foundation.layout.PaddingValues(horizontal = 16.dp, vertical = 8.dp)
) {
- items(ZODIAC_SIGNS) { zodiac ->
+ items(ZODIAC_SIGN_RES_IDS.size) { index ->
+ val zodiacResId = ZODIAC_SIGN_RES_IDS[index]
+ val zodiacText = stringResource(zodiacResId)
ZodiacItem(
- zodiac = zodiac,
- isSelected = zodiac == currentZodiac,
+ zodiac = zodiacText,
+ zodiacResId = zodiacResId,
+ isSelected = zodiacResId == currentZodiacResId,
onClick = {
- model.zodiac = zodiac
+ // 保存当前语言的星座文本
+ model.zodiac = zodiacText
+ // 立即保存到本地存储,确保选择后立即生效
+ AppState.UserId?.let { uid ->
+ com.aiosman.ravenow.AppStore.setUserZodiac(uid, zodiacText)
+ }
navController.navigateUp()
}
)
@@ -88,6 +127,7 @@ fun ZodiacSelectScreen() {
@Composable
fun ZodiacItem(
zodiac: String,
+ zodiacResId: Int,
isSelected: Boolean,
onClick: () -> Unit
) {
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/account/edit2.kt b/app/src/main/java/com/aiosman/ravenow/ui/account/edit2.kt
index c6d2179..4ba76f4 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/account/edit2.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/account/edit2.kt
@@ -105,9 +105,9 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
val cleanValue = value.replace("\n", "").replace("\r", "")
model.name = cleanValue
usernameError = when {
- cleanValue.trim().isEmpty() -> "昵称不能为空"
- cleanValue.length < 3 -> "昵称长度不能小于3"
- cleanValue.length > 20 -> "昵称长度不能大于20"
+ cleanValue.trim().isEmpty() -> context.getString(R.string.error_nickname_empty)
+ cleanValue.length < 3 -> context.getString(R.string.error_nickname_too_short)
+ cleanValue.length > 20 -> context.getString(R.string.error_nickname_too_long)
else -> null
}
}
@@ -119,7 +119,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
val cleanValue = value.replace("\n", "").replace("\r", "")
model.bio = cleanValue
bioError = when {
- cleanValue.length > 100 -> "个人简介长度不能大于100"
+ cleanValue.length > 100 -> context.getString(R.string.error_bio_too_long)
else -> null
}
}
@@ -244,7 +244,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
tint = Color.White
)
Text(
- text = "更换封面",
+ text = stringResource(R.string.change_cover),
fontSize = 12.sp,
color = Color.White
)
@@ -288,7 +288,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
// 标题
Text(
- text = "编辑资料",
+ text = stringResource(R.string.edit_profile_info),
fontSize = 17.sp,
fontWeight = FontWeight.SemiBold,
color = Color.White,
@@ -365,7 +365,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
) {
// 昵称输入框
ProfileInfoCard(
- label = "昵称",
+ label = stringResource(R.string.nickname),
value = model.name,
placeholder = "Value",
onValueChange = { onNicknameChange(it) },
@@ -376,7 +376,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
// 个人简介输入框
ProfileInfoCard(
- label = "个人简介",
+ label = stringResource(R.string.personal_intro),
value = model.bio,
placeholder = "Welcome to my fantiac word i will show you something about magic",
onValueChange = { onBioChange(it) },
@@ -394,7 +394,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
) {
// MBTI 类型
ProfileSelectItem(
- label = "MBTI 类型",
+ label = stringResource(R.string.mbti_type),
value = model.mbti ?: "ENFP",
iconColor = Color(0xFF7C45ED),
iconResDark = null, // TODO: 添加MBTI暗色模式图标
@@ -417,8 +417,13 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
// 星座(使用当前图标)
ProfileSelectItem(
- label = "星座",
- value = model.zodiac ?: "白羊座",
+ label = stringResource(R.string.zodiac),
+ value = model.zodiac?.let { storedZodiac ->
+ // 尝试找到对应的资源ID并显示当前语言的文本
+ findZodiacResId(storedZodiac)?.let { resId ->
+ stringResource(resId)
+ } ?: storedZodiac // 如果找不到,显示原始存储的值
+ } ?: stringResource(R.string.zodiac_aries),
iconColor = Color(0xFFFFCC00),
iconResDark = R.mipmap.frame_4, // 星座暗色模式图标
iconResLight = R.mipmap.xingzuo, // 星座亮色模式图标
@@ -467,7 +472,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
contentAlignment = Alignment.Center
) {
Text(
- text = "保存",
+ text = stringResource(R.string.save),
fontSize = 17.sp,
fontWeight = FontWeight.Normal,
color = Color.White
@@ -483,7 +488,7 @@ fun AccountEditScreen2(onUpdateBanner: ((Uri, File, Context) -> Unit)? = null,)
contentAlignment = Alignment.Center
) {
Text(
- text = "加载用户资料失败,请重试",
+ text = stringResource(R.string.error_load_profile_failed),
color = appColors.text
)
}
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GalleryItem.kt b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GalleryItem.kt
index 272b882..c0b0df5 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GalleryItem.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GalleryItem.kt
@@ -199,7 +199,7 @@ fun GalleryGrid(
Spacer(modifier = Modifier.height(if(AppState.darkMode) 9.dp else 24.dp))
Text(
- text = "你的故事还没开始",
+ text = stringResource(R.string.your_story_not_started),
fontSize = 16.sp,
color = AppColors.text,
fontWeight = FontWeight.W600
@@ -208,7 +208,7 @@ fun GalleryGrid(
Spacer(modifier = Modifier.height(8.dp))
Text(
- text = "发布一条动态,和世界打个招呼吧",
+ text = stringResource(R.string.publish_moment_greeting),
fontSize = 14.sp,
color = AppColors.secondaryText,
fontWeight = FontWeight.W400
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GroupChatEmptyContent.kt b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GroupChatEmptyContent.kt
index 2c5fa48..b20e214 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GroupChatEmptyContent.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/GroupChatEmptyContent.kt
@@ -27,6 +27,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
@@ -71,7 +72,7 @@ fun GroupChatEmptyContent() {
// 空状态文本
Text(
- text = "空空如也~",
+ text = stringResource(R.string.empty_nothing),
fontSize = 16.sp,
fontWeight = FontWeight.SemiBold,
color = Color(0xFF000000)
@@ -94,7 +95,7 @@ private fun SegmentedControl(
) {
// 全部
SegmentButton(
- text = "全部",
+ text = stringResource(R.string.chat_all),
isSelected = selectedIndex == 0,
onClick = { onSegmentSelected(0) },
width = 54.dp
@@ -104,7 +105,7 @@ private fun SegmentedControl(
// 公开
SegmentButton(
- text = "公开",
+ text = stringResource(R.string.public_label),
isSelected = selectedIndex == 1,
onClick = { onSegmentSelected(1) },
width = 59.dp
@@ -114,7 +115,7 @@ private fun SegmentedControl(
// 私有
SegmentButton(
- text = "私有",
+ text = stringResource(R.string.private_label),
isSelected = selectedIndex == 2,
onClick = { onSegmentSelected(2) },
width = 54.dp
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserAgentsList.kt b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserAgentsList.kt
index d91db42..676c5a4 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserAgentsList.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserAgentsList.kt
@@ -247,7 +247,7 @@ fun AgentEmptyContentWithSegments() {
Spacer(modifier = Modifier.height(if(AppState.darkMode) 9.dp else 24.dp))
Text(
- text = "专属AI等你召唤",
+ text = stringResource(R.string.exclusive_ai_waiting),
fontSize = 16.sp,
color = AppColors.text,
fontWeight = FontWeight.W600
@@ -256,7 +256,7 @@ fun AgentEmptyContentWithSegments() {
Spacer(modifier = Modifier.height(8.dp))
Text(
- text = "AI将成为你的伙伴,而不是工具",
+ text = stringResource(R.string.ai_companion_not_tool),
fontSize = 14.sp,
color = AppColors.secondaryText,
fontWeight = FontWeight.W400
@@ -311,7 +311,7 @@ private fun AgentSegmentedControl(
) {
// 全部
AgentSegmentButton(
- text = "全部",
+ text = stringResource(R.string.chat_all),
isSelected = selectedIndex == 0,
onClick = { onSegmentSelected(0) },
width = 54.dp
@@ -321,7 +321,7 @@ private fun AgentSegmentedControl(
// 公开
AgentSegmentButton(
- text = "公开",
+ text = stringResource(R.string.public_label),
isSelected = selectedIndex == 1,
onClick = { onSegmentSelected(1) },
width = 59.dp
@@ -331,7 +331,7 @@ private fun AgentSegmentedControl(
// 私有
AgentSegmentButton(
- text = "私有",
+ text = stringResource(R.string.private_label),
isSelected = selectedIndex == 2,
onClick = { onSegmentSelected(2) },
width = 54.dp
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserContentPageIndicator.kt b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserContentPageIndicator.kt
index 8e448a5..17aeca5 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserContentPageIndicator.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserContentPageIndicator.kt
@@ -10,21 +10,14 @@ import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.pager.PagerState
-import androidx.compose.foundation.rememberScrollState
-import androidx.compose.foundation.shape.RoundedCornerShape
-import androidx.compose.foundation.verticalScroll
-import androidx.compose.material3.Icon
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
-import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
-import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
@@ -52,7 +45,7 @@ fun UserContentPageIndicator(
.padding(horizontal = 16.dp),
horizontalArrangement = Arrangement.SpaceEvenly
) {
- // 图片/相册 Tab
+ // 动态 Tab
Column(
horizontalAlignment = Alignment.CenterHorizontally,
modifier = Modifier
@@ -64,15 +57,24 @@ fun UserContentPageIndicator(
}
.padding(vertical = 12.dp)
) {
- Icon(
- painter = painterResource(id = R.drawable.rider_pro_images),
- contentDescription = "Gallery",
- tint = if (pagerState.currentPage == 0) AppColors.text else AppColors.text.copy(alpha = 0.6f),
- modifier = Modifier.size(24.dp)
+ Text(
+ text = stringResource(R.string.index_dynamic),
+ fontSize = 16.sp,
+ fontWeight = if (pagerState.currentPage == 0) FontWeight.SemiBold else FontWeight.Medium,
+ color = if (pagerState.currentPage == 0) Color(0xFF000000) else Color(0x993C3C43)
)
+ Spacer(modifier = Modifier.height(if (pagerState.currentPage == 0) 6.dp else 4.dp))
+ if (pagerState.currentPage == 0) {
+ Box(
+ modifier = Modifier
+ .width(20.dp)
+ .height(2.dp)
+ .background(Color(0xFF000000))
+ )
+ }
}
- // Agent Tab (只在非智能体用户时显示)
+ // 智能体 Tab (只在非智能体用户时显示)
if (showAgentTab) {
Column(
horizontalAlignment = Alignment.CenterHorizontally,
@@ -85,40 +87,54 @@ fun UserContentPageIndicator(
}
.padding(vertical = 12.dp)
) {
- Icon(
- painter = painterResource(id = R.drawable.rider_pro_nav_ai),
- contentDescription = "Agents",
- tint = if (pagerState.currentPage == 1) AppColors.text else AppColors.text.copy(alpha = 0.6f),
- modifier = Modifier.size(24.dp)
+ Text(
+ text = stringResource(R.string.chat_ai),
+ fontSize = 16.sp,
+ fontWeight = if (pagerState.currentPage == 1) FontWeight.SemiBold else FontWeight.Medium,
+ color = if (pagerState.currentPage == 1) Color(0xFF000000) else Color(0x993C3C43)
)
+ Spacer(modifier = Modifier.height(if (pagerState.currentPage == 1) 6.dp else 4.dp))
+ if (pagerState.currentPage == 1) {
+ Box(
+ modifier = Modifier
+ .width(20.dp)
+ .height(2.dp)
+ .background(Color(0xFF000000))
+ )
+ }
+ }
+ }
+
+ // 群聊 Tab (只在非智能体用户时显示)
+ if (showAgentTab) {
+ Column(
+ horizontalAlignment = Alignment.CenterHorizontally,
+ modifier = Modifier
+ .weight(1f)
+ .noRippleClickable {
+ scope.launch {
+ pagerState.scrollToPage(2)
+ }
+ }
+ .padding(vertical = 12.dp)
+ ) {
+ Text(
+ text = stringResource(R.string.chat_group),
+ fontSize = 16.sp,
+ fontWeight = if (pagerState.currentPage == 2) FontWeight.SemiBold else FontWeight.Medium,
+ color = if (pagerState.currentPage == 2) Color(0xFF000000) else Color(0x993C3C43)
+ )
+ Spacer(modifier = Modifier.height(if (pagerState.currentPage == 2) 6.dp else 4.dp))
+ if (pagerState.currentPage == 2) {
+ Box(
+ modifier = Modifier
+ .width(20.dp)
+ .height(2.dp)
+ .background(Color(0xFF000000))
+ )
+ }
}
}
}
-
- // 下划线指示器
- Row(
- modifier = Modifier
- .fillMaxWidth()
- .padding(horizontal = 16.dp)
- ) {
- Box(
- modifier = Modifier
- .weight(1f)
- .height(2.dp)
- .background(
- if (pagerState.currentPage == 0) AppColors.text else Color.Transparent
- )
- )
- if (showAgentTab) {
- Box(
- modifier = Modifier
- .weight(1f)
- .height(2.dp)
- .background(
- if (pagerState.currentPage == 1) AppColors.text else Color.Transparent
- )
- )
- }
- }
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserItem.kt b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserItem.kt
index 75a3583..7fb341a 100644
--- a/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserItem.kt
+++ b/app/src/main/java/com/aiosman/ravenow/ui/index/tabs/profile/composable/UserItem.kt
@@ -27,6 +27,7 @@ import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.text.style.TextOverflow
@@ -122,7 +123,7 @@ fun UserItem(
)
Spacer(modifier = Modifier.height(2.dp))
Text(
- text = "帖子",
+ text = stringResource(R.string.posts),
fontWeight = FontWeight.Normal,
fontSize = 11.sp,
color = Color(0xFF000000),
@@ -157,7 +158,7 @@ fun UserItem(
)
Spacer(modifier = Modifier.height(2.dp))
Text(
- text = "粉丝",
+ text = stringResource(R.string.followers_upper),
fontWeight = FontWeight.Normal,
fontSize = 11.sp,
color = Color(0xFF000000),
@@ -193,7 +194,7 @@ fun UserItem(
)
Spacer(modifier = Modifier.height(2.dp))
Text(
- text = "关注",
+ text = stringResource(R.string.following_upper),
fontWeight = FontWeight.Normal,
fontSize = 11.sp,
color = Color(0xFF000000),
@@ -273,7 +274,7 @@ fun UserItem(
// 编辑标签(仅自己可见)
if (isSelf) {
ProfileTag(
- text = "编辑",
+ text = stringResource(R.string.edit_profile),
backgroundColor = Color(0x14947A80), // 124/255, 116/255, 128/255, alpha 0.08
textColor = Color(0xFF9284BD), // 146/255, 132/255, 189/255
leadingIcon = {
@@ -333,7 +334,7 @@ private fun EditIcon(
) {
Image(
painter = painterResource(id = R.mipmap.bi),
- contentDescription = "编辑",
+ contentDescription = stringResource(R.string.edit_profile),
modifier = modifier,
colorFilter = ColorFilter.tint(color)
)
diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index 098863d..1d097a0 100644
--- a/app/src/main/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -12,6 +12,7 @@
ユーザー
いいね
フォロワー
+ 投稿
お気に入り
あれ、何もない。..
通知
@@ -52,6 +53,10 @@
最高のサービスを提供するために、登録前に利用規約を読み、同意してください。
まだ投稿がありません
今すぐモーメントを投稿
+ ストーリーはまだ始まっていません
+ あなたのストーリーはまだ始まっていません
+ モーメントを投稿して、世界に挨拶しましょう
+ 画像がありません
プロフィールを編集
シェア
ログアウト
@@ -151,10 +156,14 @@
グループ
友達
すべて
+ 公開
+ プライベート
人はおしゃべりをしている…
AIエージェントチャット
AIエージェントチャットがありません
AIエージェントと対話してみましょう
+ 専属AIがあなたを待っています
+ AIはあなたのパートナーとなり、ツールではありません
私:
[画像]
[音声]
@@ -166,6 +175,7 @@
ユーザー情報の取得に失敗しました: %s
グループチャットがありません
まだどのグループチャットにも参加していません
+ 何もありません~
グループチャットメッセージのない宇宙は静かすぎます
ホームで興味のあるテーマルームを探してみましょう
まだ友達とチャットしていません~
@@ -255,9 +265,28 @@
MBTIタイプ
星座
+ カバーを変更
+ 自己紹介
+ ニックネームは空にできません
+ ニックネームの長さは3文字以上である必要があります
+ ニックネームの長さは20文字以下である必要があります
+ 自己紹介の長さは100文字以下である必要があります
+ ユーザープロフィールの読み込みに失敗しました。もう一度お試しください
保存
MBTIを選択
星座を選択
+ 牡羊座
+ 牡牛座
+ 双子座
+ 蟹座
+ 獅子座
+ 乙女座
+ 天秤座
+ 蠍座
+ 射手座
+ 山羊座
+ 水瓶座
+ 魚座
さっと動かす
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml
index 8a8875e..d9faf7e 100644
--- a/app/src/main/res/values-zh/strings.xml
+++ b/app/src/main/res/values-zh/strings.xml
@@ -12,6 +12,7 @@
用户
赞
粉丝
+ 帖子
收藏
消息
关注
@@ -51,6 +52,10 @@
"为了提供更好的服务,请您在注册前仔细阅读并同意《用户协议》。 "
还没有发布任何动态
发布一个动态吧
+ 故事还没开始
+ 你的故事还没开始
+ 发布一条动态,和世界打个招呼吧
+ 暂无图片
编辑
分享
登出
@@ -153,11 +158,15 @@
群聊
朋友
全部
+ 公开
+ 私有
咦,什么都没有...
智能体聊天
AI 在等你的开场白
去首页探索一下,主动发起对话!
+ 专属AI等你召唤
+ AI将成为你的伙伴,而不是工具
我:
[图片]
[语音]
@@ -169,6 +178,7 @@
获取用户信息失败: %s
没有群聊,宇宙好安静
没有群聊消息的宇宙太安静了
+ 空空如也~
在首页探索感兴趣的主题房间
去首页探索感兴趣的高能对话
和朋友,还没有对话哦~
@@ -292,9 +302,28 @@
MBTI 类型
星座
+ 更换封面
+ 个人简介
+ 昵称不能为空
+ 昵称长度不能小于3
+ 昵称长度不能大于20
+ 个人简介长度不能大于100
+ 加载用户资料失败,请重试
保存
选择 MBTI
选择星座
+ 白羊座
+ 金牛座
+ 双子座
+ 巨蟹座
+ 狮子座
+ 处女座
+ 天秤座
+ 天蝎座
+ 射手座
+ 摩羯座
+ 水瓶座
+ 双鱼座
扫一扫
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index d476d2a..b43786b 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -11,6 +11,7 @@
Users
LIKE
FOLLOWERS
+ Posts
FAVOURITES
Well,nothing
NOTIFICATIONS
@@ -51,6 +52,10 @@
To provide you with the best service, please read and agree to our User Agreement before registering.
You haven\'t left any tracks yet
Post a moment now
+ Your story hasn\'t started yet
+ Your story hasn\'t started yet
+ Post a moment and say hello to the world
+ No image
Edit profile
share
Logout
@@ -151,9 +156,13 @@
Friends
people chatting now…
All
+ Public
+ Private
Agent Chat
No Agent Chat
Start chatting with agents
+ Exclusive AI waiting for you
+ AI will be your companion, not a tool
Me:
[Image]
[Voice]
@@ -165,6 +174,7 @@
Failed to get user info: %s
No group chats
You have not joined any group chats yet
+ Nothing here~
The universe is too quiet without group chat messages
Explore interesting theme rooms on the homepage
Have not chatted with friends yet~
@@ -286,9 +296,28 @@
MBTI
Zodiac
+ Change Cover
+ Personal Introduction
+ Nickname cannot be empty
+ Nickname length cannot be less than 3
+ Nickname length cannot be greater than 20
+ Bio length cannot be greater than 100
+ Failed to load user profile, please try again
Save
Choose MBTI
Choose Zodiac
+ Aries
+ Taurus
+ Gemini
+ Cancer
+ Leo
+ Virgo
+ Libra
+ Scorpio
+ Sagittarius
+ Capricorn
+ Aquarius
+ Pisces
Scan QR