Hal ini bisa dilakukan dengan berbagai macam cara, yang pertama adalah dengan menggunakan tombol dan yang kedua tidak menggunakan tombol (onScrollListener).
Untuk yang tidak menggunakan tombol, data diambil ketika pengguna menarik halaman (seperti yang ada pada aplikasi Twitter for Android jika akan melakukan refresh). Tetapi, pada kasus ini query data dilakukan ketika pengguna telah sampai pada akhir bawah dari daftar (end of list). Cara untuk melakukan hal ini dapat dilakukan menggunakan ENDLESS ADAPTER.
Untuk yang menggunakan tombol lebih mudah dilakukan karena hanya menambahkan sebuah tombol di akhir dari list dengan menggunakan perintah addFooterView(View v) dengan v adalah View dari button yang dibuat pada XML terpisah.
Untuk lebih mudahnya dapat dilihat pada kode berikut:
Main.java
public class Pengembangan extends Activity
{
private ListView thislist;
private Vector data = new Vector();
private ArrayAdapter adapt;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
View v = getLayoutInflater().inflate(R.layout.button, null);
thislist = (ListView)findViewById(R.id.myList);
for(int i = 0; i < 5; i++){ data.add("List "+i); } adapt = new ArrayAdapter(this,android.R.layout.simple_list_item_1,data);
thislist.addFooterView(v);
thislist.setAdapter(adapt);
}
public void doAppend(View v){
for (int i = thislist.getCount(); i < (thislist.getCount()+5); i++)
{ data.add("List "+i); }
adapt = new ArrayAdapter(this,android.R.layout.simple_list_item_1,data);
thislist.setAdapter(adapt);
// biar layar menampilkan objek yang terakhir
thislist.setSelection(thislist.getCount() - 1);
}
}
main.xml
<relativelayout
android:id="@+id/LinearLayout01" android:layout_height="fill_parent"
android:layout_width="fill_parent" android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<listview android:id="@+id/myList" android:layout_height="wrap_content" android:layout_width="wrap_content">
</listview>
</relativelayout>
button.xml
<button
android:id="@+id/button01" android:layout_height="wrap_content"
android:layout_width="wrap_content" android:onclick="doAppend"
android:text="More"
xmlns:android="http://schemas.android.com/apk/res/android">
</button>
Dengan kode tersebut maka akan mendapati list dengan tombol "More" yang selalu berada di ujung paling bawah. Dan ketika tombol tersebut ditekan maka akan menampilkan tambahan list 5 bilangan yang mengisi list diatas tombol More".


No comments:
Post a Comment