1. Buat class History_Antrian.java
package thefly.org.histori;
import go_antri.org.R;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import thefly.org.CustomHttpClient;
import android.os.Bundle;
import android.os.StrictMode;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.Toast;
public class HistoryAntrian extends Fragment {
// inisialisasi variabel
int mCurrentPage;
//keperluan adapter untuk mengisi data dari masing2 list
private List<ModelHistory> listData = new ArrayList<ModelHistory>();
private HistoryAntrianListAdapter adapter;
HistoryAntrianListAdapter custum = new HistoryAntrianListAdapter(null, listData);
ListView listView;
//private ProgressDialog pDialog;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//mengambil argument dari project Bundle
Bundle data = getArguments();
//ambil nilai INTEGER dari current page yang berasar dar bundle
mCurrentPage = data.getInt("current_page", 0);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.history_layout_fragment, container,false);
setHasOptionsMenu(true);
// set value2
listView = (ListView) v.findViewById(R.id.listView);
adapter = new HistoryAntrianListAdapter(getActivity(), listData);
listView.setAdapter(adapter);
// load data hstori berdasasrkan page.
//jadi jika jika mCurrentPage =1 maka data yang akan di ambil adalah dokter 1 dan seterusnya
loadDataHistori(mCurrentPage);
System.out.println("mCurrentPage "+mCurrentPage);
return v;
}
private void loadDataHistori(int currentPage){
ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
// kirim parameter dengan key tipeDokter dengan value =DOKTER_1 atau seterusnya
postParameters.add(new BasicNameValuePair("tipeDokter","DOKTER_"+String.valueOf(currentPage)));
System.out.println("postParameters "+postParameters);
String response = "";
listData.clear();
try {
response = CustomHttpClient.executeHttpPost(CustomHttpClient.URL+"get_data_history_antrian.php", postParameters);
System.out.println("response "+response);
if(response.equals("nodata")){
//hidePDialog();
Toast.makeText(getActivity(), "Tidak Ada Data Histori Pelanggan Anata Saloon n Skincare", Toast.LENGTH_LONG).show();
}else{
try {
// define JSON objec
JSONObject jsonObyek = new JSONObject(response);
//ambil object "data" dan data di konversi menjadi JSONarray
JSONArray jsonArray = jsonObyek.getJSONArray("data");
int no=1;
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject obj =jsonArray.getJSONObject(i);
// define object baru dari ModelHistory.
// jadi jika ada 2 data maka data yang masuk ke model adalah 2 data
ModelHistory mdHistori = new ModelHistory();
// ambil data berdasarkan respon dari format JSON
mdHistori.setNamaPasien(obj.getString("nama_pasien"));
mdHistori.setNamaUser(obj.getString("nama_user"));
mdHistori.setStatusPasien(obj.getString("sts"));
mdHistori.setNo(String.valueOf(no));
// tambahkan model tersebut ke variabel listData
listData.add(mdHistori);
no++;
}
} catch (JSONException e) {
e.printStackTrace();
//hidePDialog();
}
adapter.notifyDataSetChanged();
}
}
catch (Exception e) {
System.out.println("Exception "+e.toString());
}
}
@Override
public void onDestroy() {
super.onDestroy();
//hidePDialog();
}
// private void hidePDialog() {
// if (pDialog != null) {
// pDialog.dismiss();
// pDialog = null;
// }
// }
}
2. Buat tampilannya
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/main"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<!-- Bagian atas yg ungu yah-->
<LinearLayout android:id="@+id/bagian_atas"
android:background="#C71585"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
>
<TextView android:id="@+id/kotak1"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:text="No "
android:width="20dip"
android:height="30dip"
/>
<TextView android:id="@+id/kotak2"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:layout_marginLeft="10dip"
android:text="Nama Lengkap"
android:width="100dip"
android:height="30dip"
/>
<TextView android:id="@+id/kotak3"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:text="Jenis Kelamin"
android:width="100dip"
android:height="30dip"
/>
<TextView android:id="@+id/kotak4"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:text="Status Pelanggan"
android:width="100dip"
android:height="30dip"
/>
</LinearLayout>
<!-- untuk garis perantara -->
<View android:layout_width="fill_parent"
android:layout_height="1dip"
android:background="?android:attr/listDivider" />
<!-- untuk tiap cell(kotak) -->
<LinearLayout android:id="@+id/tampilan_nya"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<ListView android:id="@+id/warna_tampilan_nya"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
</ListView>
</LinearLayout>
</LinearLayout>
0 komentar:
Posting Komentar