Thai (ภาษาไทย) translation by Muhammad Gufron (you can also view the original English article)
ในหัดเล่นแล้วคุณก็จะได้เรียนรู้วิธีที่จะสร้างแล้วใช้ทางเลือกทรัพยากรแฟ้มกับ Android องโปรแกรมเรียกว่าหนึ่งนาที Phrasebook น โปรแกรมนี้ใช้แสดงข้อความมั่นใจและกราฟิกโดยอิงค่าพื้นฐานจาก Android ของระบบภาษา/ค่าท้องถิ่นของการตั้งค่าย
ก่อนที่คุณจะเริ่มต้น
หมุนเป็นสมมติว่าผู้อ่านมีความรู้พื้นฐานของ Android และทั้งหมดของที่จำเป็นต้องใช้เครื่องมือย่างเช่นสุริยคราสและ Android SDK ติดตั้งและทำงานอยู่ คนตัวอย่างให้ที่นี่เป็นวิศวกรรมเพื่อให้แสดงยังไง Android โครงการทรัพยากรได้เป็นเฉพาะในเขตที่มีก โดยเฉพาะนี้ comment จะให้คุณรวมถึงทรัพยากรสำหรับภาษาต่างๆ name และ locales น
ข้อควรทราบ:รหัสสำหรับ OneMinutePhrasebook โปรแกรมยังมีอยู่บนของกูเกิ้ลเป็นรหัสมอส
ขั้นที่ 1:สร้าง OneMinutePhrasebook องโปรแกรม
เริ่มโดยการสร้างใหม่ Android โครงการ
ต้องทำอย่างนี้ภายในสุริยคราสนองเลือกแฟ้ม->ใหม่ Android โครงการให้รถเรียกโปรแกรม Android ตัวช่วยสร้างโครงการนี้
บอกชื่อโครงการ:e.g."Phrasebook"
เลือกที่เหมาะสมสร้างเป้าหมายอย่างเช่น Android 2.1 ก
ชื่อของโปรแกรม:e.g."หนึ่งนาที Phrasebook"
ชื่อของแพกเกจ:e.g. com นmamlambo นข่าวได้phrasebook
สร้างการเรียกกิจกรรม:e.g. PhrasebookActivity

ขั้นที่ 2:ปรับแต่งโปรแกรมสำหรับการดีบั๊ก
คุณจะเป็นการดีบั๊กโปรแกรมนี้ดังนั้นคุณต้องการเพื่อใช้ตั้งค่า Debuggable แอททริบิวต์ใน Android ใบรายการแฟ้มที่จะจริง

ขั้นที่ 3:สร้างการปรับแต่งค่าการดีบั๊ก
คุณจะต้องการที่จะสามารถอย่างง่ายดายรถเรียกโปรแกรมโปรแกรมใน Android emulator และอุปกรณ์จากสุริยคราสดังนั้นคุณต้องการเพื่อสร้างเป็นการดีบั๊กการปรับแต่งค่าย
ต้องทำอย่างนี้ภายในสุริยคราสนองเลือกวิ่ง->การดีบั๊ก Configurations นนนน
ดับเบิลคลิกบน Android โครงการเลือก
ชื่อใหม่ของคุณการปรับแต่ง:"Phrasebook ทดสอบ"
เลือกหรับการออกแบบโครงการ:Phrasebook

ขั้นที่ 4:สร้างข้อความปริยายทรัพยากร
คนหนึ่งนาที Phrasebook แสดงค่าท้องถิ่นที่อยู่หลายเส้น("สวัสดี","ลาก่อน","ได้โปรด","ขอบคุณ"กับ"ช่วยด้วย!") บนหน้าจอ ดังนั้นคุณต้องการจะเพิ่มกลุ่มของข้อความทรัพยากรต้อง/res/values/strings.xml แฟ้ม โดยเฉพาะการเพิ่มหนึ่งข้อความสำหรับแต่ละคำที่ดีเหมือนเป็นป้ายชื่อสำหรับแต่ละประโยคนี้นะ แล้วก็เพิ่มเงื่อนสำหรับธง(ป้ายชื่อ),แผนที่(ป้ายชื่อ)และ CIA โลก Factbook เชื่อมโยง(มากกว่าเรื่องนี้ในช่วงเวลาน)
สำหรับค่าปริยายผลตอบแทนเราใช้คนใดคนหนึ่งส่วนใหญ่เหมือนกันเข้าใจภาษาทั่วโลก–ภาษาอังกฤษ (แน่นอนว่าคุณสามารถเลือกอื่นภาษาสำหรับค่าปริยายของคุณ,ถ้าคุณชอบแล้ว)
ที่ผลลัพธ์จาก strings.xml แฟ้มควรจะดูอะไรแบบนี้:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">The One Minute Phrasebook </string> <string name="locale_label">Locale: </string> <string name="locale">"World-Wide" </string> <string name="hello_label">Greet Someone: </string> <string name="hello">Hello!</string> <string name="goodbye_label">Say Farewell: </string> <string name="goodbye">Goodbye!</string> <string name="please_label">Say Please: </string> <string name="please">Please </string> <string name="thankyou_label">Thank Someone: </string> <string name="thankyou">Thank You! </string> <string name="help_label">Call for Aid: </string> <string name="help">Help! </string> <string name="flag_label">Flag: </string> <string name="map_label">Map: </string> <string name="cia_factbook_label">CIA World Factbook URL: </string> <string name="cia_factbook_url">"https://www.cia.gov/library/publications/the-world-factbook/index.html" </string> </resources>
นี่เป็นค่าปริยายข้อความทรัพยากรที่ถูกใช้โดยโปรแกรมนี้นะ หลายโปรแกรมใช้เดียวค่าปริยายใช้ทรัพยากรร่วมกัน
ขั้นที่ 5:สร้างทรัพยากรอีก
คนหนึ่งนาที Phrasebook องโปรแกรมยังต้องการอีกหลายประเภทของทรัพยากรได้ โดยเฉพาะ:
- บางสีของทรัพยากรเพื่อ TextView ข้อความสี(/res/values/colors.xml)
- บางมิตินึงได้ซึ่งทรัพยากรเพื่อ TextView ขนาดของข้อความ(/res/values/dimens.xml)
- สองคนแฟ้มกราฟิก:หนึ่งสำหรับแผนที่และหนึ่งอันสำหรับธง(/ละเอียด/drawable/ธงpng และ/ละเอียด/drawable/แผนที่png)
คุณสามารถเพิ่มพวกนี้ทรัพยากรตอนนี้หรืออย่างที่คุณสร้างผังแป้นพิมพ์ได้ ธงและแผนที่รูปภาพที่ใช้อยู่ในหัดเล่นอยู่ได้จากสาธารณะโดเมนด้านบนภาพที่มีอยู่บนโลก CIA Factbook เว็บไซต์ของ
สำหรับค่าปริยายเพราะเราจะบอกว่าสถานเป็น"โลกกว้างที่"และแสดงกราฟิกับกลุ่มของโลกแผนที่และแผนที่ดาวดวงนั้น

ขั้นที่ 6:นออกแบบที่หนึ่งนาที Phrasebook ส่วนติดต่อผู้ใช้
ต่อไปปิดความสนใจของคุณต้องการตัดสินใจของผู้ใช้ส่วนติดต่อของโปรแกรม คนหนึ่งนาที Phrasebook เป็นเรียบง่ายกับโปรแกรมแค่คนเดีองจอภาพด้วย หน้าจอแสดงบางอย่าเป็นประโยชน์ลีเป็นธงและเป็นแผนที่สำหรับประเทศและมีการเชื่อมโยงไปยังที่ CIA โลก Factbook เว็บไซต์ที่เหมาะสมประเทศ

ข้อควรจำ:ส่วนของโปรแกรมนี้เราต้องการ Android เสมือนอุปกรณ์(AVD)โพรไฟล์ที่จะใกล้ชิดกันของ Nexus หนึ่งกับมัน 800x480 องจอภาพด้วย รู้สึกอิสระที่จะสร้าง AVD ที่ตรงกับการตา Android อุปกรณ์คุณมีในมือของเพื่อทดสอบด้วย
ขั้นตอน 7:Implementing ของผู้ใช้ส่วนติดต่อ
โปรแกรมนี้มีแค่หนึ่งหน้าจอถูกกำหนดภายใน/res/layout/main.xml แฟ้ม นี่คือแฟ้มที่คุณต้องการที่จะแก้ไขได้
ในกรณีนี้เราต้องการดี formatted คอลัมน์ดังนั้นพิจารณาโดยใช้ TableLayout ต้องควบคุมรูปแบบที่ TextView และ ImageView ควบคุมบรรจุนเป็นคำพูดที่เธอใช้บ่อยมากธงบนแผนที่แล้วเชื่อมโยงไปยังที่ CIA โลก Factbook น
ที่ผลลัพธ์จาก main.xml ผังแป้นพิมพ์แฟ้มควรจะดูอะไรแบบนี้:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ScrollView android:id="@+id/ScrollView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TableLayout android:id="@+id/TableLayout01" android:layout_margin="@dimen/phrase_margin" android:layout_height="wrap_content" android:layout_width="fill_parent" android:stretchColumns="1"> <TableRow android:id="@+id/TableRow01" android:layout_height="wrap_content" android:layout_width="wrap_content"> <TextView android:id="@+id/TextView_LocaleLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/locale_label" android:textSize="@dimen/phrase_size" android:textColor="@color/locale_color"></TextView> <TextView android:id="@+id/TextView_Locale" android:layout_height="wrap_content" android:text="@string/locale" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_width="wrap_content" android:layout_gravity="right"></TextView> </TableRow> <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_HelloLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> <TextView android:id="@+id/TextView_Hello" android:layout_height="wrap_content" android:text="@string/hello" android:textSize="@dimen/phrase_size" android:layout_width="wrap_content" android:textColor="@color/phrase_color" android:layout_gravity="right"></TextView> </TableRow> <TableRow android:id="@+id/TableRow03" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_GoodbyeLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/goodbye_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> <TextView android:id="@+id/TextView_Goodbye" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/goodbye" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_gravity="right"></TextView> </TableRow> <TableRow android:id="@+id/TableRow04" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_PleaseLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/please_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> <TextView android:id="@+id/TextView_Please" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/please" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_gravity="right"></TextView> </TableRow> <TableRow android:id="@+id/TableRow05" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_ThankyouLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/thankyou_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> <TextView android:id="@+id/TextView_Thankyou" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/thankyou" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_gravity="right"></TextView> </TableRow> <TableRow android:id="@+id/TableRow06" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_HelpLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/help_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> <TextView android:id="@+id/TextView_help" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/help" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_gravity="right"></TextView> </TableRow> </TableLayout> <TableLayout android:id="@+id/TableLayout02" android:layout_margin="@dimen/phrase_margin" android:layout_height="wrap_content" android:layout_width="fill_parent"> <TableRow android:id="@+id/TableRow07" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_FlagLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/flag_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> </TableRow> <TableRow android:id="@+id/TableRow08" android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/flag" android:adjustViewBounds="true" android:saveEnabled="true"></ImageView> </TableRow> <TableRow android:id="@+id/TableRow09" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_MapLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/map_label" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color"></TextView> </TableRow> <TableRow android:id="@+id/TableRow10" android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:id="@+id/ImageViewMap" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/map"></ImageView> </TableRow> <TableRow android:id="@+id/TableRow11" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_CIAFactbookLabel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="@dimen/phrase_size" android:textColor="@color/label_color" android:text="@string/cia_factbook_label"></TextView> </TableRow> <TableRow android:id="@+id/TableRow12" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView_help" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="@dimen/phrase_size" android:textColor="@color/phrase_color" android:layout_gravity="right" android:text="@string/cia_factbook_url" android:autoLink="web"></TextView> </TableRow> </TableLayout> </LinearLayout> </ScrollView> </LinearLayout>
ขั้นตอน 8:การทำงานของโปรแกรม
มันถึงเวลาที่จะประมวลผลโปรแกรมสำหรับครั้งแรก ต้องทำดังนั้นอกจากสุริยคราสนองเลือกวิ่ง->การดีบั๊ก Configurations น เลือก Phrasebook ทดสอบการปรับแต่งแล้วคลิกที่การดีบั๊กปุ่ม.

ขั้นที่ 9:เปลี่ยนแปลงอุปกรณ์หรือ Emulator ค่าท้องถิ่น
ตอนนี้มันถึงเวลาที่จะค้นหาการตั้งค่าภาษาของคุณ emulator หรืออุปกรณ์ เพื่อแสดงและเปลี่ยนภาษา/รูปแบบภาษาท้องถิ่นจากกลับบ้านจอภาพ,คลิกบนปุ่มเมนูของและเลือกการตั้งค่า->ภาษาและแป้นพิมพ์->เลือกค่าท้องถิ่น
พยายามเปลี่ยนค่าท้องถิ่นต้องเป็นภาษาต่างประเทศคุณคุ้นเคยกันแล้ว
คำเตือน:ทำให้เข้าใจว่าถ้าคุณเปลี่ยนภาษาของและออกจากการตั้งค่าคุณจะต้องการที่จะสามารถนำมายังกลับไปที่การตั้งค่าจอภาพในภาษานะ จำหรือเขียนลงใน keystrokes ต้องทำอย่างนี้ได้ simplify ลังทำอะไรอย่างนั้น
โน้ตวิธีที่จะเอาเมนูเปลี่ยนภาษาสินะ วิ่งไปที่หนึ่งนาที Phrasebook องโปรแกรมอยู่ในค่าท้องถิ่น โน้ตวิธีที่โปรแกรมดูเหมือนว่ามีอะไรแตกต่างมากกว่าก่อนที่คุณเปลี่ยนค่าท้องถิ่นของ—มันยังปรากฏอยู่ในภาษาอังกฤษ
ตอนนี้เปลี่ยนกลับไปที่ของคุณ favored ค่าท้องถิ่น ของฉันคือภาษาอังกฤษ(สหรัฐอเมริกา)ย

โปรดทราบ:ตอน emulator ทั้งหมดค่าท้องถิ่นของตัวเลือกที่มีอยู่ในบเวอร์ชั่นของ Android SDK น อย่างไรก็ตามที่ระบุอุปกรณ์อาจจะมีจำกัดตั้งของ locales ต้องเลือกจากอก
ขั้นตอน 10 โมงความเข้าใจว่า Android พาะทรัพยากร
แต่ละครั้งเป็นจอคือดึงดูดภายในข้อ Android องโปรแกรมที่ Android ระบบปฏิบัติการพยายามจะตรงกันที่ดีที่สุดที่เป็นไปได้ที่โครงการทรัพยากรสำหรับงานนี้ ในหลากหลายคดี,โปรแกรมให้เดียวตั้งของทรัพยากรที่ค่าปริยายใช้ทรัพยากรร่วมกัน
ตอนที่ตัวเลือกทรัพยากรพรวมกับโปรแกรมเป็นส่วนหนึ่งของแพกเกจที่ Android ระบบปฏิบัติการเสมพยายามที่จะโหลดมากที่สุดที่เฉพาะที่ทรัพยากรที่มีอยู่นะ
ตัวเลือกทรัพยากรได้ถูกสร้างขึ้นสำหรับความหลากหลายเงื่อนไขการเรียงลำดับรวมทั้ง,แต่ไม่ได้จำกัดเฉพาะภาษาและดินแดนหน้าจอที่มีลักษณะและอุปกรณ์นำเข้าข้อมูลวิธีการของ บางเหมือนกันทางเลือกทรัพยากรพวกนั้นสำหรับภาษา locales และจอภาพแนวการวางจอภาพ(เลือกรูปแบบชื่อแฟ้มโดยเฉพาะอย่างยิ่ง). เงื่อนไขการเรียงลำดับเป็นระเบียบ hierarchically และแต่ละชนิดของเงื่อนไขการเรียงลำดับสามารถใช้เป็นที่ต่อท้ายที่เหมาะสมโครงการทรัพยากรชื่อของไดเรกทอรีได้
ตัวเลือกทรัพยากรต้องใช้คนเดียวกันชื่อเป็นค่าปริยายใช้ทรัพยากรร่วมกัน Android องทรัพยากรได้ความละเอียดเป็นสิ่งที่ดีที่สุดแสดงโดยกตัวอย่างเช่น ในหัดเล่น,เราจะลงไปสำรวจเท่านั้นกำลังสร้างทางเลือกอื่นสำหรับทรัพยากรที่ระบุภาษาและดินแดน
ขั้นตอน 11:สร้างตัวเลือกข้อความทรัพยากรสำหรับคนฝรั่งเศส-ขอพูดประเทศ
ตอนนี้เรามาพูดว่าคุณต้องการเพิ่มรสนับสนุนอย่างมากสำหรัฝรั่งเศส-ขอพูดดินแดน คุณสามารถอย่างง่ายดายทำเรื่องนี้โดยการเพิ่มตัวเลือกทรัพยากรได้ใช้เส้นสายเพื่อรับการออกแบบโครงการนี้ ตัวอย่างเช่นคุณอาจจะออกจากวลีบป้ายยี่ห้อยู่ในภาษาอังกฤษแต่แปลความหมายที่แท้จริงคำเข้าไปในภาษาฝรั่งเศส.
คุณสามารถเพิ่มภาษาทรัพยากรที่มีโครงการโดยสร้างโดยเฉพาะอย่างยิ่งที่ชื่อโครงการไดเร็กทอรีได้ แค่เอาคนที่มีอยู่แล้วโครงการชื่อของไดเรกทอรี(เช่น/ละเอียด/ค่า)และหาเบาะแสบวิ่งตามด้วยสองคนจดหมายรหัสภาษานี้ตามที่ได้นิยามเอาไว้ใน ISO 639-2 น ดังนั้นสำหรับตัวอย่างเช่นภาษาอังกฤษเป็นหน้าที่กำลังอยู่ระหว่าง,ภาษาฝรั่งเศสเป็น fr,ภาษาสเปนคืออะไร,เยอรมันคือเดอเป็นต้น
คุณสามารถเพิ่มเป็นโสดตั้งของฝรั่งเศสแปลขภาษาองใช้เส้นสายอยู่ในห้อง/res/values-fr/strings.xml แฟ้ม พวกนี้ใช้เส้นสายจะถูกโหลดเมื่อไหร่ที่เป็นภาษาฝรั่งเศส-พูดภาษาระบบจัดฉากเปิดใช้ตัวเลือกนะ มีอีกรูปแบบภาษาท้องถิ่นจะทำต่อไปใช้ค่าปริยายเส้น
แต่ละตัวเลือกทรัพยากรได้ใช้เส้นสายจะต้องมีชื่อเหมือนกันเป็นค่าปริยายทรัพยากรที่ใช้(ถูกจัดเก็บไว้ใน/res/values/strings.xml)ย ที่ Android ระบบปฏิบัติการจะเลือกที่สุดที่เฉพาะเจาะจงทรัพยากรที่มีอยู่ใน runtime น คุณไม่ต้องการเพื่อให้การแปลภาษาสำหรับใช้เส้นสายแค่คนที่คุณต้องการปรับเปลี่ยตอนที่เป็นภาษาฝรั่งเศส-พูดภาษาระบบการตั้งค่าเป็นผู้ถูกเลือกนะ
ที่ผลลัพธ์จาก/res/values-fr/strings.xml แฟ้มควรจะดูอะไรแบบนี้:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Bon jour!</string> <string name="goodbye">Au revoir!</string> <string name="please">"S'il vous plaît"</string> <string name="thankyou">Merci!</string> <string name="help">Au Secours!</string> </resources>
โปรดสังเกตว่าคุณอาจจะต้องอ้างถึงทรัพยากรได้ใช้เส้นสายถ้ามันมีส่วนประกอบเดียวรื่องหมาตัวเอง(เช่น"S จะ vous plaît")ได้
ขั้นตอน 12:สร้างตัวเลือกข้อความสำหรับทรัพยากรที่ระบุประเทศ
ตอนนี้คุณตัดสินใจที่ฝรั่งเศสข้อความทรัพยากร(คนลีนั่นเป็นสิ่งที่ใช้ร่วมกันทั่วทั้งภาษาฝรั่งเศส-ขอพูด locales และดินแดนคุณต้องการสร้างบางอย่าเปลี่ยนแปลงข้อความสำหรับทรัพยากรที่ระบุประเทศ:Belguim,แคนาดาองฝรั่งเศสและสวิสเซอร์แลนด์
แต่ละประเทศจะต้องการ:
- เป็นค่าท้องถิ่นของพื้นที่ข้อความ
- มี CIA องโลก Factbook ข้อความที่อยู่ URL
ที่ Android องแพลตฟอร์มที่สนับสนุนภาษาโดยเฉพาะทางเลือกทรัพยากร(เช่นสร้างพวกนั้นอยู่ก่อนขั้นตอน) อย่างไรก็ตามคุณไม่สามารถสร้างขอบเขต-ทรัพยากรที่ระบุโดยไม่มีการใช้ภาษา แทนที่จะเป็นคุณต้องรวมถึงภาษาที่ใช้และรหัสประเทศในห้องทรัพยากรชื่อของไดเรกทอรีได้
เพื่อสร้างทรัพยากรที่ระบุไปยังขอบเขตพื้นที่คุณต้องใช้มันภาษา(ในกรณีนี้"fr"),ตามด้วยวิ่ง,ตามด้วยของมันเขตพื้นที่รหัสในแบบฟอร์"rXX"อยู่ไหน XX คือเขตพื้นที่รหัสสำหรับออกนอกประเทศขณะที่ถูกกำหนดโดย ISO 3166-1-อัลฟ่า-2 รหัส
สำหรับตัวอย่างเช่นภาษาและพื้นที่รหัสสำหรับคนฝรั่งเศส-ขอพูดประเทศสนับสนุนใน Android จะเป็น:
เบลเยียม:fr-rBE
แคนาดา:fr-rCA
ฝรั่งเศส:fr-rFR
สวิตเซอร์แลนด์:fr-rCH
ดังนั้นตัวอย่างเช่นคุณสามารถสร้าง strings.xml แฟ้มในกา/ละเอียด/ค่า-fr-rBE โครงการไดเรกทอรีสำหรับข้อความโดยเฉพาะสำหรับคนฝรั่งเศส(ปานกลาง)ค่าท้องถิ่นของการตั้งค่าย
/res/values-fr-rBE/strings.xml อาจจะดูเหมือนนี้:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="locale">Belgium</string> <string name="cia_factbook_url">https://www.cia.gov/library/publications/the-world-factbook/geos/be.html</string> </resources>
ขั้นที่ 13:สร้างปุ่มพิมพ์ลัดอื่น Drawable ทรัพยากรเพื่อเจาะจงประเทศ
ตัวเลือกทรัพยากรได้ถูกสร้างขึ้นสำหรับอีกประเภทของข้อมูลอีกอย่างเชือก. คุณสามารถสร้างตัวเลือกทรัพยากรสำหรับพประเภทของทรัพยากร,รวมถึงใช้เส้นสาย,ขนาด,สี,drawable ทรัพยากรและอีกประเภทนี้ คุณแค่ใช้คนเดียวกับโครงการทรัพยากรองไดเรกทอรีในลำดับชั้นกฏ
ดังนั้นเพื่อเพิ่มธงและแผนที่ drawable ทรัพยากรสำหรับแต่ละประเทศ(Belguim,แคนาดาองฝรั่งเศสและสวิสเซอร์แลนด์)คุณต้องการจะสร้างสี่นิวไดเรกทอรีภายใต้หรับการออกแบบโครงการ:
- ร้านเบียร์เบลเยี่ยมธงpng และแผนที่ภาพกราฟิกที่/ละเอียด/drawable-fr-rBE/ไดเรกทอรีได้
- เก็บแคนาดาองธงกันpng และแผนที่ภาพกราฟิกที่/ละเอียด/drawable-fr-rCA/ไดเรกทอรีได้
- ร้านสวิสองธงกันpng และแผนที่ภาพกราฟิกที่/ละเอียด/drawable-fr-rCH/ไดเรกทอรีได้
- ร้านคนฝรั่งเศสองธงกันpng และแผนที่ภาพกราฟิกที่/ละเอียด/drawable-fr-rFR/ไดเรกทอรีได้
โปรดจำไว้ว่า drawable ชื่อแฟ้มต้องตรงกับค่าปริยาย drawable ชื่อแฟ้ม(พวกนั้นถูกจัดเก็บไว้ใน/ละเอียด/drawable)แน่นอน
ของคุณโปรเจ็คควรจะตอนนี้เป็นระเบียบเหมือนนี้:

ขั้นที่ 14:ส่งงานกับฝรั่งเศส-พูดภาษาระบบ
ในของคุณ emulator หรือบนอุปกรณ์ของคุณเปลี่ยนสถานที่หนึ่งของฝรั่งเศสตัวเลือก(Français(ฝรั่งเศส),Français(แคนาดา),Français(Belguim),Français(สวิสเซอร์แลนด์).)
ข้อควรจำ:ส่วนสำหรับพวกนั้นไม่ versed นภาษาฝรั่งเศสคุณสามารถกลับไปที่รูปแบบภาษาท้องถิ่นของเมนูจากบ้านหน้าจอโดยการเลือก:เมนู->Paramètres->Langue et clavier->Langue et région น
อีกครั้งหนึ่งนาที Phrasebook องโปรแกรมแล้วมุมมองผลลัพธ์เดียวกันนั่นแหละ โน้ตวิธีที่เหมาะสมฝรั่งเศสที่ใช้เส้นสายพร้อมสำหรับภาษาฝรั่งเศส. ด้วข้อที่เจาะจงขอบเขตบังคับซึ่งประเทศข้อมูลที่แสดงอยู่ในการทำงานของโปรแกรม
ที่คิดแสดงถึงเกิดอะไรขึ้นเมื่อคุณเลือก Français(ฝรั่งเศส)ย

ขั้นที่ 15:ที่ไหนจะไปจากที่นี่
Internationalization องกำลังออกแบบทางเลือกในสถานที่ก่อสร้างทีม ตัวอย่างเช่นคุณจะสร้างหนึ่งงานใหญ่สำหรับภาษาหรือคุณจะทำลายโปรแกรมโดยพื้น? สำหรับบางอย่างยิ่งสนง.โครงการด้วยแสงสว่าง internationalization คุณอาจจะสามารถออกไปกับโครงการกับทุก internationalized ใช้ทรัพยากรร่วมกัน สำหรับลึก internationalization คุณอาจจะต้อง reorganize งยิ่งสนง.โครงการนั้นไม่มีโปรแกรมกลายเป็นเหมือนกันใหญ่หรือ cumbersome สำหรับผู้ใช้นี้
คุณอาจจะจำเป็นต้องบันทึกเมื่ออยู่ในนั้นทั้งหมดนี้ internationalization ได้ผลเราไม่เคยแตะต้องของจาวานแหล่งข่าวแฟ้มของโครงการ นี่คือสิ่งสำคัญสำหรับโน้ตเพราะมันหมายความว่านั่นผลงานของ internationalizing โปรแกรมอาจจะถอยไม่ต้องเป็นผู้พัฒนาที่จะรู้วิธีใช้สุริยคราสและ Android เครื่องมือดีแต่เพื่อใครบางคนที่จะต้องการฝึกอบยังไง Android internationalization ทำงานยังทรัพยากรจะได้อมซ้อนมันด้อน,และ drawbacks ของมา internationalizing(ผลลัพธ์จากในตัวใหญ่กว่าห่อของแฟ้มด้วยมากกราฟิกและเช่นนั้น) ในมุมบวกนี้ออกจากกลุ่มผู้พัฒนาอิสระที่จะทำในสิ่งที่พวกเขาทำดีที่สุด:การพัฒนาเป็นรหัสมอส
Lastly คุณน่าจะสังเกตว่า Android internationalization โครงสร้างของมันไม่สมบรูณ์—โดยเฉพาะอย่างยิ่งสำหรับประเทศหลายทาง(และ unofficial)ภาษา มันทำให้น้อยลจะต้องรวมคนเดียวกับกราฟิก(ธงและแผนที่)ในทั้งสองเป็น en-rCA และ fr-rCA ไดเรกทอรีสำหรับภาษาอังกฤษและฝรั่งเศสพูด Canadians น อย่างไรก็ตามคุณสามารถทำงานไปรอบๆพวกนี้ limitations โดย programmatically determining งค่าท้องถิ่นและกำลังโหลดที่เหมาะสมกราฟิกแฟ้มตัวเอง นั้นอย่างไรก็ตามสำหรับอีกหัดเล่นนะ
คุณสามารถหามากกว่าสมบูรณ์คำอธิบายของ Android องทรัพยากรได้ความละเอียดใน Android SDK เอกสารอยู่ที่นี่
สรุป
ในหัดเล่นนายได้เรียนรู้วิธีที่จะสร้างแล้วใช้ทางเลือกทรัพยากรแฟ้มกับ Android องโปรแกรมเรียกว่าหนึ่งนาที Phrasebook น โปรแกรมนี้แสดงบางใช้เส้นสายและกราฟิกโดยอิงค่าพื้นฐานจาก Android ของระบบภาษา/ค่าท้องถิ่นของการตั้งค่าย คุณเรียนรู้เกี่ยวกับวิธีที่ Android ระบบปฏิบัติการ resolves ทรัพยากรและเลือกที่สุดที่เหมาะสมทรัพยากรที่มีอยู่ใน runtime น คุณยังเรียนรู้วิธีจัดการทรัพยากร efficiently เพื่อที่จะให้ของคุณทั่วโลกผู้ใช้ที่ดีที่สุดสุดโปรแกรมประสบการณ์นะ
เราหวังว่าลูกชอบแม่รู้ถึงขนาดอัดเพนี้หัดเล่นและมองต่อไปของคุณการแจ้งเตือนการเริ่มทำงาน!
เรื่องนักเขียน
เคลื่อนที่กลุ่มผู้พัฒนาลอว์เรน Darcey และเช Conder มี coauthored หลายหนังสือเรื่อง Android การพัฒนา:อยู่ในความลึกตั้งโปรแกรมหนังสือถูกตีตราด้วย Android เครือข่ายไร้สายโปรแกรมการพัฒนาและ Sams TeachYourself Android การพัฒนาโปรแกรมภายใน 24 ชั่วโมง ตอนที่ไม่ได้เขียน,พวกเขาจะใช้เวลาถึงเวลาของการพัฒนาซอฟต์แวร์เคลื่อนที่ที่พวกเขาบริษัทและในกรณีที่ปรึกษาจากบริการ. พวกเขาสามารถติดต่อผ่านทางอีเมลเพื่อ androidwirelessdev+mt@gmail.com ก็ผ่านทางของบล็อกของที่ androidbook.blogspot.com และในทวิตเตอร์@androidwireless น
ต้องการมากกว่าช่วยการเขียน Android Apps? ตรวจดูของเราล่าสุดหนังสือและทรัพยากร!
Envato Tuts+ tutorials are translated into other languages by our community members—you can be involved too!
Translate this post