ANDROID APP
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
เครือข่ายสังคม<br />
215<br />
Intent i = new Intent(TwitterCookBook.this,<br />
UpdateAndList.class);<br />
startActivity(i);<br />
Editor ed = myprefs.edit();<br />
ed.putString("username",userET.getText().toString());<br />
ed.putString("password",<br />
passwordET.getText().toString());<br />
ed.commit();<br />
finish();<br />
}<br />
}<br />
});<br />
}<br />
} catch (Exception e) {<br />
e.printStackTrace();<br />
Toast.makeText(TwitterCookBook.this, "login failed!!",<br />
Toast.LENGTH_SHORT).show();<br />
}<br />
ในชุดคำสั่งที่ 8.12 เมื่อล็อกอินสำเร็จแล้ว แอคทิวิตี้ UpdateAndList ก็จะเริ่มทำงาน โดยจะ<br />
แสดงออบเจ็กต์ EditText เพื่อให้ผู้ใช้สามารถกรอกข้อความได้รวมถึงปุ่มกดที่ใช้ในการยืนยันการส่ง<br />
ข้อความด้วย ซึ่งในออบเจ็กต์ Twitter จะมีตัวแปร ResponseList ที่ใช้เก็บข้อมูลที่ส่งมาจากออบเจ็กต์<br />
แอคทิวิตี้ getHomeTimeline() มีไว้เพื่ออ่านข้อมูลสถานะของไทม์ไลน์ที่แสดงอยู่ในหน้า<br />
Home ของทวิตเตอร์เมื่อล็อกอิน โดยคำสั่งที่เกี่ยวข้องกับการอ่านข้อมูลจากอินเตอร์เน็ตนั้นจะต้องใส่<br />
ไว้ใน AsyncTask เสมอเพื่อป้องกันหน้าจอค้างในกรณีที่ต้องใช้เวลาในการอ่านข้อมูลนาน เมธอด<br />
getHomeTimeline() จะถูกเรียกใช้ทุกครั้งเมื่อผู้ใช้ส่งข้อความใหม่หรืออัพเดตไทม์ไลน์<br />
คำสั่ง UserTimeLineAdapter ของคลาส BaseAdapter จะใช้ในการแสดงข้อมูลของสถานะ<br />
ไทม์ไลน์ ซึ่งคำสั่งนี้จะใช้ข้อมูล userTimeLine เพื่อแสดงข้อมูลใน ListView<br />
ใน ListActivity จะมีคลาสของ AsyncTask อยู่ 2 ตัว คือ setup และ loadstatus<br />
ซึ่งจะทำงานในลักษณะเดียวกันคือเรียกใช้คำสั่ง getHomeTimeline() แต่จะมีข้อแตกต่างตรงที่<br />
setup จะสร้าง ListActivity โดยใช้ UserTimeLineAdapter แต่ loadstatus จะส่งข้อมูลไป<br />
ยัง UserTimeLineAdapter โดยตรงเมื่อข้อมูลมีการเปลี่ยนแปลง<br />
ชุดคำสั่งที่ 8.12 src/com/cookbook/twitter/UpdateAndList.java<br />
package com.cookbook.twitter;<br />
import twitter4j.ResponseList;<br />
import twitter4j.Status;<br />
import twitter4j.Twitter;