1. 《红包:领取他人或者是被他人领取,红包应该有个提示》 2.《过期红包:消息提示红包过期,点进去没有任何消息记录,缺少红包过期记录或图标》 3.《照片:新包动态上次图片咋变得模糊不清了》 4.《连麦:名字太长导致XX邀请你接听电话没显示了》 去掉未认证女性和好友的聊天限制 替换日、韩、英翻译 界面微调master
@@ -1152,74 +1152,74 @@ | |||||
"you_get": " you got rewards from others", | "you_get": " you got rewards from others", | ||||
"enter_num_qian": " number of exchanges (unit K) ", | "enter_num_qian": " number of exchanges (unit K) ", | ||||
"enter_num_qian1": " number of withdrawals (unit K) ", | "enter_num_qian1": " number of withdrawals (unit K) ", | ||||
"daily_translate_voucher": "翻译券", | |||||
"msg_notice": "通知消息", | |||||
"select_notice_people": "选择提醒的人", | |||||
"search_phone": "查找手机号", | |||||
"not_have_user": "用户不存在", | |||||
"not_add_Myself": "你不能添加自己", | |||||
"you_are_blaklisted": "对方已拉黑了你", | |||||
"confrim_recovery": "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)", | |||||
"send_to": "發送到", | |||||
"search_plach": "搜索位置", | |||||
"finding_place": "查找位置", | |||||
"real_time_helper": "实时帮", | |||||
"translation_butler": "翻译管家", | |||||
"travel_butler": "出行管家", | |||||
"translation_butler_tips": "您的实时贴身翻译,随时随地帮您解决语言不通", | |||||
"choose_language": "请选择要翻译的语言", | |||||
"translation_butler_rules": "呼叫管家需要预付H币,管家服务时长为5分钟", | |||||
"translation_butler_scenes": "您当所在场景", | |||||
"translation_butler_scenes_tips": "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!", | |||||
"translation_butler_call": "呼叫管家", | |||||
"travel_my_location": "我的位置", | |||||
"travel_go_where": "你要去哪儿", | |||||
"travel_tips": "当前定位非实时监测,每次需点击“距离查询”按钮查询", | |||||
"travel_check_distance": "距离查询", | |||||
"travel_check_distance_result": "根据定位查询,您的当前距离目标地点相距:", | |||||
"translation_butler_tips2": "当前排队人数过多,感谢您的耐心等待", | |||||
"translation_butler_tips3": "正在为您呼叫管家", | |||||
"translation_butler_wait_people": "等待人数", | |||||
"translation_butler_wait_people_unit": "位", | |||||
"translation_butler_wait_time": "预计还需等待", | |||||
"translation_butler_already_wait": "已等待", | |||||
"translation_butler_cancel": "取消呼叫", | |||||
"translation_butler_wait_service": "等待服务", | |||||
"translation_butler_dialog_title": "实时帮-翻译管家", | |||||
"translation_butler_dialog_order": "/s1通过系统下单", | |||||
"translation_butler_dialog_start_service": "开始服务", | |||||
"translation_butler_dialog_start_chat": "开始聊天", | |||||
"translation_butler_coin_time": "/s1H币//s2分钟", | |||||
"translation_butler_end_service": "结束服务", | |||||
"translation_butler_start_service": "服务开始", | |||||
"translation_butler_service_end": "服务结束", | |||||
"translation_butler_evaluation": "评价", | |||||
"translation_butler_start_tips": "翻译服务已开始,愿本次服务体验愉快", | |||||
"translation_butler_evaluation_tips": "翻译服务已结束,体验愉快就给个评价吧", | |||||
"translation_butler_dialog_tips": "你对本次服务满意吗?", | |||||
"translation_butler_dialog_yes": "满意", | |||||
"translation_butler_dialog_no": "不满意", | |||||
"translation_butler_dialog_submit": "提交评价", | |||||
"translation_pos_1": "服务耐心", | |||||
"translation_pos_2": "快速准时", | |||||
"translation_pos_3": "礼貌热情", | |||||
"translation_pos_4": "沟通顺畅", | |||||
"translation_pos_5": "大神翻译", | |||||
"translation_neg1": "骚扰威胁", | |||||
"translation_neg2": "沟通障碍", | |||||
"translation_neg3": "响应缓慢", | |||||
"translation_neg4": "态度不好", | |||||
"translation_neg5": "翻译不行", | |||||
"translation_scenes_1": "机场/车站", | |||||
"translation_scenes_2": "餐厅/酒店", | |||||
"translation_scenes_3": "KTV/酒吧", | |||||
"translation_scenes_4": "其他", | |||||
"file": "文件", | |||||
"max_file": "文件大于/s1M", | |||||
"translation_input_limit": "还可以输入/s1字", | |||||
"translation_more_desc": "更多描述", | |||||
"feedback_assistant": "反馈小助手", | |||||
"feedback_tips":"有什么问题都可以反馈给我哦", | |||||
"daily_translate_voucher": "Translation voucher", | |||||
"msg_notice": "Notice message", | |||||
"select_notice_people": "Select notice people", | |||||
"search_phone": "Search phone number", | |||||
"not_have_user": "User does not exist", | |||||
"not_add_Myself": "You can’t add yourself", | |||||
"you_are_blaklisted": "You are blacklisted", | |||||
"confrim_recovery": "Recover the destroyed photos?\n(Users who have been viewed can be viewed once again)", | |||||
"send_to": "Send to", | |||||
"search_plach": "Search location", | |||||
"finding_place": "Find location", | |||||
"real_time_helper": "Real-time helper", | |||||
"translation_butler": "Translation assistant", | |||||
"travel_butler": "Travel assistant", | |||||
"translation_butler_tips": "Your real-time personal translator, it can help you solve the language barrier anytime and anywhere", | |||||
"choose_language": "Please select the language to be translated", | |||||
"translation_butler_rules": "Before calling the translation assistant, you need to pay H coin, and the service time of it is 5 minutes", | |||||
"translation_butler_scenes": "Scene where you are located", | |||||
"translation_butler_scenes_tips": "According to the big data, users who select scenes and describe problems can get more effective help!", | |||||
"translation_butler_call": "Call the assistant", | |||||
"travel_my_location": "My location", | |||||
"travel_go_where": "Place you want to go", | |||||
"travel_tips": "The current location is not monitored in real time. You need to click the \"distance query\" button to query it each time", | |||||
"travel_check_distance": "Distance query", | |||||
"travel_check_distance_result": "According to the positioning, your current distance from the target location queried is:", | |||||
"translation_butler_tips2": "There are too many people in the queue, thank you for your patience", | |||||
"translation_butler_tips3": "Calling the assistant for you", | |||||
"translation_butler_wait_people": "Waiting number", | |||||
"translation_butler_wait_people_unit": "Person(s)", | |||||
"translation_butler_wait_time": "Time expected to wait", | |||||
"translation_butler_already_wait": "Waiting time already", | |||||
"translation_butler_cancel": "Cancel call ", | |||||
"translation_butler_wait_service": "Waiting for service", | |||||
"translation_butler_dialog_title": "Real time helper-translation assistant", | |||||
"translation_butler_dialog_order": "/s1 Place an order through the system", | |||||
"translation_butler_dialog_start_service": "Service begins", | |||||
"translation_butler_dialog_start_chat": "Chat begins", | |||||
"translation_butler_coin_time": "/s1H coin//s2 min", | |||||
"translation_butler_end_service": "Service ended", | |||||
"translation_butler_start_service": "Service begins", | |||||
"translation_butler_service_end": "Service ended", | |||||
"translation_butler_evaluation": "Evaluation", | |||||
"translation_butler_start_tips": "Translation service has begun,I hope you a pleasant experience of service", | |||||
"translation_butler_evaluation_tips": "Translation service is over, please give an evaluation after your pleasant experience", | |||||
"translation_butler_dialog_tips": "Are you satisfied with this service?", | |||||
"translation_butler_dialog_yes": "Satisfied", | |||||
"translation_butler_dialog_no": "Dissatisfied", | |||||
"translation_butler_dialog_submit": "Submit evaluation", | |||||
"translation_pos_1": "Patient services", | |||||
"translation_pos_2": "Fast and punctual", | |||||
"translation_pos_3": "Politeness and enthusiasm", | |||||
"translation_pos_4": "Smooth communication", | |||||
"translation_pos_5": "Brilliant translation", | |||||
"translation_neg1": "Harassment and threat", | |||||
"translation_neg2": "Communication barriers", | |||||
"translation_neg3": "Slow response", | |||||
"translation_neg4": "Bad attitude ", | |||||
"translation_neg5": "Poor translation", | |||||
"translation_scenes_1": "Airports / stations", | |||||
"translation_scenes_2": "Restaurants / hotels", | |||||
"translation_scenes_3": "KTV / bars", | |||||
"translation_scenes_4": "Others", | |||||
"file": "Files", | |||||
"max_file": "File larger than /s1M", | |||||
"translation_input_limit": "/s1 words can also be input", | |||||
"translation_more_desc": "More descriptions", | |||||
"feedback_assistant": "Feedback helper", | |||||
"feedback_tips":"You can give me feedback in case of any questions", | |||||
"man_retranslate":"人工重译", | "man_retranslate":"人工重译", | ||||
"robot_retranslate":"机器重译", | "robot_retranslate":"机器重译", | ||||
"see_original":"查看原文" | "see_original":"查看原文" |
@@ -1152,74 +1152,74 @@ | |||||
"you_get": "相手からプレゼントを貰った", | "you_get": "相手からプレゼントを貰った", | ||||
"enter_num_qian": "交換数量(单位K)", | "enter_num_qian": "交換数量(单位K)", | ||||
"enter_num_qian1": "引き出し数量(单位K)", | "enter_num_qian1": "引き出し数量(单位K)", | ||||
"daily_translate_voucher": "翻译券", | |||||
"msg_notice": "通知消息", | |||||
"select_notice_people": "选择提醒的人", | |||||
"search_phone": "查找手机号", | |||||
"not_have_user": "用户不存在", | |||||
"not_add_Myself": "你不能添加自己", | |||||
"you_are_blaklisted": "对方已拉黑了你", | |||||
"confrim_recovery": "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)", | |||||
"send_to": "發送到", | |||||
"search_plach": "搜索位置", | |||||
"finding_place": "查找位置", | |||||
"real_time_helper": "实时帮", | |||||
"translation_butler": "翻译管家", | |||||
"travel_butler": "出行管家", | |||||
"translation_butler_tips": "您的实时贴身翻译,随时随地帮您解决语言不通", | |||||
"choose_language": "请选择要翻译的语言", | |||||
"translation_butler_rules": "呼叫管家需要预付H币,管家服务时长为5分钟", | |||||
"translation_butler_scenes": "您当所在场景", | |||||
"translation_butler_scenes_tips": "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!", | |||||
"translation_butler_call": "呼叫管家", | |||||
"travel_my_location": "我的位置", | |||||
"travel_go_where": "你要去哪儿", | |||||
"travel_tips": "当前定位非实时监测,每次需点击“距离查询”按钮查询", | |||||
"travel_check_distance": "距离查询", | |||||
"travel_check_distance_result": "根据定位查询,您的当前距离目标地点相距:", | |||||
"translation_butler_tips2": "当前排队人数过多,感谢您的耐心等待", | |||||
"translation_butler_tips3": "正在为您呼叫管家", | |||||
"translation_butler_wait_people": "等待人数", | |||||
"daily_translate_voucher": "翻訳券", | |||||
"msg_notice": "通知メッセージ", | |||||
"select_notice_people": "注意する人を選択", | |||||
"search_phone": "携帯番号を検索", | |||||
"not_have_user": "ユーザーは存在しない", | |||||
"not_add_Myself": "自分を追加することはできない", | |||||
"you_are_blaklisted": "相手は既にあなたをプロックしました", | |||||
"confrim_recovery": "焼却した写真を立直しますか?(すでに見たユーザーはもう一度見ることができます)", | |||||
"send_to": "発送", | |||||
"search_plach": "位置検索", | |||||
"finding_place": "位置を検索", | |||||
"real_time_helper": "リアルタイムヘルプ", | |||||
"translation_butler": "翻訳バトラー", | |||||
"travel_butler": "トラベルバトラー", | |||||
"translation_butler_tips": "あなたのリアルタイムの個人通訳は、いつでもどこでも言語の不通を解決してくれます", | |||||
"choose_language": "翻訳する言語を選んでください", | |||||
"translation_butler_rules": "バトラーを呼ぶにはH幤が必要です、バトラーサービスは5分かかります。", | |||||
"translation_butler_scenes": "あなたがいるシーン", | |||||
"translation_butler_scenes_tips": "ビッグデータによると、シーンを選択して問題を説明するユーザーはより効果的に助けられました!", | |||||
"translation_butler_call": "バトラーを呼びます", | |||||
"travel_my_location": "私の位置", | |||||
"travel_go_where": "どこへ行きますか", | |||||
"travel_tips": "現在の位置付けは非リアルタイム監視で、毎回「距離照会」ボタンをクリックして照会します", | |||||
"travel_check_distance": "距離の照会", | |||||
"travel_check_distance_result": "ポジショニングクエリによると、ターゲット位置からの現在の距離:", | |||||
"translation_butler_tips2": "今は並んでいる人が多すぎます。待ってくれてありがとうございます", | |||||
"translation_butler_tips3": "バトラーを呼びます", | |||||
"translation_butler_wait_people": "待ち人数", | |||||
"translation_butler_wait_people_unit": "位", | "translation_butler_wait_people_unit": "位", | ||||
"translation_butler_wait_time": "预计还需等待", | |||||
"translation_butler_already_wait": "已等待", | |||||
"translation_butler_cancel": "取消呼叫", | |||||
"translation_butler_wait_service": "等待服务", | |||||
"translation_butler_dialog_title": "实时帮-翻译管家", | |||||
"translation_butler_dialog_order": "/s1通过系统下单", | |||||
"translation_butler_dialog_start_service": "开始服务", | |||||
"translation_butler_dialog_start_chat": "开始聊天", | |||||
"translation_butler_coin_time": "/s1H币//s2分钟", | |||||
"translation_butler_end_service": "结束服务", | |||||
"translation_butler_start_service": "服务开始", | |||||
"translation_butler_service_end": "服务结束", | |||||
"translation_butler_evaluation": "评价", | |||||
"translation_butler_start_tips": "翻译服务已开始,愿本次服务体验愉快", | |||||
"translation_butler_evaluation_tips": "翻译服务已结束,体验愉快就给个评价吧", | |||||
"translation_butler_dialog_tips": "你对本次服务满意吗?", | |||||
"translation_butler_dialog_yes": "满意", | |||||
"translation_butler_dialog_no": "不满意", | |||||
"translation_butler_dialog_submit": "提交评价", | |||||
"translation_pos_1": "服务耐心", | |||||
"translation_pos_2": "快速准时", | |||||
"translation_pos_3": "礼貌热情", | |||||
"translation_pos_4": "沟通顺畅", | |||||
"translation_pos_5": "大神翻译", | |||||
"translation_neg1": "骚扰威胁", | |||||
"translation_neg2": "沟通障碍", | |||||
"translation_neg3": "响应缓慢", | |||||
"translation_neg4": "态度不好", | |||||
"translation_neg5": "翻译不行", | |||||
"translation_scenes_1": "机场/车站", | |||||
"translation_scenes_2": "餐厅/酒店", | |||||
"translation_scenes_3": "KTV/酒吧", | |||||
"translation_scenes_4": "其他", | |||||
"file": "文件", | |||||
"max_file": "文件大于/s1M", | |||||
"translation_input_limit": "还可以输入/s1字", | |||||
"translation_more_desc": "更多描述", | |||||
"feedback_assistant": "反馈小助手", | |||||
"feedback_tips":"有什么问题都可以反馈给我哦", | |||||
"translation_butler_wait_time": "待つ予定", | |||||
"translation_butler_already_wait": "待っています", | |||||
"translation_butler_cancel": "呼び出しをキャンセル", | |||||
"translation_butler_wait_service": "サービスを待つ", | |||||
"translation_butler_dialog_title": "リアルタイムヘルプ-翻訳バトラー", | |||||
"translation_butler_dialog_order": "/s1システムで注文する", | |||||
"translation_butler_dialog_start_service": "サービスを開始する", | |||||
"translation_butler_dialog_start_chat": "チャットを始める", | |||||
"translation_butler_coin_time": "/s1H幤//s2分", | |||||
"translation_butler_end_service": "サービスを終了する", | |||||
"translation_butler_start_service": "サービス開始", | |||||
"translation_butler_service_end": "サービス終了", | |||||
"translation_butler_evaluation": "評価", | |||||
"translation_butler_start_tips": "通訳サービスが始まりました。今回のサービス体験が楽しいように", | |||||
"translation_butler_evaluation_tips": "翻訳サービスは終了しました、評価してください", | |||||
"translation_butler_dialog_tips": "今回のサービスに満足していますか?", | |||||
"translation_butler_dialog_yes": "満足", | |||||
"translation_butler_dialog_no": "不満足", | |||||
"translation_butler_dialog_submit": "評価を出す", | |||||
"translation_pos_1": "辛抱強い", | |||||
"translation_pos_2": "クイックタイム", | |||||
"translation_pos_3": "礼儀正しくて親切である", | |||||
"translation_pos_4": "コミュニケーションが円滑である", | |||||
"translation_pos_5": "素晴らしい翻訳", | |||||
"translation_neg1": "嫌がらせ・脅かす", | |||||
"translation_neg2": "コミュニケーション障害", | |||||
"translation_neg3": "応答が遅い", | |||||
"translation_neg4": "態度が悪い", | |||||
"translation_neg5": "翻訳はだめです", | |||||
"translation_scenes_1": "空港/駅", | |||||
"translation_scenes_2": "レストラン/ホテル", | |||||
"translation_scenes_3": "KTV/バー", | |||||
"translation_scenes_4": "その他", | |||||
"file": "ファイル", | |||||
"max_file": "ファイル容量が/s1Mより大きい", | |||||
"translation_input_limit": " /s1と入力することができます", | |||||
"translation_more_desc": "詳細説明", | |||||
"feedback_assistant": "フィードバックアシスタント", | |||||
"feedback_tips":"どんな問題があってもフィードバックしてください", | |||||
"man_retranslate":"人工重译", | "man_retranslate":"人工重译", | ||||
"robot_retranslate":"机器重译", | "robot_retranslate":"机器重译", | ||||
"see_original":"查看原文" | "see_original":"查看原文" |
@@ -1152,74 +1152,74 @@ | |||||
"you_get": "상대방이 당신에게 상을 주었다.", | "you_get": "상대방이 당신에게 상을 주었다.", | ||||
"enter_num_qian": "환전 금액(단위 K)", | "enter_num_qian": "환전 금액(단위 K)", | ||||
"enter_num_qian1": "인출 금액(단위K)", | "enter_num_qian1": "인출 금액(단위K)", | ||||
"daily_translate_voucher": "翻译券", | |||||
"msg_notice": "通知消息", | |||||
"select_notice_people": "选择提醒的人", | |||||
"search_phone": "查找手机号", | |||||
"not_have_user": "用户不存在", | |||||
"not_add_Myself": "你不能添加自己", | |||||
"you_are_blaklisted": "对方已拉黑了你", | |||||
"confrim_recovery": "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)", | |||||
"send_to": "發送到", | |||||
"search_plach": "搜索位置", | |||||
"finding_place": "查找位置", | |||||
"real_time_helper": "实时帮", | |||||
"translation_butler": "翻译管家", | |||||
"travel_butler": "出行管家", | |||||
"translation_butler_tips": "您的实时贴身翻译,随时随地帮您解决语言不通", | |||||
"choose_language": "请选择要翻译的语言", | |||||
"translation_butler_rules": "呼叫管家需要预付H币,管家服务时长为5分钟", | |||||
"translation_butler_scenes": "您当所在场景", | |||||
"translation_butler_scenes_tips": "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!", | |||||
"translation_butler_call": "呼叫管家", | |||||
"travel_my_location": "我的位置", | |||||
"travel_go_where": "你要去哪儿", | |||||
"travel_tips": "当前定位非实时监测,每次需点击“距离查询”按钮查询", | |||||
"travel_check_distance": "距离查询", | |||||
"travel_check_distance_result": "根据定位查询,您的当前距离目标地点相距:", | |||||
"translation_butler_tips2": "当前排队人数过多,感谢您的耐心等待", | |||||
"translation_butler_tips3": "正在为您呼叫管家", | |||||
"translation_butler_wait_people": "等待人数", | |||||
"translation_butler_wait_people_unit": "位", | |||||
"translation_butler_wait_time": "预计还需等待", | |||||
"translation_butler_already_wait": "已等待", | |||||
"translation_butler_cancel": "取消呼叫", | |||||
"translation_butler_wait_service": "等待服务", | |||||
"translation_butler_dialog_title": "实时帮-翻译管家", | |||||
"translation_butler_dialog_order": "/s1通过系统下单", | |||||
"translation_butler_dialog_start_service": "开始服务", | |||||
"translation_butler_dialog_start_chat": "开始聊天", | |||||
"translation_butler_coin_time": "/s1H币//s2分钟", | |||||
"translation_butler_end_service": "结束服务", | |||||
"translation_butler_start_service": "服务开始", | |||||
"translation_butler_service_end": "服务结束", | |||||
"translation_butler_evaluation": "评价", | |||||
"translation_butler_start_tips": "翻译服务已开始,愿本次服务体验愉快", | |||||
"translation_butler_evaluation_tips": "翻译服务已结束,体验愉快就给个评价吧", | |||||
"translation_butler_dialog_tips": "你对本次服务满意吗?", | |||||
"translation_butler_dialog_yes": "满意", | |||||
"translation_butler_dialog_no": "不满意", | |||||
"translation_butler_dialog_submit": "提交评价", | |||||
"translation_pos_1": "服务耐心", | |||||
"translation_pos_2": "快速准时", | |||||
"translation_pos_3": "礼貌热情", | |||||
"translation_pos_4": "沟通顺畅", | |||||
"translation_pos_5": "大神翻译", | |||||
"translation_neg1": "骚扰威胁", | |||||
"translation_neg2": "沟通障碍", | |||||
"translation_neg3": "响应缓慢", | |||||
"translation_neg4": "态度不好", | |||||
"translation_neg5": "翻译不行", | |||||
"translation_scenes_1": "机场/车站", | |||||
"translation_scenes_2": "餐厅/酒店", | |||||
"translation_scenes_3": "KTV/酒吧", | |||||
"translation_scenes_4": "其他", | |||||
"file": "文件", | |||||
"max_file": "文件大于/s1M", | |||||
"translation_input_limit": "还可以输入/s1字", | |||||
"translation_more_desc": "更多描述", | |||||
"feedback_assistant": "反馈小助手", | |||||
"feedback_tips": "有什么问题都可以反馈给我哦", | |||||
"daily_translate_voucher": " 번역권", | |||||
"msg_notice": " 소식 알람 ", | |||||
"select_notice_people": "멘션 선택", | |||||
"search_phone": "휴대폰 번호 찾기", | |||||
"not_have_user": "사용자가 존재하지 않음", | |||||
"not_add_Myself": "당신은 자신을 추가할 수 없다", | |||||
"you_are_blaklisted": "상대가 널 블랙리스트에 추가했습니다.", | |||||
"confrim_recovery": "불에 탄 사진을 복구하시겠습니까?\n(이미 본 사용자는 다시 볼 수 있습니다)", | |||||
"send_to": "보내다", | |||||
"search_plach": "위치 검색", | |||||
"finding_place": "위치 찾기", | |||||
"real_time_helper": "실시 도움", | |||||
"translation_butler": "번역 집사", | |||||
"travel_butler": "출행 집사", | |||||
"translation_butler_tips": " 당신의 실시간 밀착 통역으로 언제 어디서나 말이 통하지 않는 것을 해결해 드립니다.", | |||||
"choose_language": "번역할 언어를 선택하세요.", | |||||
"translation_butler_rules": " 호출집사는 H화를 선불로 내야 하며, 집사 서비스는 5분으로 길다.", | |||||
"translation_butler_scenes": " 당신이 있는 곳의 정경 ", | |||||
"translation_butler_scenes_tips": " 빅 데이터에 따르면 장면을 선택하고 문제를 묘사한 사용자가 더욱 효과적으로 도움을 받고 있습니다!", | |||||
"translation_butler_call": "집사를 호출", | |||||
"travel_my_location": "내 위치", | |||||
"travel_go_where": "당신이 어디 가세요?", | |||||
"travel_tips": "현재 포지셔닝 비실시간 모니터링의 경우 매번 \"거리 조회\" 버튼을 클릭하여 조회해야 합니다.", | |||||
"travel_check_distance": "거리 조회", | |||||
"travel_check_distance_result": " 위치 조회에 따르면, 당신의 현재 거리가 목표 지점에서 서로 떨어져 있습니다:", | |||||
"translation_butler_tips2": "현재 줄 서는 사람이 너무 많으니, 기다려 주셔서 감사합니다.", | |||||
"translation_butler_tips3": "집사님을 호출하고 있습니다.", | |||||
"translation_butler_wait_people": "대기자 수", | |||||
"translation_butler_wait_people_unit": "분", | |||||
"translation_butler_wait_time": " 아직 기다려야 할 것으로 예상", | |||||
"translation_butler_already_wait": "이미 기다리다.", | |||||
"translation_butler_cancel": "호출 취소", | |||||
"translation_butler_wait_service": "대기 서비스", | |||||
"translation_butler_dialog_title": " 실시 도움-번역 집사 ", | |||||
"translation_butler_dialog_order": "/s1 시스템을 통한 주문했다.", | |||||
"translation_butler_dialog_start_service": "서비스 시작", | |||||
"translation_butler_dialog_start_chat": "채팅 시작", | |||||
"translation_butler_coin_time": "/s1H화폐//s2분", | |||||
"translation_butler_end_service": "서비스 끝", | |||||
"translation_butler_start_service": "서비스 시작", | |||||
"translation_butler_service_end": "서비스 끝", | |||||
"translation_butler_evaluation": "평가", | |||||
"translation_butler_start_tips": "번역 서비스가 이미 시작되었으니, 이번 서비스는 즐거운 체험이 되기를 바랍니다.", | |||||
"translation_butler_evaluation_tips": "통역 서비스가 끝났으니 즐거운 체험을 하시면 평가해 주십시오.", | |||||
"translation_butler_dialog_tips": "이번 서비스에 만족하십니까?", | |||||
"translation_butler_dialog_yes": "마음에 들다.", | |||||
"translation_butler_dialog_no": " 만족스럽지 못하다.", | |||||
"translation_butler_dialog_submit": "평가를 제출하다.", | |||||
"translation_pos_1": "친절하게 서비스했다.", | |||||
"translation_pos_2": " 신속하다.", | |||||
"translation_pos_3": " 예의와 열정하다.", | |||||
"translation_pos_4": "얘기 편하다.", | |||||
"translation_pos_5": "틀이 없이 번역하다.", | |||||
"translation_neg1": "스토킹 위협", | |||||
"translation_neg2": "얘기 장애", | |||||
"translation_neg3": "반응이 느리다.", | |||||
"translation_neg4": "태도 안 좋다.", | |||||
"translation_neg5": "번역 안되다.", | |||||
"translation_scenes_1": "공항/정류장", | |||||
"translation_scenes_2": "식당/호텔", | |||||
"translation_scenes_3": "KTV/술집", | |||||
"translation_scenes_4": "기타", | |||||
"file": "서류", | |||||
"max_file": "파일 크기 /s1M", | |||||
"translation_input_limit": "/s1자도 입력할 수 있다.", | |||||
"translation_more_desc": "더 많은 묘사", | |||||
"feedback_assistant": " 피드백 팁", | |||||
"feedback_tips":"어떤 문제라도 피드백해 주세요.", | |||||
"man_retranslate":"人工重译", | "man_retranslate":"人工重译", | ||||
"robot_retranslate":"机器重译", | "robot_retranslate":"机器重译", | ||||
"see_original":"查看原文" | "see_original":"查看原文" |
@@ -1305,7 +1305,7 @@ class _GroupChatPageItemState extends State<GroupChatPageItem> | |||||
AppNavigator.pushProfileInfoPage(context, memberModel.memberId, | AppNavigator.pushProfileInfoPage(context, memberModel.memberId, | ||||
fromWhere: 2, | fromWhere: 2, | ||||
addMode: | addMode: | ||||
FriendListMgr().isMyFriend(memberModel.memberId) ? 1 : 0); | |||||
!FriendListMgr().isMyFriend(memberModel.memberId) ? 1 : 0); | |||||
}, | }, | ||||
onLongPress: () { | onLongPress: () { | ||||
print('long press user'); | print('long press user'); | ||||
@@ -2339,142 +2339,142 @@ class I18n implements WidgetsLocalizations { | |||||
String get enter_num_qian => " number of exchanges (unit K) "; | String get enter_num_qian => " number of exchanges (unit K) "; | ||||
/// " number of withdrawals (unit K) " | /// " number of withdrawals (unit K) " | ||||
String get enter_num_qian1 => " number of withdrawals (unit K) "; | String get enter_num_qian1 => " number of withdrawals (unit K) "; | ||||
/// "翻译券" | |||||
String get daily_translate_voucher => "翻译券"; | |||||
/// "通知消息" | |||||
String get msg_notice => "通知消息"; | |||||
/// "选择提醒的人" | |||||
String get select_notice_people => "选择提醒的人"; | |||||
/// "查找手机号" | |||||
String get search_phone => "查找手机号"; | |||||
/// "用户不存在" | |||||
String get not_have_user => "用户不存在"; | |||||
/// "你不能添加自己" | |||||
String get not_add_Myself => "你不能添加自己"; | |||||
/// "对方已拉黑了你" | |||||
String get you_are_blaklisted => "对方已拉黑了你"; | |||||
/// "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)" | |||||
String get confrim_recovery => "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)"; | |||||
/// "發送到" | |||||
String get send_to => "發送到"; | |||||
/// "搜索位置" | |||||
String get search_plach => "搜索位置"; | |||||
/// "查找位置" | |||||
String get finding_place => "查找位置"; | |||||
/// "实时帮" | |||||
String get real_time_helper => "实时帮"; | |||||
/// "翻译管家" | |||||
String get translation_butler => "翻译管家"; | |||||
/// "出行管家" | |||||
String get travel_butler => "出行管家"; | |||||
/// "您的实时贴身翻译,随时随地帮您解决语言不通" | |||||
String get translation_butler_tips => "您的实时贴身翻译,随时随地帮您解决语言不通"; | |||||
/// "请选择要翻译的语言" | |||||
String get choose_language => "请选择要翻译的语言"; | |||||
/// "呼叫管家需要预付H币,管家服务时长为5分钟" | |||||
String get translation_butler_rules => "呼叫管家需要预付H币,管家服务时长为5分钟"; | |||||
/// "您当所在场景" | |||||
String get translation_butler_scenes => "您当所在场景"; | |||||
/// "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!" | |||||
String get translation_butler_scenes_tips => "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!"; | |||||
/// "呼叫管家" | |||||
String get translation_butler_call => "呼叫管家"; | |||||
/// "我的位置" | |||||
String get travel_my_location => "我的位置"; | |||||
/// "你要去哪儿" | |||||
String get travel_go_where => "你要去哪儿"; | |||||
/// "当前定位非实时监测,每次需点击“距离查询”按钮查询" | |||||
String get travel_tips => "当前定位非实时监测,每次需点击“距离查询”按钮查询"; | |||||
/// "距离查询" | |||||
String get travel_check_distance => "距离查询"; | |||||
/// "根据定位查询,您的当前距离目标地点相距:" | |||||
String get travel_check_distance_result => "根据定位查询,您的当前距离目标地点相距:"; | |||||
/// "当前排队人数过多,感谢您的耐心等待" | |||||
String get translation_butler_tips2 => "当前排队人数过多,感谢您的耐心等待"; | |||||
/// "正在为您呼叫管家" | |||||
String get translation_butler_tips3 => "正在为您呼叫管家"; | |||||
/// "等待人数" | |||||
String get translation_butler_wait_people => "等待人数"; | |||||
/// "位" | |||||
String get translation_butler_wait_people_unit => "位"; | |||||
/// "预计还需等待" | |||||
String get translation_butler_wait_time => "预计还需等待"; | |||||
/// "已等待" | |||||
String get translation_butler_already_wait => "已等待"; | |||||
/// "取消呼叫" | |||||
String get translation_butler_cancel => "取消呼叫"; | |||||
/// "等待服务" | |||||
String get translation_butler_wait_service => "等待服务"; | |||||
/// "实时帮-翻译管家" | |||||
String get translation_butler_dialog_title => "实时帮-翻译管家"; | |||||
/// "/s1通过系统下单" | |||||
String get translation_butler_dialog_order => "/s1通过系统下单"; | |||||
/// "开始服务" | |||||
String get translation_butler_dialog_start_service => "开始服务"; | |||||
/// "开始聊天" | |||||
String get translation_butler_dialog_start_chat => "开始聊天"; | |||||
/// "/s1H币//s2分钟" | |||||
String get translation_butler_coin_time => "/s1H币//s2分钟"; | |||||
/// "结束服务" | |||||
String get translation_butler_end_service => "结束服务"; | |||||
/// "服务开始" | |||||
String get translation_butler_start_service => "服务开始"; | |||||
/// "服务结束" | |||||
String get translation_butler_service_end => "服务结束"; | |||||
/// "评价" | |||||
String get translation_butler_evaluation => "评价"; | |||||
/// "翻译服务已开始,愿本次服务体验愉快" | |||||
String get translation_butler_start_tips => "翻译服务已开始,愿本次服务体验愉快"; | |||||
/// "翻译服务已结束,体验愉快就给个评价吧" | |||||
String get translation_butler_evaluation_tips => "翻译服务已结束,体验愉快就给个评价吧"; | |||||
/// "你对本次服务满意吗?" | |||||
String get translation_butler_dialog_tips => "你对本次服务满意吗?"; | |||||
/// "满意" | |||||
String get translation_butler_dialog_yes => "满意"; | |||||
/// "不满意" | |||||
String get translation_butler_dialog_no => "不满意"; | |||||
/// "提交评价" | |||||
String get translation_butler_dialog_submit => "提交评价"; | |||||
/// "服务耐心" | |||||
String get translation_pos_1 => "服务耐心"; | |||||
/// "快速准时" | |||||
String get translation_pos_2 => "快速准时"; | |||||
/// "礼貌热情" | |||||
String get translation_pos_3 => "礼貌热情"; | |||||
/// "沟通顺畅" | |||||
String get translation_pos_4 => "沟通顺畅"; | |||||
/// "大神翻译" | |||||
String get translation_pos_5 => "大神翻译"; | |||||
/// "骚扰威胁" | |||||
String get translation_neg1 => "骚扰威胁"; | |||||
/// "沟通障碍" | |||||
String get translation_neg2 => "沟通障碍"; | |||||
/// "响应缓慢" | |||||
String get translation_neg3 => "响应缓慢"; | |||||
/// "态度不好" | |||||
String get translation_neg4 => "态度不好"; | |||||
/// "翻译不行" | |||||
String get translation_neg5 => "翻译不行"; | |||||
/// "机场/车站" | |||||
String get translation_scenes_1 => "机场/车站"; | |||||
/// "餐厅/酒店" | |||||
String get translation_scenes_2 => "餐厅/酒店"; | |||||
/// "KTV/酒吧" | |||||
String get translation_scenes_3 => "KTV/酒吧"; | |||||
/// "其他" | |||||
String get translation_scenes_4 => "其他"; | |||||
/// "文件" | |||||
String get file => "文件"; | |||||
/// "文件大于/s1M" | |||||
String get max_file => "文件大于/s1M"; | |||||
/// "还可以输入/s1字" | |||||
String get translation_input_limit => "还可以输入/s1字"; | |||||
/// "更多描述" | |||||
String get translation_more_desc => "更多描述"; | |||||
/// "反馈小助手" | |||||
String get feedback_assistant => "反馈小助手"; | |||||
/// "有什么问题都可以反馈给我哦" | |||||
String get feedback_tips => "有什么问题都可以反馈给我哦"; | |||||
/// "Translation voucher" | |||||
String get daily_translate_voucher => "Translation voucher"; | |||||
/// "Notice message" | |||||
String get msg_notice => "Notice message"; | |||||
/// "Select notice people" | |||||
String get select_notice_people => "Select notice people"; | |||||
/// "Search phone number" | |||||
String get search_phone => "Search phone number"; | |||||
/// "User does not exist" | |||||
String get not_have_user => "User does not exist"; | |||||
/// "You can’t add yourself" | |||||
String get not_add_Myself => "You can’t add yourself"; | |||||
/// "You are blacklisted" | |||||
String get you_are_blaklisted => "You are blacklisted"; | |||||
/// "Recover the destroyed photos?\n(Users who have been viewed can be viewed once again)" | |||||
String get confrim_recovery => "Recover the destroyed photos?\n(Users who have been viewed can be viewed once again)"; | |||||
/// "Send to" | |||||
String get send_to => "Send to"; | |||||
/// "Search location" | |||||
String get search_plach => "Search location"; | |||||
/// "Find location" | |||||
String get finding_place => "Find location"; | |||||
/// "Real-time helper" | |||||
String get real_time_helper => "Real-time helper"; | |||||
/// "Translation assistant" | |||||
String get translation_butler => "Translation assistant"; | |||||
/// "Travel assistant" | |||||
String get travel_butler => "Travel assistant"; | |||||
/// "Your real-time personal translator, it can help you solve the language barrier anytime and anywhere" | |||||
String get translation_butler_tips => "Your real-time personal translator, it can help you solve the language barrier anytime and anywhere"; | |||||
/// "Please select the language to be translated" | |||||
String get choose_language => "Please select the language to be translated"; | |||||
/// "Before calling the translation assistant, you need to pay H coin, and the service time of it is 5 minutes" | |||||
String get translation_butler_rules => "Before calling the translation assistant, you need to pay H coin, and the service time of it is 5 minutes"; | |||||
/// "Scene where you are located" | |||||
String get translation_butler_scenes => "Scene where you are located"; | |||||
/// "According to the big data, users who select scenes and describe problems can get more effective help!" | |||||
String get translation_butler_scenes_tips => "According to the big data, users who select scenes and describe problems can get more effective help!"; | |||||
/// "Call the assistant" | |||||
String get translation_butler_call => "Call the assistant"; | |||||
/// "My location" | |||||
String get travel_my_location => "My location"; | |||||
/// "Place you want to go" | |||||
String get travel_go_where => "Place you want to go"; | |||||
/// "The current location is not monitored in real time. You need to click the \"distance query\" button to query it each time" | |||||
String get travel_tips => "The current location is not monitored in real time. You need to click the \"distance query\" button to query it each time"; | |||||
/// "Distance query" | |||||
String get travel_check_distance => "Distance query"; | |||||
/// "According to the positioning, your current distance from the target location queried is:" | |||||
String get travel_check_distance_result => "According to the positioning, your current distance from the target location queried is:"; | |||||
/// "There are too many people in the queue, thank you for your patience" | |||||
String get translation_butler_tips2 => "There are too many people in the queue, thank you for your patience"; | |||||
/// "Calling the assistant for you" | |||||
String get translation_butler_tips3 => "Calling the assistant for you"; | |||||
/// "Waiting number" | |||||
String get translation_butler_wait_people => "Waiting number"; | |||||
/// "Person(s)" | |||||
String get translation_butler_wait_people_unit => "Person(s)"; | |||||
/// "Time expected to wait" | |||||
String get translation_butler_wait_time => "Time expected to wait"; | |||||
/// "Waiting time already" | |||||
String get translation_butler_already_wait => "Waiting time already"; | |||||
/// "Cancel call " | |||||
String get translation_butler_cancel => "Cancel call "; | |||||
/// "Waiting for service" | |||||
String get translation_butler_wait_service => "Waiting for service"; | |||||
/// "Real time helper-translation assistant" | |||||
String get translation_butler_dialog_title => "Real time helper-translation assistant"; | |||||
/// "/s1 Place an order through the system" | |||||
String get translation_butler_dialog_order => "/s1 Place an order through the system"; | |||||
/// "Service begins" | |||||
String get translation_butler_dialog_start_service => "Service begins"; | |||||
/// "Chat begins" | |||||
String get translation_butler_dialog_start_chat => "Chat begins"; | |||||
/// "/s1H coin//s2 min" | |||||
String get translation_butler_coin_time => "/s1H coin//s2 min"; | |||||
/// "Service ended" | |||||
String get translation_butler_end_service => "Service ended"; | |||||
/// "Service begins" | |||||
String get translation_butler_start_service => "Service begins"; | |||||
/// "Service ended" | |||||
String get translation_butler_service_end => "Service ended"; | |||||
/// "Evaluation" | |||||
String get translation_butler_evaluation => "Evaluation"; | |||||
/// "Translation service has begun,I hope you a pleasant experience of service" | |||||
String get translation_butler_start_tips => "Translation service has begun,I hope you a pleasant experience of service"; | |||||
/// "Translation service is over, please give an evaluation after your pleasant experience" | |||||
String get translation_butler_evaluation_tips => "Translation service is over, please give an evaluation after your pleasant experience"; | |||||
/// "Are you satisfied with this service?" | |||||
String get translation_butler_dialog_tips => "Are you satisfied with this service?"; | |||||
/// "Satisfied" | |||||
String get translation_butler_dialog_yes => "Satisfied"; | |||||
/// "Dissatisfied" | |||||
String get translation_butler_dialog_no => "Dissatisfied"; | |||||
/// "Submit evaluation" | |||||
String get translation_butler_dialog_submit => "Submit evaluation"; | |||||
/// "Patient services" | |||||
String get translation_pos_1 => "Patient services"; | |||||
/// "Fast and punctual" | |||||
String get translation_pos_2 => "Fast and punctual"; | |||||
/// "Politeness and enthusiasm" | |||||
String get translation_pos_3 => "Politeness and enthusiasm"; | |||||
/// "Smooth communication" | |||||
String get translation_pos_4 => "Smooth communication"; | |||||
/// "Brilliant translation" | |||||
String get translation_pos_5 => "Brilliant translation"; | |||||
/// "Harassment and threat" | |||||
String get translation_neg1 => "Harassment and threat"; | |||||
/// "Communication barriers" | |||||
String get translation_neg2 => "Communication barriers"; | |||||
/// "Slow response" | |||||
String get translation_neg3 => "Slow response"; | |||||
/// "Bad attitude " | |||||
String get translation_neg4 => "Bad attitude "; | |||||
/// "Poor translation" | |||||
String get translation_neg5 => "Poor translation"; | |||||
/// "Airports / stations" | |||||
String get translation_scenes_1 => "Airports / stations"; | |||||
/// "Restaurants / hotels" | |||||
String get translation_scenes_2 => "Restaurants / hotels"; | |||||
/// "KTV / bars" | |||||
String get translation_scenes_3 => "KTV / bars"; | |||||
/// "Others" | |||||
String get translation_scenes_4 => "Others"; | |||||
/// "Files" | |||||
String get file => "Files"; | |||||
/// "File larger than /s1M" | |||||
String get max_file => "File larger than /s1M"; | |||||
/// "/s1 words can also be input" | |||||
String get translation_input_limit => "/s1 words can also be input"; | |||||
/// "More descriptions" | |||||
String get translation_more_desc => "More descriptions"; | |||||
/// "Feedback helper" | |||||
String get feedback_assistant => "Feedback helper"; | |||||
/// "You can give me feedback in case of any questions" | |||||
String get feedback_tips => "You can give me feedback in case of any questions"; | |||||
/// "人工重译" | /// "人工重译" | ||||
String get man_retranslate => "人工重译"; | String get man_retranslate => "人工重译"; | ||||
/// "机器重译" | /// "机器重译" | ||||
@@ -16992,210 +16992,210 @@ class _I18n_ko_KR extends I18n { | |||||
/// "인출 금액(단위K)" | /// "인출 금액(단위K)" | ||||
@override | @override | ||||
String get enter_num_qian1 => "인출 금액(단위K)"; | String get enter_num_qian1 => "인출 금액(단위K)"; | ||||
/// "翻译券" | |||||
/// " 번역권" | |||||
@override | @override | ||||
String get daily_translate_voucher => "翻译券"; | |||||
/// "通知消息" | |||||
String get daily_translate_voucher => " 번역권"; | |||||
/// " 소식 알람 " | |||||
@override | @override | ||||
String get msg_notice => "通知消息"; | |||||
/// "选择提醒的人" | |||||
String get msg_notice => " 소식 알람 "; | |||||
/// "멘션 선택" | |||||
@override | @override | ||||
String get select_notice_people => "选择提醒的人"; | |||||
/// "查找手机号" | |||||
String get select_notice_people => "멘션 선택"; | |||||
/// "휴대폰 번호 찾기" | |||||
@override | @override | ||||
String get search_phone => "查找手机号"; | |||||
/// "用户不存在" | |||||
String get search_phone => "휴대폰 번호 찾기"; | |||||
/// "사용자가 존재하지 않음" | |||||
@override | @override | ||||
String get not_have_user => "用户不存在"; | |||||
/// "你不能添加自己" | |||||
String get not_have_user => "사용자가 존재하지 않음"; | |||||
/// "당신은 자신을 추가할 수 없다" | |||||
@override | @override | ||||
String get not_add_Myself => "你不能添加自己"; | |||||
/// "对方已拉黑了你" | |||||
String get not_add_Myself => "당신은 자신을 추가할 수 없다"; | |||||
/// "상대가 널 블랙리스트에 추가했습니다." | |||||
@override | @override | ||||
String get you_are_blaklisted => "对方已拉黑了你"; | |||||
/// "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)" | |||||
String get you_are_blaklisted => "상대가 널 블랙리스트에 추가했습니다."; | |||||
/// "불에 탄 사진을 복구하시겠습니까?\n(이미 본 사용자는 다시 볼 수 있습니다)" | |||||
@override | @override | ||||
String get confrim_recovery => "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)"; | |||||
/// "發送到" | |||||
String get confrim_recovery => "불에 탄 사진을 복구하시겠습니까?\n(이미 본 사용자는 다시 볼 수 있습니다)"; | |||||
/// "보내다" | |||||
@override | @override | ||||
String get send_to => "發送到"; | |||||
/// "搜索位置" | |||||
String get send_to => "보내다"; | |||||
/// "위치 검색" | |||||
@override | @override | ||||
String get search_plach => "搜索位置"; | |||||
/// "查找位置" | |||||
String get search_plach => "위치 검색"; | |||||
/// "위치 찾기" | |||||
@override | @override | ||||
String get finding_place => "查找位置"; | |||||
/// "实时帮" | |||||
String get finding_place => "위치 찾기"; | |||||
/// "실시 도움" | |||||
@override | @override | ||||
String get real_time_helper => "实时帮"; | |||||
/// "翻译管家" | |||||
String get real_time_helper => "실시 도움"; | |||||
/// "번역 집사" | |||||
@override | @override | ||||
String get translation_butler => "翻译管家"; | |||||
/// "出行管家" | |||||
String get translation_butler => "번역 집사"; | |||||
/// "출행 집사" | |||||
@override | @override | ||||
String get travel_butler => "出行管家"; | |||||
/// "您的实时贴身翻译,随时随地帮您解决语言不通" | |||||
String get travel_butler => "출행 집사"; | |||||
/// " 당신의 실시간 밀착 통역으로 언제 어디서나 말이 통하지 않는 것을 해결해 드립니다." | |||||
@override | @override | ||||
String get translation_butler_tips => "您的实时贴身翻译,随时随地帮您解决语言不通"; | |||||
/// "请选择要翻译的语言" | |||||
String get translation_butler_tips => " 당신의 실시간 밀착 통역으로 언제 어디서나 말이 통하지 않는 것을 해결해 드립니다."; | |||||
/// "번역할 언어를 선택하세요." | |||||
@override | @override | ||||
String get choose_language => "请选择要翻译的语言"; | |||||
/// "呼叫管家需要预付H币,管家服务时长为5分钟" | |||||
String get choose_language => "번역할 언어를 선택하세요."; | |||||
/// " 호출집사는 H화를 선불로 내야 하며, 집사 서비스는 5분으로 길다." | |||||
@override | @override | ||||
String get translation_butler_rules => "呼叫管家需要预付H币,管家服务时长为5分钟"; | |||||
/// "您当所在场景" | |||||
String get translation_butler_rules => " 호출집사는 H화를 선불로 내야 하며, 집사 서비스는 5분으로 길다."; | |||||
/// " 당신이 있는 곳의 정경 " | |||||
@override | @override | ||||
String get translation_butler_scenes => "您当所在场景"; | |||||
/// "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!" | |||||
String get translation_butler_scenes => " 당신이 있는 곳의 정경 "; | |||||
/// " 빅 데이터에 따르면 장면을 선택하고 문제를 묘사한 사용자가 더욱 효과적으로 도움을 받고 있습니다!" | |||||
@override | @override | ||||
String get translation_butler_scenes_tips => "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!"; | |||||
/// "呼叫管家" | |||||
String get translation_butler_scenes_tips => " 빅 데이터에 따르면 장면을 선택하고 문제를 묘사한 사용자가 더욱 효과적으로 도움을 받고 있습니다!"; | |||||
/// "집사를 호출" | |||||
@override | @override | ||||
String get translation_butler_call => "呼叫管家"; | |||||
/// "我的位置" | |||||
String get translation_butler_call => "집사를 호출"; | |||||
/// "내 위치" | |||||
@override | @override | ||||
String get travel_my_location => "我的位置"; | |||||
/// "你要去哪儿" | |||||
String get travel_my_location => "내 위치"; | |||||
/// "당신이 어디 가세요?" | |||||
@override | @override | ||||
String get travel_go_where => "你要去哪儿"; | |||||
/// "当前定位非实时监测,每次需点击“距离查询”按钮查询" | |||||
String get travel_go_where => "당신이 어디 가세요?"; | |||||
/// "현재 포지셔닝 비실시간 모니터링의 경우 매번 \"거리 조회\" 버튼을 클릭하여 조회해야 합니다." | |||||
@override | @override | ||||
String get travel_tips => "当前定位非实时监测,每次需点击“距离查询”按钮查询"; | |||||
/// "距离查询" | |||||
String get travel_tips => "현재 포지셔닝 비실시간 모니터링의 경우 매번 \"거리 조회\" 버튼을 클릭하여 조회해야 합니다."; | |||||
/// "거리 조회" | |||||
@override | @override | ||||
String get travel_check_distance => "距离查询"; | |||||
/// "根据定位查询,您的当前距离目标地点相距:" | |||||
String get travel_check_distance => "거리 조회"; | |||||
/// " 위치 조회에 따르면, 당신의 현재 거리가 목표 지점에서 서로 떨어져 있습니다:" | |||||
@override | @override | ||||
String get travel_check_distance_result => "根据定位查询,您的当前距离目标地点相距:"; | |||||
/// "当前排队人数过多,感谢您的耐心等待" | |||||
String get travel_check_distance_result => " 위치 조회에 따르면, 당신의 현재 거리가 목표 지점에서 서로 떨어져 있습니다:"; | |||||
/// "현재 줄 서는 사람이 너무 많으니, 기다려 주셔서 감사합니다." | |||||
@override | @override | ||||
String get translation_butler_tips2 => "当前排队人数过多,感谢您的耐心等待"; | |||||
/// "正在为您呼叫管家" | |||||
String get translation_butler_tips2 => "현재 줄 서는 사람이 너무 많으니, 기다려 주셔서 감사합니다."; | |||||
/// "집사님을 호출하고 있습니다." | |||||
@override | @override | ||||
String get translation_butler_tips3 => "正在为您呼叫管家"; | |||||
/// "等待人数" | |||||
String get translation_butler_tips3 => "집사님을 호출하고 있습니다."; | |||||
/// "대기자 수" | |||||
@override | @override | ||||
String get translation_butler_wait_people => "等待人数"; | |||||
/// "位" | |||||
String get translation_butler_wait_people => "대기자 수"; | |||||
/// "분" | |||||
@override | @override | ||||
String get translation_butler_wait_people_unit => "位"; | |||||
/// "预计还需等待" | |||||
String get translation_butler_wait_people_unit => "분"; | |||||
/// " 아직 기다려야 할 것으로 예상" | |||||
@override | @override | ||||
String get translation_butler_wait_time => "预计还需等待"; | |||||
/// "已等待" | |||||
String get translation_butler_wait_time => " 아직 기다려야 할 것으로 예상"; | |||||
/// "이미 기다리다." | |||||
@override | @override | ||||
String get translation_butler_already_wait => "已等待"; | |||||
/// "取消呼叫" | |||||
String get translation_butler_already_wait => "이미 기다리다."; | |||||
/// "호출 취소" | |||||
@override | @override | ||||
String get translation_butler_cancel => "取消呼叫"; | |||||
/// "等待服务" | |||||
String get translation_butler_cancel => "호출 취소"; | |||||
/// "대기 서비스" | |||||
@override | @override | ||||
String get translation_butler_wait_service => "等待服务"; | |||||
/// "实时帮-翻译管家" | |||||
String get translation_butler_wait_service => "대기 서비스"; | |||||
/// " 실시 도움-번역 집사 " | |||||
@override | @override | ||||
String get translation_butler_dialog_title => "实时帮-翻译管家"; | |||||
/// "/s1通过系统下单" | |||||
String get translation_butler_dialog_title => " 실시 도움-번역 집사 "; | |||||
/// "/s1 시스템을 통한 주문했다." | |||||
@override | @override | ||||
String get translation_butler_dialog_order => "/s1通过系统下单"; | |||||
/// "开始服务" | |||||
String get translation_butler_dialog_order => "/s1 시스템을 통한 주문했다."; | |||||
/// "서비스 시작" | |||||
@override | @override | ||||
String get translation_butler_dialog_start_service => "开始服务"; | |||||
/// "开始聊天" | |||||
String get translation_butler_dialog_start_service => "서비스 시작"; | |||||
/// "채팅 시작" | |||||
@override | @override | ||||
String get translation_butler_dialog_start_chat => "开始聊天"; | |||||
/// "/s1H币//s2分钟" | |||||
String get translation_butler_dialog_start_chat => "채팅 시작"; | |||||
/// "/s1H화폐//s2분" | |||||
@override | @override | ||||
String get translation_butler_coin_time => "/s1H币//s2分钟"; | |||||
/// "结束服务" | |||||
String get translation_butler_coin_time => "/s1H화폐//s2분"; | |||||
/// "서비스 끝" | |||||
@override | @override | ||||
String get translation_butler_end_service => "结束服务"; | |||||
/// "服务开始" | |||||
String get translation_butler_end_service => "서비스 끝"; | |||||
/// "서비스 시작" | |||||
@override | @override | ||||
String get translation_butler_start_service => "服务开始"; | |||||
/// "服务结束" | |||||
String get translation_butler_start_service => "서비스 시작"; | |||||
/// "서비스 끝" | |||||
@override | @override | ||||
String get translation_butler_service_end => "服务结束"; | |||||
/// "评价" | |||||
String get translation_butler_service_end => "서비스 끝"; | |||||
/// "평가" | |||||
@override | @override | ||||
String get translation_butler_evaluation => "评价"; | |||||
/// "翻译服务已开始,愿本次服务体验愉快" | |||||
String get translation_butler_evaluation => "평가"; | |||||
/// "번역 서비스가 이미 시작되었으니, 이번 서비스는 즐거운 체험이 되기를 바랍니다." | |||||
@override | @override | ||||
String get translation_butler_start_tips => "翻译服务已开始,愿本次服务体验愉快"; | |||||
/// "翻译服务已结束,体验愉快就给个评价吧" | |||||
String get translation_butler_start_tips => "번역 서비스가 이미 시작되었으니, 이번 서비스는 즐거운 체험이 되기를 바랍니다."; | |||||
/// "통역 서비스가 끝났으니 즐거운 체험을 하시면 평가해 주십시오." | |||||
@override | @override | ||||
String get translation_butler_evaluation_tips => "翻译服务已结束,体验愉快就给个评价吧"; | |||||
/// "你对本次服务满意吗?" | |||||
String get translation_butler_evaluation_tips => "통역 서비스가 끝났으니 즐거운 체험을 하시면 평가해 주십시오."; | |||||
/// "이번 서비스에 만족하십니까?" | |||||
@override | @override | ||||
String get translation_butler_dialog_tips => "你对本次服务满意吗?"; | |||||
/// "满意" | |||||
String get translation_butler_dialog_tips => "이번 서비스에 만족하십니까?"; | |||||
/// "마음에 들다." | |||||
@override | @override | ||||
String get translation_butler_dialog_yes => "满意"; | |||||
/// "不满意" | |||||
String get translation_butler_dialog_yes => "마음에 들다."; | |||||
/// " 만족스럽지 못하다." | |||||
@override | @override | ||||
String get translation_butler_dialog_no => "不满意"; | |||||
/// "提交评价" | |||||
String get translation_butler_dialog_no => " 만족스럽지 못하다."; | |||||
/// "평가를 제출하다." | |||||
@override | @override | ||||
String get translation_butler_dialog_submit => "提交评价"; | |||||
/// "服务耐心" | |||||
String get translation_butler_dialog_submit => "평가를 제출하다."; | |||||
/// "친절하게 서비스했다." | |||||
@override | @override | ||||
String get translation_pos_1 => "服务耐心"; | |||||
/// "快速准时" | |||||
String get translation_pos_1 => "친절하게 서비스했다."; | |||||
/// " 신속하다." | |||||
@override | @override | ||||
String get translation_pos_2 => "快速准时"; | |||||
/// "礼貌热情" | |||||
String get translation_pos_2 => " 신속하다."; | |||||
/// " 예의와 열정하다." | |||||
@override | @override | ||||
String get translation_pos_3 => "礼貌热情"; | |||||
/// "沟通顺畅" | |||||
String get translation_pos_3 => " 예의와 열정하다."; | |||||
/// "얘기 편하다." | |||||
@override | @override | ||||
String get translation_pos_4 => "沟通顺畅"; | |||||
/// "大神翻译" | |||||
String get translation_pos_4 => "얘기 편하다."; | |||||
/// "틀이 없이 번역하다." | |||||
@override | @override | ||||
String get translation_pos_5 => "大神翻译"; | |||||
/// "骚扰威胁" | |||||
String get translation_pos_5 => "틀이 없이 번역하다."; | |||||
/// "스토킹 위협" | |||||
@override | @override | ||||
String get translation_neg1 => "骚扰威胁"; | |||||
/// "沟通障碍" | |||||
String get translation_neg1 => "스토킹 위협"; | |||||
/// "얘기 장애" | |||||
@override | @override | ||||
String get translation_neg2 => "沟通障碍"; | |||||
/// "响应缓慢" | |||||
String get translation_neg2 => "얘기 장애"; | |||||
/// "반응이 느리다." | |||||
@override | @override | ||||
String get translation_neg3 => "响应缓慢"; | |||||
/// "态度不好" | |||||
String get translation_neg3 => "반응이 느리다."; | |||||
/// "태도 안 좋다." | |||||
@override | @override | ||||
String get translation_neg4 => "态度不好"; | |||||
/// "翻译不行" | |||||
String get translation_neg4 => "태도 안 좋다."; | |||||
/// "번역 안되다." | |||||
@override | @override | ||||
String get translation_neg5 => "翻译不行"; | |||||
/// "机场/车站" | |||||
String get translation_neg5 => "번역 안되다."; | |||||
/// "공항/정류장" | |||||
@override | @override | ||||
String get translation_scenes_1 => "机场/车站"; | |||||
/// "餐厅/酒店" | |||||
String get translation_scenes_1 => "공항/정류장"; | |||||
/// "식당/호텔" | |||||
@override | @override | ||||
String get translation_scenes_2 => "餐厅/酒店"; | |||||
/// "KTV/酒吧" | |||||
String get translation_scenes_2 => "식당/호텔"; | |||||
/// "KTV/술집" | |||||
@override | @override | ||||
String get translation_scenes_3 => "KTV/酒吧"; | |||||
/// "其他" | |||||
String get translation_scenes_3 => "KTV/술집"; | |||||
/// "기타" | |||||
@override | @override | ||||
String get translation_scenes_4 => "其他"; | |||||
/// "文件" | |||||
String get translation_scenes_4 => "기타"; | |||||
/// "서류" | |||||
@override | @override | ||||
String get file => "文件"; | |||||
/// "文件大于/s1M" | |||||
String get file => "서류"; | |||||
/// "파일 크기 /s1M" | |||||
@override | @override | ||||
String get max_file => "文件大于/s1M"; | |||||
/// "还可以输入/s1字" | |||||
String get max_file => "파일 크기 /s1M"; | |||||
/// "/s1자도 입력할 수 있다." | |||||
@override | @override | ||||
String get translation_input_limit => "还可以输入/s1字"; | |||||
/// "更多描述" | |||||
String get translation_input_limit => "/s1자도 입력할 수 있다."; | |||||
/// "더 많은 묘사" | |||||
@override | @override | ||||
String get translation_more_desc => "更多描述"; | |||||
/// "反馈小助手" | |||||
String get translation_more_desc => "더 많은 묘사"; | |||||
/// " 피드백 팁" | |||||
@override | @override | ||||
String get feedback_assistant => "反馈小助手"; | |||||
/// "有什么问题都可以反馈给我哦" | |||||
String get feedback_assistant => " 피드백 팁"; | |||||
/// "어떤 문제라도 피드백해 주세요." | |||||
@override | @override | ||||
String get feedback_tips => "有什么问题都可以反馈给我哦"; | |||||
String get feedback_tips => "어떤 문제라도 피드백해 주세요."; | |||||
/// "人工重译" | /// "人工重译" | ||||
@override | @override | ||||
String get man_retranslate => "人工重译"; | String get man_retranslate => "人工重译"; | ||||
@@ -20672,210 +20672,210 @@ class _I18n_ja_JP extends I18n { | |||||
/// "引き出し数量(单位K)" | /// "引き出し数量(单位K)" | ||||
@override | @override | ||||
String get enter_num_qian1 => "引き出し数量(单位K)"; | String get enter_num_qian1 => "引き出し数量(单位K)"; | ||||
/// "翻译券" | |||||
/// "翻訳券" | |||||
@override | @override | ||||
String get daily_translate_voucher => "翻译券"; | |||||
/// "通知消息" | |||||
String get daily_translate_voucher => "翻訳券"; | |||||
/// "通知メッセージ" | |||||
@override | @override | ||||
String get msg_notice => "通知消息"; | |||||
/// "选择提醒的人" | |||||
String get msg_notice => "通知メッセージ"; | |||||
/// "注意する人を選択" | |||||
@override | @override | ||||
String get select_notice_people => "选择提醒的人"; | |||||
/// "查找手机号" | |||||
String get select_notice_people => "注意する人を選択"; | |||||
/// "携帯番号を検索" | |||||
@override | @override | ||||
String get search_phone => "查找手机号"; | |||||
/// "用户不存在" | |||||
String get search_phone => "携帯番号を検索"; | |||||
/// "ユーザーは存在しない" | |||||
@override | @override | ||||
String get not_have_user => "用户不存在"; | |||||
/// "你不能添加自己" | |||||
String get not_have_user => "ユーザーは存在しない"; | |||||
/// "自分を追加することはできない" | |||||
@override | @override | ||||
String get not_add_Myself => "你不能添加自己"; | |||||
/// "对方已拉黑了你" | |||||
String get not_add_Myself => "自分を追加することはできない"; | |||||
/// "相手は既にあなたをプロックしました" | |||||
@override | @override | ||||
String get you_are_blaklisted => "对方已拉黑了你"; | |||||
/// "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)" | |||||
String get you_are_blaklisted => "相手は既にあなたをプロックしました"; | |||||
/// "焼却した写真を立直しますか?(すでに見たユーザーはもう一度見ることができます)" | |||||
@override | @override | ||||
String get confrim_recovery => "确定恢复已被焚毁的照片吗?\n(已经看过的用户可以再看一次)"; | |||||
/// "發送到" | |||||
String get confrim_recovery => "焼却した写真を立直しますか?(すでに見たユーザーはもう一度見ることができます)"; | |||||
/// "発送" | |||||
@override | @override | ||||
String get send_to => "發送到"; | |||||
/// "搜索位置" | |||||
String get send_to => "発送"; | |||||
/// "位置検索" | |||||
@override | @override | ||||
String get search_plach => "搜索位置"; | |||||
/// "查找位置" | |||||
String get search_plach => "位置検索"; | |||||
/// "位置を検索" | |||||
@override | @override | ||||
String get finding_place => "查找位置"; | |||||
/// "实时帮" | |||||
String get finding_place => "位置を検索"; | |||||
/// "リアルタイムヘルプ" | |||||
@override | @override | ||||
String get real_time_helper => "实时帮"; | |||||
/// "翻译管家" | |||||
String get real_time_helper => "リアルタイムヘルプ"; | |||||
/// "翻訳バトラー" | |||||
@override | @override | ||||
String get translation_butler => "翻译管家"; | |||||
/// "出行管家" | |||||
String get translation_butler => "翻訳バトラー"; | |||||
/// "トラベルバトラー" | |||||
@override | @override | ||||
String get travel_butler => "出行管家"; | |||||
/// "您的实时贴身翻译,随时随地帮您解决语言不通" | |||||
String get travel_butler => "トラベルバトラー"; | |||||
/// "あなたのリアルタイムの個人通訳は、いつでもどこでも言語の不通を解決してくれます" | |||||
@override | @override | ||||
String get translation_butler_tips => "您的实时贴身翻译,随时随地帮您解决语言不通"; | |||||
/// "请选择要翻译的语言" | |||||
String get translation_butler_tips => "あなたのリアルタイムの個人通訳は、いつでもどこでも言語の不通を解決してくれます"; | |||||
/// "翻訳する言語を選んでください" | |||||
@override | @override | ||||
String get choose_language => "请选择要翻译的语言"; | |||||
/// "呼叫管家需要预付H币,管家服务时长为5分钟" | |||||
String get choose_language => "翻訳する言語を選んでください"; | |||||
/// "バトラーを呼ぶにはH幤が必要です、バトラーサービスは5分かかります。" | |||||
@override | @override | ||||
String get translation_butler_rules => "呼叫管家需要预付H币,管家服务时长为5分钟"; | |||||
/// "您当所在场景" | |||||
String get translation_butler_rules => "バトラーを呼ぶにはH幤が必要です、バトラーサービスは5分かかります。"; | |||||
/// "あなたがいるシーン" | |||||
@override | @override | ||||
String get translation_butler_scenes => "您当所在场景"; | |||||
/// "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!" | |||||
String get translation_butler_scenes => "あなたがいるシーン"; | |||||
/// "ビッグデータによると、シーンを選択して問題を説明するユーザーはより効果的に助けられました!" | |||||
@override | @override | ||||
String get translation_butler_scenes_tips => "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!"; | |||||
/// "呼叫管家" | |||||
String get translation_butler_scenes_tips => "ビッグデータによると、シーンを選択して問題を説明するユーザーはより効果的に助けられました!"; | |||||
/// "バトラーを呼びます" | |||||
@override | @override | ||||
String get translation_butler_call => "呼叫管家"; | |||||
/// "我的位置" | |||||
String get translation_butler_call => "バトラーを呼びます"; | |||||
/// "私の位置" | |||||
@override | @override | ||||
String get travel_my_location => "我的位置"; | |||||
/// "你要去哪儿" | |||||
String get travel_my_location => "私の位置"; | |||||
/// "どこへ行きますか" | |||||
@override | @override | ||||
String get travel_go_where => "你要去哪儿"; | |||||
/// "当前定位非实时监测,每次需点击“距离查询”按钮查询" | |||||
String get travel_go_where => "どこへ行きますか"; | |||||
/// "現在の位置付けは非リアルタイム監視で、毎回「距離照会」ボタンをクリックして照会します" | |||||
@override | @override | ||||
String get travel_tips => "当前定位非实时监测,每次需点击“距离查询”按钮查询"; | |||||
/// "距离查询" | |||||
String get travel_tips => "現在の位置付けは非リアルタイム監視で、毎回「距離照会」ボタンをクリックして照会します"; | |||||
/// "距離の照会" | |||||
@override | @override | ||||
String get travel_check_distance => "距离查询"; | |||||
/// "根据定位查询,您的当前距离目标地点相距:" | |||||
String get travel_check_distance => "距離の照会"; | |||||
/// "ポジショニングクエリによると、ターゲット位置からの現在の距離:" | |||||
@override | @override | ||||
String get travel_check_distance_result => "根据定位查询,您的当前距离目标地点相距:"; | |||||
/// "当前排队人数过多,感谢您的耐心等待" | |||||
String get travel_check_distance_result => "ポジショニングクエリによると、ターゲット位置からの現在の距離:"; | |||||
/// "今は並んでいる人が多すぎます。待ってくれてありがとうございます" | |||||
@override | @override | ||||
String get translation_butler_tips2 => "当前排队人数过多,感谢您的耐心等待"; | |||||
/// "正在为您呼叫管家" | |||||
String get translation_butler_tips2 => "今は並んでいる人が多すぎます。待ってくれてありがとうございます"; | |||||
/// "バトラーを呼びます" | |||||
@override | @override | ||||
String get translation_butler_tips3 => "正在为您呼叫管家"; | |||||
/// "等待人数" | |||||
String get translation_butler_tips3 => "バトラーを呼びます"; | |||||
/// "待ち人数" | |||||
@override | @override | ||||
String get translation_butler_wait_people => "等待人数"; | |||||
String get translation_butler_wait_people => "待ち人数"; | |||||
/// "位" | /// "位" | ||||
@override | @override | ||||
String get translation_butler_wait_people_unit => "位"; | String get translation_butler_wait_people_unit => "位"; | ||||
/// "预计还需等待" | |||||
/// "待つ予定" | |||||
@override | @override | ||||
String get translation_butler_wait_time => "预计还需等待"; | |||||
/// "已等待" | |||||
String get translation_butler_wait_time => "待つ予定"; | |||||
/// "待っています" | |||||
@override | @override | ||||
String get translation_butler_already_wait => "已等待"; | |||||
/// "取消呼叫" | |||||
String get translation_butler_already_wait => "待っています"; | |||||
/// "呼び出しをキャンセル" | |||||
@override | @override | ||||
String get translation_butler_cancel => "取消呼叫"; | |||||
/// "等待服务" | |||||
String get translation_butler_cancel => "呼び出しをキャンセル"; | |||||
/// "サービスを待つ" | |||||
@override | @override | ||||
String get translation_butler_wait_service => "等待服务"; | |||||
/// "实时帮-翻译管家" | |||||
String get translation_butler_wait_service => "サービスを待つ"; | |||||
/// "リアルタイムヘルプ-翻訳バトラー" | |||||
@override | @override | ||||
String get translation_butler_dialog_title => "实时帮-翻译管家"; | |||||
/// "/s1通过系统下单" | |||||
String get translation_butler_dialog_title => "リアルタイムヘルプ-翻訳バトラー"; | |||||
/// "/s1システムで注文する" | |||||
@override | @override | ||||
String get translation_butler_dialog_order => "/s1通过系统下单"; | |||||
/// "开始服务" | |||||
String get translation_butler_dialog_order => "/s1システムで注文する"; | |||||
/// "サービスを開始する" | |||||
@override | @override | ||||
String get translation_butler_dialog_start_service => "开始服务"; | |||||
/// "开始聊天" | |||||
String get translation_butler_dialog_start_service => "サービスを開始する"; | |||||
/// "チャットを始める" | |||||
@override | @override | ||||
String get translation_butler_dialog_start_chat => "开始聊天"; | |||||
/// "/s1H币//s2分钟" | |||||
String get translation_butler_dialog_start_chat => "チャットを始める"; | |||||
/// "/s1H幤//s2分" | |||||
@override | @override | ||||
String get translation_butler_coin_time => "/s1H币//s2分钟"; | |||||
/// "结束服务" | |||||
String get translation_butler_coin_time => "/s1H幤//s2分"; | |||||
/// "サービスを終了する" | |||||
@override | @override | ||||
String get translation_butler_end_service => "结束服务"; | |||||
/// "服务开始" | |||||
String get translation_butler_end_service => "サービスを終了する"; | |||||
/// "サービス開始" | |||||
@override | @override | ||||
String get translation_butler_start_service => "服务开始"; | |||||
/// "服务结束" | |||||
String get translation_butler_start_service => "サービス開始"; | |||||
/// "サービス終了" | |||||
@override | @override | ||||
String get translation_butler_service_end => "服务结束"; | |||||
/// "评价" | |||||
String get translation_butler_service_end => "サービス終了"; | |||||
/// "評価" | |||||
@override | @override | ||||
String get translation_butler_evaluation => "评价"; | |||||
/// "翻译服务已开始,愿本次服务体验愉快" | |||||
String get translation_butler_evaluation => "評価"; | |||||
/// "通訳サービスが始まりました。今回のサービス体験が楽しいように" | |||||
@override | @override | ||||
String get translation_butler_start_tips => "翻译服务已开始,愿本次服务体验愉快"; | |||||
/// "翻译服务已结束,体验愉快就给个评价吧" | |||||
String get translation_butler_start_tips => "通訳サービスが始まりました。今回のサービス体験が楽しいように"; | |||||
/// "翻訳サービスは終了しました、評価してください" | |||||
@override | @override | ||||
String get translation_butler_evaluation_tips => "翻译服务已结束,体验愉快就给个评价吧"; | |||||
/// "你对本次服务满意吗?" | |||||
String get translation_butler_evaluation_tips => "翻訳サービスは終了しました、評価してください"; | |||||
/// "今回のサービスに満足していますか?" | |||||
@override | @override | ||||
String get translation_butler_dialog_tips => "你对本次服务满意吗?"; | |||||
/// "满意" | |||||
String get translation_butler_dialog_tips => "今回のサービスに満足していますか?"; | |||||
/// "満足" | |||||
@override | @override | ||||
String get translation_butler_dialog_yes => "满意"; | |||||
/// "不满意" | |||||
String get translation_butler_dialog_yes => "満足"; | |||||
/// "不満足" | |||||
@override | @override | ||||
String get translation_butler_dialog_no => "不满意"; | |||||
/// "提交评价" | |||||
String get translation_butler_dialog_no => "不満足"; | |||||
/// "評価を出す" | |||||
@override | @override | ||||
String get translation_butler_dialog_submit => "提交评价"; | |||||
/// "服务耐心" | |||||
String get translation_butler_dialog_submit => "評価を出す"; | |||||
/// "辛抱強い" | |||||
@override | @override | ||||
String get translation_pos_1 => "服务耐心"; | |||||
/// "快速准时" | |||||
String get translation_pos_1 => "辛抱強い"; | |||||
/// "クイックタイム" | |||||
@override | @override | ||||
String get translation_pos_2 => "快速准时"; | |||||
/// "礼貌热情" | |||||
String get translation_pos_2 => "クイックタイム"; | |||||
/// "礼儀正しくて親切である" | |||||
@override | @override | ||||
String get translation_pos_3 => "礼貌热情"; | |||||
/// "沟通顺畅" | |||||
String get translation_pos_3 => "礼儀正しくて親切である"; | |||||
/// "コミュニケーションが円滑である" | |||||
@override | @override | ||||
String get translation_pos_4 => "沟通顺畅"; | |||||
/// "大神翻译" | |||||
String get translation_pos_4 => "コミュニケーションが円滑である"; | |||||
/// "素晴らしい翻訳" | |||||
@override | @override | ||||
String get translation_pos_5 => "大神翻译"; | |||||
/// "骚扰威胁" | |||||
String get translation_pos_5 => "素晴らしい翻訳"; | |||||
/// "嫌がらせ・脅かす" | |||||
@override | @override | ||||
String get translation_neg1 => "骚扰威胁"; | |||||
/// "沟通障碍" | |||||
String get translation_neg1 => "嫌がらせ・脅かす"; | |||||
/// "コミュニケーション障害" | |||||
@override | @override | ||||
String get translation_neg2 => "沟通障碍"; | |||||
/// "响应缓慢" | |||||
String get translation_neg2 => "コミュニケーション障害"; | |||||
/// "応答が遅い" | |||||
@override | @override | ||||
String get translation_neg3 => "响应缓慢"; | |||||
/// "态度不好" | |||||
String get translation_neg3 => "応答が遅い"; | |||||
/// "態度が悪い" | |||||
@override | @override | ||||
String get translation_neg4 => "态度不好"; | |||||
/// "翻译不行" | |||||
String get translation_neg4 => "態度が悪い"; | |||||
/// "翻訳はだめです" | |||||
@override | @override | ||||
String get translation_neg5 => "翻译不行"; | |||||
/// "机场/车站" | |||||
String get translation_neg5 => "翻訳はだめです"; | |||||
/// "空港/駅" | |||||
@override | @override | ||||
String get translation_scenes_1 => "机场/车站"; | |||||
/// "餐厅/酒店" | |||||
String get translation_scenes_1 => "空港/駅"; | |||||
/// "レストラン/ホテル" | |||||
@override | @override | ||||
String get translation_scenes_2 => "餐厅/酒店"; | |||||
/// "KTV/酒吧" | |||||
String get translation_scenes_2 => "レストラン/ホテル"; | |||||
/// "KTV/バー" | |||||
@override | @override | ||||
String get translation_scenes_3 => "KTV/酒吧"; | |||||
/// "其他" | |||||
String get translation_scenes_3 => "KTV/バー"; | |||||
/// "その他" | |||||
@override | @override | ||||
String get translation_scenes_4 => "其他"; | |||||
/// "文件" | |||||
String get translation_scenes_4 => "その他"; | |||||
/// "ファイル" | |||||
@override | @override | ||||
String get file => "文件"; | |||||
/// "文件大于/s1M" | |||||
String get file => "ファイル"; | |||||
/// "ファイル容量が/s1Mより大きい" | |||||
@override | @override | ||||
String get max_file => "文件大于/s1M"; | |||||
/// "还可以输入/s1字" | |||||
String get max_file => "ファイル容量が/s1Mより大きい"; | |||||
/// " /s1と入力することができます" | |||||
@override | @override | ||||
String get translation_input_limit => "还可以输入/s1字"; | |||||
/// "更多描述" | |||||
String get translation_input_limit => " /s1と入力することができます"; | |||||
/// "詳細説明" | |||||
@override | @override | ||||
String get translation_more_desc => "更多描述"; | |||||
/// "反馈小助手" | |||||
String get translation_more_desc => "詳細説明"; | |||||
/// "フィードバックアシスタント" | |||||
@override | @override | ||||
String get feedback_assistant => "反馈小助手"; | |||||
/// "有什么问题都可以反馈给我哦" | |||||
String get feedback_assistant => "フィードバックアシスタント"; | |||||
/// "どんな問題があってもフィードバックしてください" | |||||
@override | @override | ||||
String get feedback_tips => "有什么问题都可以反馈给我哦"; | |||||
String get feedback_tips => "どんな問題があってもフィードバックしてください"; | |||||
/// "人工重译" | /// "人工重译" | ||||
@override | @override | ||||
String get man_retranslate => "人工重译"; | String get man_retranslate => "人工重译"; | ||||
@@ -283,14 +283,15 @@ class _AudioChatPageState extends State<AudioChatPage> { | |||||
mainAxisAlignment: MainAxisAlignment.center, | mainAxisAlignment: MainAxisAlignment.center, | ||||
children: <Widget>[ | children: <Widget>[ | ||||
Container( | Container( | ||||
width: Screen.width - 50, | |||||
constraints: BoxConstraints(maxWidth: Screen.width - 50), | |||||
child: Text( | child: Text( | ||||
userName, | userName, | ||||
style: TextStyle(fontSize: 20, color: Colors.white70), | style: TextStyle(fontSize: 20, color: Colors.white70), | ||||
textScaleFactor: 1.0, | textScaleFactor: 1.0, | ||||
overflow: TextOverflow.ellipsis, | |||||
textAlign: TextAlign.center, | textAlign: TextAlign.center, | ||||
)), | )), | ||||
fixedText('$age', fontSize: 20, color: Colors.white70) | |||||
fixedText(' $age', fontSize: 20, color: Colors.white70) | |||||
], | ], | ||||
), | ), | ||||
SizedBox(height: 5), | SizedBox(height: 5), | ||||
@@ -368,7 +369,7 @@ class _AudioChatPageState extends State<AudioChatPage> { | |||||
_bottomToolBar() { | _bottomToolBar() { | ||||
List<Widget> showWidgets = [ | List<Widget> showWidgets = [ | ||||
Text(I18n.of(context).voicing, | Text(I18n.of(context).voicing, | ||||
textScaleFactor: 1.0, | |||||
textScaleFactor: 1.0, | |||||
style: TextStyle(fontSize: 11, color: Colors.white24), | style: TextStyle(fontSize: 11, color: Colors.white24), | ||||
textAlign: TextAlign.center), | textAlign: TextAlign.center), | ||||
SizedBox(height: 10), | SizedBox(height: 10), | ||||
@@ -530,7 +531,11 @@ class _AudioChatPageState extends State<AudioChatPage> { | |||||
color: Colors.white, | color: Colors.white, | ||||
), | ), | ||||
child: giftList == null | child: giftList == null | ||||
? Center(child: Text(I18n.of(context).no_gift, textScaleFactor: 1.0,)) | |||||
? Center( | |||||
child: Text( | |||||
I18n.of(context).no_gift, | |||||
textScaleFactor: 1.0, | |||||
)) | |||||
: Column( | : Column( | ||||
children: <Widget>[ | children: <Widget>[ | ||||
Container( | Container( | ||||
@@ -290,6 +290,12 @@ class _FriendPageState extends State<FriendPage> { | |||||
const Color(0xFF088E76), | const Color(0xFF088E76), | ||||
]), | ]), | ||||
onPressed: () async { | onPressed: () async { | ||||
CustomUI.buildContacts(context, I18n.of(context).privacyAgreement, | |||||
I18n.of(context).determine, () { | |||||
Navigator.of(context).pop(); | |||||
showPermission(); | |||||
}, title: I18n.of(context).tip); | |||||
return; | |||||
final PermissionStatus addStatus = await PermissionHandler() | final PermissionStatus addStatus = await PermissionHandler() | ||||
.checkPermissionStatus(PermissionGroup.contacts); | .checkPermissionStatus(PermissionGroup.contacts); | ||||
if ((addStatus == PermissionStatus.unknown || | if ((addStatus == PermissionStatus.unknown || | ||||
@@ -240,7 +240,7 @@ class _GlobalSearchPageState extends State<GlobalSearchPage> { | |||||
], | ], | ||||
decoration: InputDecoration( | decoration: InputDecoration( | ||||
hintText: I18n.of(context).search, | hintText: I18n.of(context).search, | ||||
hintStyle: TextStyle(fontSize: 14.5), | |||||
hintStyle: TextStyle(fontSize: 14.5, color: Colors.grey), | |||||
contentPadding: EdgeInsets.only( | contentPadding: EdgeInsets.only( | ||||
left: 20, | left: 20, | ||||
top: (UserData().language == LanguageType.English || | top: (UserData().language == LanguageType.English || | ||||
@@ -14,6 +14,7 @@ import '../data/constants.dart'; | |||||
import '../utils/CustomUI.dart'; | import '../utils/CustomUI.dart'; | ||||
import '../utils/app_navigator.dart'; | import '../utils/app_navigator.dart'; | ||||
import 'create_group_view.dart'; | import 'create_group_view.dart'; | ||||
import 'package:chat/utils/friend_list_mgr.dart'; | |||||
class GroupAllMember extends StatefulWidget { | class GroupAllMember extends StatefulWidget { | ||||
final GroupInfoModel groupInfoModel; | final GroupInfoModel groupInfoModel; | ||||
@@ -171,7 +172,8 @@ class GroupAllMemberState extends State<GroupAllMember> { | |||||
onTap: () { | onTap: () { | ||||
if (member.memberId != UserData().basicInfo.userId) { | if (member.memberId != UserData().basicInfo.userId) { | ||||
AppNavigator.pushProfileInfoPage(context, member.memberId, | AppNavigator.pushProfileInfoPage(context, member.memberId, | ||||
fromWhere: 2, addMode: 1); | |||||
fromWhere: 2, | |||||
addMode: !FriendListMgr().isMyFriend(member.memberId) ? 1 : 0); | |||||
} | } | ||||
}, | }, | ||||
)); | )); | ||||
@@ -22,6 +22,7 @@ import '../utils/CustomUI.dart'; | |||||
import '../utils/FullWithButton.dart'; | import '../utils/FullWithButton.dart'; | ||||
import '../utils/app_navigator.dart'; | import '../utils/app_navigator.dart'; | ||||
import 'create_group_view.dart'; | import 'create_group_view.dart'; | ||||
import 'package:chat/utils/friend_list_mgr.dart'; | |||||
class GroupSetting extends StatefulWidget { | class GroupSetting extends StatefulWidget { | ||||
final GroupInfoModel groupInfoModel; | final GroupInfoModel groupInfoModel; | ||||
@@ -581,7 +582,7 @@ class GroupSettingState extends State<GroupSetting> { | |||||
onTap: () { | onTap: () { | ||||
if (members[index].memberId != UserData().basicInfo.userId) { | if (members[index].memberId != UserData().basicInfo.userId) { | ||||
AppNavigator.pushProfileInfoPage(context, members[index].memberId, | AppNavigator.pushProfileInfoPage(context, members[index].memberId, | ||||
fromWhere: 2, addMode: 1); | |||||
fromWhere: 2, addMode: !FriendListMgr().isMyFriend(members[index].memberId) ? 1 : 0); | |||||
} | } | ||||
}, | }, | ||||
)); | )); | ||||
@@ -406,7 +406,6 @@ class _HomeMainState extends State<HomeMain> { | |||||
fontFamily: 'iconfont', | fontFamily: 'iconfont', | ||||
), | ), | ||||
type: 4, | type: 4, | ||||
isShowdot: true, | |||||
iconSize: 26.5), | iconSize: 26.5), | ||||
NavigationIconView( | NavigationIconView( | ||||
@@ -253,7 +253,6 @@ class CustomUI { | |||||
child: Text( | child: Text( | ||||
tipTitle, | tipTitle, | ||||
textScaleFactor: 1.0, | textScaleFactor: 1.0, | ||||
style: TextStyle( | style: TextStyle( | ||||
fontSize: 14, color: Constants.BlackTextColor, height: 1.30), | fontSize: 14, color: Constants.BlackTextColor, height: 1.30), | ||||
textAlign: TextAlign.center, | textAlign: TextAlign.center, | ||||
@@ -309,6 +308,7 @@ class CustomUI { | |||||
title, | title, | ||||
buildConfirmContent( | buildConfirmContent( | ||||
Container( | Container( | ||||
alignment: Alignment.center, | |||||
padding: EdgeInsets.only(top: 38.5, bottom: 31.5), | padding: EdgeInsets.only(top: 38.5, bottom: 31.5), | ||||
child: Column( | child: Column( | ||||
children: <Widget>[ | children: <Widget>[ | ||||
@@ -320,7 +320,7 @@ class CustomUI { | |||||
fontSize: 14, | fontSize: 14, | ||||
color: Constants.BlackTextColor, | color: Constants.BlackTextColor, | ||||
height: 1.30), | height: 1.30), | ||||
//textAlign: TextAlign.center, | |||||
textAlign: TextAlign.center, | |||||
), | ), | ||||
SizedBox( | SizedBox( | ||||
height: 5, | height: 5, | ||||
@@ -1154,7 +1154,8 @@ class CustomUI { | |||||
); | ); | ||||
} | } | ||||
static PreferredSizeWidget buildSearchButton(BuildContext context, callback,{double bottom=14}) { | |||||
static PreferredSizeWidget buildSearchButton(BuildContext context, callback, | |||||
{double bottom = 14}) { | |||||
return PreferredSize( | return PreferredSize( | ||||
preferredSize: Size.fromHeight(49), | preferredSize: Size.fromHeight(49), | ||||
child: InkWell( | child: InkWell( | ||||
@@ -1170,7 +1171,7 @@ class CustomUI { | |||||
crossAxisAlignment: CrossAxisAlignment.center, | crossAxisAlignment: CrossAxisAlignment.center, | ||||
children: <Widget>[ | children: <Widget>[ | ||||
Container( | Container( | ||||
margin: EdgeInsets.only(left: 15, right: 15), | |||||
margin: EdgeInsets.only(left: 15, right: 15, bottom: 0), | |||||
child: Icon( | child: Icon( | ||||
IconData( | IconData( | ||||
0xe664, | 0xe664, | ||||
@@ -1180,8 +1181,11 @@ class CustomUI { | |||||
size: 18, | size: 18, | ||||
), | ), | ||||
), | ), | ||||
Text(I18n.of(context).search, | |||||
style: TextStyle(fontSize: 14.5, color: Colors.grey)), | |||||
Container( | |||||
margin: EdgeInsets.only(bottom: 0), | |||||
child: Text(I18n.of(context).search, | |||||
style: | |||||
TextStyle(fontSize: 14.5, color: Colors.grey))), | |||||
], | ], | ||||
))), | ))), | ||||
); | ); | ||||
@@ -1248,80 +1252,89 @@ class CustomUI { | |||||
); | ); | ||||
} | } | ||||
static void buildTranslationHelperOrderDialog(BuildContext context) { | static void buildTranslationHelperOrderDialog(BuildContext context) { | ||||
Navigator.of(context).push(TutorialOverlay( | Navigator.of(context).push(TutorialOverlay( | ||||
child: | |||||
InkWell(onTap: (){Navigator.of(context).pop();},child: UnconstrainedBox(alignment: Alignment.topCenter,child: InkWell(onTap: (){},child: | |||||
Container( | |||||
alignment: Alignment.topCenter, | |||||
child: InkWell( | |||||
onTap: () { | |||||
Navigator.of(context).pop(); | |||||
}, | |||||
child: UnconstrainedBox( | |||||
alignment: Alignment.topCenter, | |||||
child: InkWell( | |||||
onTap: () {}, | |||||
child: Container( | |||||
alignment: Alignment.topCenter, | |||||
// height: 180, | // height: 180, | ||||
width: Screen.width-20, | |||||
margin: EdgeInsets.all(10), | |||||
child: Card( | |||||
elevation: 2, // 阴影 | |||||
shape: RoundedRectangleBorder( | |||||
borderRadius: BorderRadius.circular(10), | |||||
width: Screen.width - 20, | |||||
margin: EdgeInsets.all(10), | |||||
child: Card( | |||||
elevation: 2, // 阴影 | |||||
shape: RoundedRectangleBorder( | |||||
borderRadius: BorderRadius.circular(10), | |||||
// side: BorderSide(color: Colors.green,width: 25), | // side: BorderSide(color: Colors.green,width: 25), | ||||
), | |||||
child: Container( | |||||
), | |||||
child: Container( | |||||
// color: Colors.yellow, | // color: Colors.yellow, | ||||
width: double.maxFinite, | |||||
padding: EdgeInsets.all(16), | |||||
child: Column( | |||||
crossAxisAlignment: CrossAxisAlignment.start, | |||||
children: <Widget>[ | |||||
Padding( | |||||
padding: EdgeInsets.only(bottom: 15), | |||||
child: Text( | |||||
I18n.of(context).translation_butler_dialog_title, | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
fontWeight: FontWeight.w500, | |||||
color: AppColors.NewAppbarTextColor, fontSize: 17), | |||||
), | |||||
), | |||||
Text( | |||||
I18n.of(context).translation_butler_dialog_order.replaceAll('s1', 'xxx'), | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
color: AppColors.NewAppbarTextColor, fontSize: 14), | |||||
), | |||||
SizedBox(height: 10,), | |||||
Text( | |||||
'时间:今天11:45 时长:10分钟', | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
color: AppColors.NewAppbarTextColor, fontSize: 14), | |||||
), | |||||
Container(margin: EdgeInsets.only(left: 30, right: 30, top: 20,bottom: 10),child: CountDownButton( I18n.of(context).translation_butler_dialog_start_service,(){ | |||||
Navigator.of(context).pop(); | |||||
}) ,) | |||||
], | |||||
), | |||||
), | |||||
), | |||||
),),),),)); | |||||
width: double.maxFinite, | |||||
padding: EdgeInsets.all(16), | |||||
child: Column( | |||||
crossAxisAlignment: CrossAxisAlignment.start, | |||||
children: <Widget>[ | |||||
Padding( | |||||
padding: EdgeInsets.only(bottom: 15), | |||||
child: Text( | |||||
I18n.of(context).translation_butler_dialog_title, | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
fontWeight: FontWeight.w500, | |||||
color: AppColors.NewAppbarTextColor, | |||||
fontSize: 17), | |||||
), | |||||
), | |||||
Text( | |||||
I18n.of(context) | |||||
.translation_butler_dialog_order | |||||
.replaceAll('s1', 'xxx'), | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
color: AppColors.NewAppbarTextColor, fontSize: 14), | |||||
), | |||||
SizedBox( | |||||
height: 10, | |||||
), | |||||
Text( | |||||
'时间:今天11:45 时长:10分钟', | |||||
textScaleFactor: 1.0, | |||||
textAlign: TextAlign.left, | |||||
style: TextStyle( | |||||
color: AppColors.NewAppbarTextColor, fontSize: 14), | |||||
), | |||||
Container( | |||||
margin: EdgeInsets.only( | |||||
left: 30, right: 30, top: 20, bottom: 10), | |||||
child: CountDownButton( | |||||
I18n.of(context) | |||||
.translation_butler_dialog_start_service, () { | |||||
Navigator.of(context).pop(); | |||||
}), | |||||
) | |||||
], | |||||
), | |||||
), | |||||
), | |||||
), | |||||
), | |||||
), | |||||
), | |||||
)); | |||||
} | } | ||||
static void buildTranslationEvaluationDialog(BuildContext context) { | static void buildTranslationEvaluationDialog(BuildContext context) { | ||||
Navigator.of(context).push(TutorialOverlay( | Navigator.of(context).push(TutorialOverlay( | ||||
child: | |||||
TravelEvaluationPage(),)); | |||||
child: TravelEvaluationPage(), | |||||
)); | |||||
} | } | ||||
} | } |
@@ -217,7 +217,7 @@ class HttpUtil { | |||||
var fileBytes; | var fileBytes; | ||||
if (contentType == 'image' && size > 10240) { | if (contentType == 'image' && size > 10240) { | ||||
fileBytes = await WidgetUtil.getCompressImg(path); | |||||
fileBytes = await WidgetUtil.getCompressImg(path,quality: 80,percentage: 80); | |||||
} else { | } else { | ||||
fileBytes = imgfile.readAsBytesSync(); | fileBytes = imgfile.readAsBytesSync(); | ||||
} | } | ||||
@@ -16,10 +16,8 @@ import '../r.dart'; | |||||
import 'file_cache_mgr.dart'; | import 'file_cache_mgr.dart'; | ||||
import 'group_member_model.dart'; | import 'group_member_model.dart'; | ||||
const ImgSizeLimit = 60 * 1024; | const ImgSizeLimit = 60 * 1024; | ||||
/// Widget Util. | /// Widget Util. | ||||
class WidgetUtil { | class WidgetUtil { | ||||
bool _hasMeasured = false; | bool _hasMeasured = false; | ||||
@@ -67,11 +65,11 @@ class WidgetUtil { | |||||
: Rect.zero; | : Rect.zero; | ||||
} | } | ||||
static getCompressImg(String imgPath) async { | |||||
static getCompressImg(String imgPath, | |||||
{int quality = 20, int percentage = 20}) async { | |||||
File compressedFile = await FlutterNativeImage.compressImage(imgPath, | File compressedFile = await FlutterNativeImage.compressImage(imgPath, | ||||
quality: 20, percentage: 25); | |||||
var k =compressedFile.readAsBytesSync().toList(); | |||||
quality: quality, percentage: percentage); | |||||
var k = compressedFile.readAsBytesSync().toList(); | |||||
print('A图片压缩完毕 : ${k.length}'); | print('A图片压缩完毕 : ${k.length}'); | ||||
// compressedFile. | // compressedFile. | ||||
@@ -156,83 +154,72 @@ class WidgetUtil { | |||||
return completer.future; | return completer.future; | ||||
} | } | ||||
static ImageProvider groupAvatar(String path ) { | |||||
static ImageProvider groupAvatar(String path) { | |||||
path = FileCacheMgr.replacePath(path); | path = FileCacheMgr.replacePath(path); | ||||
Uint8List fileData = File(path).readAsBytesSync(); | Uint8List fileData = File(path).readAsBytesSync(); | ||||
// print('fileData ${fileData.length}'); | // print('fileData ${fileData.length}'); | ||||
return MemoryImage(fileData); | return MemoryImage(fileData); | ||||
} | } | ||||
static Widget getAvatarNew( | |||||
GroupInfoModel model, GlobalKey key, Function backPath) { | |||||
List<GroupMemberModel> members = []; | |||||
static Widget getAvatarNew(GroupInfoModel model,GlobalKey key,Function backPath) { | |||||
List<GroupMemberModel> members =[]; | |||||
for(int k=0;k< model.members.length;k++){ //只加入存在群的 | |||||
for (int k = 0; k < model.members.length; k++) { | |||||
//只加入存在群的 | |||||
GroupMemberModel mo = model.members[k]; | GroupMemberModel mo = model.members[k]; | ||||
if(mo.inGroup==1){ | |||||
if (mo.inGroup == 1) { | |||||
members.add(mo); | members.add(mo); | ||||
} | } | ||||
} | } | ||||
if(model.image!=null && model.image.length>2){ | |||||
if (model.image != null && model.image.length > 2) { | |||||
print('${model.name} 群头像地址:${model.image}'); | print('${model.name} 群头像地址:${model.image}'); | ||||
File file = new File(model.image); | File file = new File(model.image); | ||||
// int filelength = file.readAsBytesSync().length; | // int filelength = file.readAsBytesSync().length; | ||||
// print('群头像地址file size : $filelength'); | // print('群头像地址file size : $filelength'); | ||||
if( file.existsSync()){ //防止头像文件被清除后 | |||||
if (file.existsSync()) { | |||||
//防止头像文件被清除后 | |||||
Uint8List pngBytes =file.readAsBytesSync(); | |||||
Uint8List pngBytes = file.readAsBytesSync(); | |||||
print('pngBytes.lengthInBytes length;${pngBytes.lengthInBytes}'); | print('pngBytes.lengthInBytes length;${pngBytes.lengthInBytes}'); | ||||
if(pngBytes.lengthInBytes>8000){ | |||||
return ClipRRect( borderRadius: BorderRadius.circular(5),child:Container(color: Color(0xffE9E9E9),width: 52,height: 52,child: | |||||
Image.file( | |||||
File(FileCacheMgr.replacePath(model.image)), | |||||
fit: BoxFit.contain, | |||||
width: 50, | |||||
height: 50, | |||||
),) ,); | |||||
if (pngBytes.lengthInBytes > 8000) { | |||||
return ClipRRect( | |||||
borderRadius: BorderRadius.circular(5), | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
child: Image.file( | |||||
File(FileCacheMgr.replacePath(model.image)), | |||||
fit: BoxFit.contain, | |||||
width: 50, | |||||
height: 50, | |||||
), | |||||
), | |||||
); | |||||
} | } | ||||
}else{ | |||||
} else { | |||||
backPath(''); | backPath(''); | ||||
} | } | ||||
} | } | ||||
///先让下面的图片显示,5秒后截图保存图片 | ///先让下面的图片显示,5秒后截图保存图片 | ||||
Future.delayed(Duration(seconds: 3),() async{ | |||||
Future.delayed(Duration(seconds: 3), () async { | |||||
// print('没有群图片-开始生成保存到本地:${model.members.length}'); | // print('没有群图片-开始生成保存到本地:${model.members.length}'); | ||||
try { | try { | ||||
RenderRepaintBoundary boundary = | |||||
key.currentContext.findRenderObject(); | |||||
var image = await boundary.toImage(pixelRatio:2); | |||||
RenderRepaintBoundary boundary = key.currentContext.findRenderObject(); | |||||
var image = await boundary.toImage(pixelRatio: 2); | |||||
ByteData byteData = await image.toByteData(format: ImageByteFormat.png); | ByteData byteData = await image.toByteData(format: ImageByteFormat.png); | ||||
Uint8List pngBytes = byteData.buffer.asUint8List(); | Uint8List pngBytes = byteData.buffer.asUint8List(); | ||||
File file =await FileCacheMgr().writeFile(model.sessionId.toString(),pngBytes); | |||||
File file = await FileCacheMgr() | |||||
.writeFile(model.sessionId.toString(), pngBytes); | |||||
print('图片地址byteData${byteData.lengthInBytes}'); | print('图片地址byteData${byteData.lengthInBytes}'); | ||||
if(byteData.lengthInBytes>8000 && members.length>1){ //图片保存成功 | |||||
GroupInfoMgr().updateAvatar(model.sessionId,file.path); | |||||
if (byteData.lengthInBytes > 8000 && members.length > 1) { | |||||
//图片保存成功 | |||||
GroupInfoMgr().updateAvatar(model.sessionId, file.path); | |||||
backPath(file.path); | backPath(file.path); | ||||
} | } | ||||
@@ -241,94 +228,151 @@ class WidgetUtil { | |||||
} catch (e) { | } catch (e) { | ||||
print(e); | print(e); | ||||
} | } | ||||
}); | }); | ||||
if(members.length>9){ | |||||
members = members.sublist(0,9); | |||||
if (members.length > 9) { | |||||
members = members.sublist(0, 9); | |||||
} | } | ||||
if (members.length > 0) { | if (members.length > 0) { | ||||
double itemSize = 10; | double itemSize = 10; | ||||
switch (members.length) { | switch (members.length) { | ||||
case 1: | case 1: | ||||
return RepaintBoundary(key: key,child: ClipRRect(borderRadius: BorderRadius.circular(3),child: Container(color: Color(0xffE9E9E9),width: 52,height: 52,child: Padding(padding: EdgeInsets.all(1),child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 45, | |||||
height: 45, | |||||
placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: 45, | |||||
height: 45,) | |||||
),),),),); | |||||
break; | |||||
case 2: | |||||
return RepaintBoundary(key: key,child: ClipRRect(borderRadius: BorderRadius.circular(3),child: Container(color: Color(0xffE9E9E9),width: 52,height: 52,child: Row(children: <Widget>[ | |||||
Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
return RepaintBoundary( | |||||
key: key, | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | borderRadius: BorderRadius.circular(3), | ||||
child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar, width: 23, | |||||
height: 23,) | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
child: Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 45, | |||||
height: 45, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 45, | |||||
height: 45, | |||||
)), | |||||
), | |||||
), | ), | ||||
),), | |||||
Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
), | |||||
); | |||||
break; | |||||
case 2: | |||||
return RepaintBoundary( | |||||
key: key, | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | borderRadius: BorderRadius.circular(3), | ||||
child: CachedNetworkImage( | |||||
imageUrl: members[1].avtar, | |||||
width: 23, | |||||
height: 23,placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: 23, | |||||
height: 23,) | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
child: Row( | |||||
children: <Widget>[ | |||||
Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 23, | |||||
height: 23, | |||||
)), | |||||
), | |||||
), | |||||
Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[1].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 23, | |||||
height: 23, | |||||
)), | |||||
), | |||||
) | |||||
], | |||||
), | |||||
), | ), | ||||
),) | |||||
],),),),); | |||||
), | |||||
); | |||||
case 3: | case 3: | ||||
return RepaintBoundary(key: key,child: ClipRRect(borderRadius: BorderRadius.circular(3),child: Container(color: Color(0xffE9E9E9),width: 52,height: 52,child: Column(children: <Widget>[ | |||||
Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
return RepaintBoundary( | |||||
key: key, | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | borderRadius: BorderRadius.circular(3), | ||||
child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 23, | |||||
height: 23,placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: 23, | |||||
height: 23,) | |||||
), | |||||
),), | |||||
Row(children: <Widget>[ | |||||
Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[1].avtar, | |||||
width: 23, | |||||
height: 23,placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: 23, | |||||
height: 23,) | |||||
), | |||||
),), | |||||
Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[2].avtar, | |||||
width: 23, | |||||
height: 23,placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: 23, | |||||
height: 23,) | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
child: Column( | |||||
children: <Widget>[ | |||||
Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[0].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 23, | |||||
height: 23, | |||||
)), | |||||
), | |||||
), | |||||
Row( | |||||
children: <Widget>[ | |||||
Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[1].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 23, | |||||
height: 23, | |||||
)), | |||||
), | |||||
), | |||||
Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[2].avtar, | |||||
width: 23, | |||||
height: 23, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: 23, | |||||
height: 23, | |||||
)), | |||||
), | |||||
) | |||||
], | |||||
) | |||||
], | |||||
), | ), | ||||
),) | |||||
],) | |||||
],),),),); | |||||
), | |||||
), | |||||
); | |||||
} | } | ||||
if (members.length == 4) { | if (members.length == 4) { | ||||
@@ -338,30 +382,46 @@ class WidgetUtil { | |||||
} | } | ||||
List<Widget> widgetList = []; | List<Widget> widgetList = []; | ||||
for (int k = 0; k < members.length; k++) { | |||||
widgetList.add(Padding(padding: EdgeInsets.all(1),child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[k].avtar, | |||||
width: itemSize, | |||||
height: itemSize,placeholder: (context, url) => | |||||
Image.asset(R.assetsImagesDefaultNorAvatar,width: itemSize, | |||||
height: itemSize,) | |||||
for (int k = 0; k < members.length; k++) { | |||||
widgetList.add(Padding( | |||||
padding: EdgeInsets.all(1), | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: CachedNetworkImage( | |||||
imageUrl: members[k].avtar, | |||||
width: itemSize, | |||||
height: itemSize, | |||||
placeholder: (context, url) => Image.asset( | |||||
R.assetsImagesDefaultNorAvatar, | |||||
width: itemSize, | |||||
height: itemSize, | |||||
)), | |||||
), | ), | ||||
),)); | |||||
)); | |||||
} | } | ||||
return RepaintBoundary(key: key,child: ClipRRect(borderRadius: BorderRadius.circular(3),child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
alignment: Alignment.center, | |||||
child: Wrap( | |||||
crossAxisAlignment: WrapCrossAlignment.start, children: widgetList), | |||||
),),); | |||||
return RepaintBoundary( | |||||
key: key, | |||||
child: ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
width: 52, | |||||
height: 52, | |||||
alignment: Alignment.center, | |||||
child: Wrap( | |||||
crossAxisAlignment: WrapCrossAlignment.start, | |||||
children: widgetList), | |||||
), | |||||
), | |||||
); | |||||
} else { | } else { | ||||
return ClipRRect(borderRadius: BorderRadius.circular(3),child: Container(color: Color(0xffE9E9E9),),); | |||||
return ClipRRect( | |||||
borderRadius: BorderRadius.circular(3), | |||||
child: Container( | |||||
color: Color(0xffE9E9E9), | |||||
), | |||||
); | |||||
} | } | ||||
} | } | ||||
} | } |
@@ -421,7 +421,7 @@ class MsgHandler { | |||||
int sessionId = chat.targetId; | int sessionId = chat.targetId; | ||||
msgModel = MsgModel(0, friendId, chat.cType.value, chat.contentBuff, | msgModel = MsgModel(0, friendId, chat.cType.value, chat.contentBuff, | ||||
chat.sendTime.toInt(), sessionId, | chat.sendTime.toInt(), sessionId, | ||||
channelType: ChatChannelType.Group.value); | |||||
channelType: ChatChannelType.Session.value); | |||||
//更新红包信息 | //更新红包信息 | ||||
ChatDataMgr() | ChatDataMgr() | ||||