20.11.2016 Views

ANDROID APP

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

222 บทที่ 9 การทำางานร่วมกับข้อมูล<br />

กรรมวิธี: การสร้างและอ่านข้อมูลจาก Shared Preferences<br />

ข้อมูลแบบ Shared Preferences สามารถเข้าถึงได้ด้วยการใช้เมธอด getPreferences()<br />

ซึ่งในตอนแรกระบบจะใช้ค่า Shared Preferences แบบดีฟอลต์ แต่ถ้าในระบบนั้นมีการใช้งาน<br />

Shared Preferences หลายไฟล์ เราก็สามารถระบุไฟล์ที่ต้องการใช้งานได้โดยใช้คำสั่ง<br />

getSharedPrefernces() โดยที่การเปิดไฟล์ Shared Preferences นั้นจะกำหนดสิทธิ์ในการใช้<br />

งานได้ ดังนี้<br />

m MODE_PRIVATE - เรียกใช้ได้เฉพาะแอพที่ทำงานอยู่<br />

m MODE_WORLD_READABLE - ทุกแอพสามารถอ่านไฟล์ XML นี้ได้<br />

m MODE_WORLD_WRITABLE - ทุกแอพสามารถเขียนไฟล์ XML นี้ได้<br />

หลังจากที่อ่านข้อมูลด้วยออบเจ็กต์ SharedPreferences แล้ว ออบเจ็กต์ Editor จะถูกเรียก<br />

ใช้เพื่อเขียนข้อมูลลงไปในไฟล์ XML ด้วยคำสั่ง put() ซึ่งชนิดของข้อมูลที่จะเขียนนั้นมีอยู่ 5 ชนิด คือ<br />

int, long, float, String และ boolean สำหรับคำสั่งด้านล่างนี้จะแสดงขั้นตอนการสร้างและ<br />

การเก็บข้อมูล Shared Preferences<br />

SharedPreferences prefs = getSharedPreferences(“myDataStorage”,<br />

MODE_PRIVATE);<br />

Editor mEditor = prefs.edit();<br />

mEditor.putString(“username”,”datastorageuser1”);<br />

mEditor.putString(“password”,”password1234”);<br />

mEditor.commit();<br />

The following shows how to retrieve shared preferences data:<br />

SharedPreferences prefs = getSharedPreferences(“myDataStorage”,<br />

MODE_PRIVATE);<br />

String username = prefs.getString(“username”, “”);<br />

String password = prefs.getString(“password”, “”);<br />

กรรมวิธี: การใช้งาน Preferences Framework<br />

ระบบปฏิบัติการแอนดรอยด์มีการสร้างเฟรมเวิร์คมาตรฐานที่ใช้ในการจัดเก็บข้อมูล Shared<br />

Preferences เพื่อให้สามารถใช้งานร่วมกับแอพอื่นๆ ได้ ซึ่งจะใช้วิธีการจัดกลุ่มของข้อมูลโดยแยกย่อย<br />

เป็นกลุ่มต่างๆ คำสั่ง PreferenceCategory จะใช้ในการประกาศกลุ่มของข้อมูล และคำสั่ง<br />

PreferenceScreen ใช้ในการแสดงกลุ่มของข้อมูล<br />

ในหัวข้อนี้จะใช้ข้อมูล Preferences ในไฟล์ XML ที่แสดงไว้ในชุดคำสั่งที่ 9.1 และใช้คำสั่ง<br />

PreferenceScreen เพื่อกำหนดรูทอีลีเมนต์ ซึ่งประกอบไปด้วยอีลีเมนต์ EditTextPreference<br />

จำนวน 2 ตัวเพื่อแทนข้อมูล Username และ Password รวมทั้งกำหนดอีลีเมนต์อื่นๆ อีกคือ<br />

CheckBoxPreference, RingTonePreference และ DialogPreference ระบบปฏิบัติการ<br />

แอนดรอยด์จะสร้าง UI ขึ้นมาเพื่อใช้ในการจัดการข้อมูล Preferences ดังแสดงไว้ในรูปที่ 9.1 ข้อมูล<br />

เหล่านี้จะเก็บอยู่ในรูปแบบ Shared Preference ซึ่งเราสามารถอ่านข้อมูลเหล่านี้โดยใช้คำสั่ง<br />

getPreferences()

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!