Professional Documents
Culture Documents
AppController
Buatlah sebuah Class baru dengan nama AppController.java, lalu isi dengan perintah berikut ini:
package isi.nama.package;
import android.app.Application;
import android.text.TextUtils;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.ImageLoader;
import com.android.volley.toolbox.Volley;
@Override
public void onCreate() {
super.onCreate();
mInstance = this;
}
return mRequestQueue;
}
public DataSiswaMapel() {
}
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.android.volley.toolbox.ImageLoader;
import java.util.List;
import webid.fhunsur.siafhunsur.R;
import webid.fhunsur.siafhunsur.app.AppController;
import webid.fhunsur.siafhunsur.data.DataPerwalian;
@Override
public int getCount() {
return items.size();
}
@Override
public Object getItem(int location) {
return items.get(location);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (inflater == null)
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null)
convertView = inflater.inflate(R.layout.list_perwalian, null);
txtNpmm.setText(data.getNpm());
txtNama.setText(data.getNama());
Glide.with(convertView.getContext()).load(dataPenghuniKost.getAvatar())
.thumbnail(0.5f)
.crossFade()
.placeholder(R.drawable.img_profile_default)
.error(R.drawable.img_profile_default)
.bitmapTransform(new
GlideCircleTransformation(convertView.getContext()))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into((ImageView) convertView.findViewById(R.id.imgGmbr));
return convertView;
}
}
5. View Data
Digunakan untuk menampilkan data dari JSON dengan menggunakan Volley
private void loadData() {
swipe.setRefreshing(true);
itemList.clear();
isiClassAdapter.notifyDataSetChanged();
final StringRequest strReq = new StringRequest(Request.Method.POST, url_api,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d(TAG, "Response: " + response.toString());
try {
JSONObject jObj = new JSONObject(response);
String error = jObj.getString("error");
JSONObject result = jObj.getJSONObject("result");
if (error.matches("0")) {
JSONArray jArr = result.getJSONArray("jadwal");
for (int i = 0; i < jArr.length(); i++) {
try {
JSONObject dataObj = jArr.getJSONObject(i);
IsiClassData item = new IsiClassData();
item.setValue(dataObj.getString("json_objek"));
itemList.add(item);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
isiClassAdapter.notifyDataSetChanged();
swipe.setRefreshing(false);
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e(TAG, "Error: " + error.getMessage());
Toast.makeText(IsiNamaActivity.this, "Tidak dapat mengambil data",
Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Map<String, String> getParams() {
// Posting parameters ke post url
Map<String, String> params = new HashMap<String, String>();
params.put("parameter1", "isinilai");
params.put("parameter2", "isinilai");
return params;
}
@Override
public Map getHeaders() throws AuthFailureError {
HashMap headers = new HashMap();
//headers.put("API-KEY",
"kjashdkjaskjhduihoas978978as9udhujahksdh98");
//headers.put("Content-Type", "application/x-www-form-urlencoded");
return headers;
}
};
AppController.getInstance().addToRequestQueue(strReq, tag_json_obj);
}
6. Session Manager
Digunakan untuk menyimpan data login pengguna
package com.fajarms.perpus;
import android.content.Context;
import android.content.SharedPreferences;
import java.util.HashMap;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.Transformation;
import com.bumptech.glide.load.engine.Resource;
import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool;
import com.bumptech.glide.load.resource.bitmap.BitmapResource;
@Override
public Resource<Bitmap> transform(Resource<Bitmap> resource, int outWidth,
int outHeight) {
Bitmap source = resource.get();
int size = Math.min(source.getWidth(), source.getHeight());
@Override
public String getId() {
return "GlideCircleTransformation()";
}
}