Skip to content
This repository has been archived by the owner on Jun 22, 2022. It is now read-only.

view ยังใช้ค่า resource จากภาษาในตอนที่เปิดแอป #55

Closed
James941108 opened this issue Apr 23, 2020 · 3 comments
Labels

Comments

@James941108
Copy link

phone : Huawei P10 plus (android 9), Huawei nova5t (android 10)
หลังจากเปลี่ยนภาษาแล้ว view ยังใช้ค่า resource จากภาษาในตอนที่เปิดแอปครับ
ต้อง kill แอปพลิเคชันแล้วเข้าใหม่จึงจะได้ค่าจาก resource ของภาษาที่เลือก
ผมได้ลองเช็คจาก getCurrentLanguage แล้ว ได้ return ภาษาที่ถูกต้องนะครับ และอาการนี้ไม่ได้เป็นกับโทรศัพท์ทุกเครื่องซะด้วย

@akexorcist akexorcist added the bug label Apr 26, 2020
@akexorcist
Copy link
Owner

ถ้าอาการแบบนี้ น่าจะเป็นเฉพาะบาง View ด้วยใช่มั้ยครับ ถ้าเป็นไปได้อยากรู้ว่าเป็น View แบบไหน และกำหนดข้อความลงใน View ยังไง

ลองเช็คดูด้วยว่า View เหล่านั้นเวลากำหนดค่าเข้าไปมันกำหนดเป็น String Resource หรือ String เฉยๆ เพราะถ้ากำหนดเป็น String Resource เวลาเปลี่ยนภาษามันจะอัปเดตตามภาษาให้ แต่ถ้าโยน String เข้าไปเฉยๆ มันจะไม่เปลี่ยนให้อยู่แล้วครับ

@James941108
Copy link
Author

นี่เป็นตัวอย่าง view ที่ใช้นะครับ เป็น title text ที่ใช้ resource ตามรูปที่ 1 ครับ
รูปที่ 2 คือ preview ของ view ตอนที่ใช้ภาษาอังกฤษ
รูปที่ 3 คือ view ตอนที่เลือกเปลี่ยนเป็นภาษาไทยแล้ว จะเห็นว่า หลังคำว่า SINCE ที่เป็นวันที่กับคำว่า Walk เปลี่ยนเป็นภาษาไทยเรียบร้อยดี เพราะผมเช็คจาก getCurrentLanguage ของ LocalizationActivity น่ะครับ
รูปที่ 4 คือ view เมื่อผม kill app และเปิดใหม่อีกครั้งนึง จะเห็นว่าทั้งหน้าเปลี่ยนเป็นภาษาที่ถูกต้องแล้ว
ข้อมูลเพิ่มเติม นี่เป็น fragment ที่อยู่กับ activity อีกทีนึงครับ

หรืออาจจะผิดที่ผมเองที่ทำอะไรผิดขั้นตอนไปหรือเปล่าครับ

xml
image1
image2
image3

@akexorcist
Copy link
Owner

ขอโทษด้วยครับ ไม่รู้ว่ายังทันหรือป่าว แต่มี Issue ที่คล้ายๆกันที่ผมเพิ่งแก้ไปใน 1.2.6 ครับ

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants