Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.******.******;
- import android.app.ProgressDialog;
- import android.content.Context;
- import android.support.design.widget.Snackbar;
- import android.support.v4.widget.SwipeRefreshLayout;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.support.v7.widget.DefaultItemAnimator;
- import android.support.v7.widget.LinearLayoutManager;
- import android.support.v7.widget.RecyclerView;
- import android.util.Log;
- import android.view.View;
- import android.widget.ProgressBar;
- import android.widget.TextView;
- import com.android.volley.RequestQueue;
- import com.android.volley.Response;
- import com.android.volley.VolleyError;
- import com.android.volley.toolbox.JsonArrayRequest;
- import com.android.volley.toolbox.Volley;
- import com.novalnvall.memeunfaedah.adapter.GalleryAdapter;
- import com.novalnvall.memeunfaedah.adapter.ProfilAdapter;
- import com.novalnvall.memeunfaedah.adapter.TabbedAdapter;
- import com.novalnvall.memeunfaedah.model.Gallery;
- import org.json.JSONArray;
- import org.json.JSONException;
- import org.json.JSONObject;
- import java.util.ArrayList;
- public class MainActivity extends AppCompatActivity implements SwipeRefreshLayout.OnRefreshListener {
- private TabbedAdapter adapter;
- private RecyclerView recyclerView;
- private SwipeRefreshLayout swipeRefreshLayout;
- private Context mContext;
- private ProgressDialog mPrgoresDialog;
- private Snackbar mSnackbar;
- private ProfilAdapter mAdapter;
- private ArrayList<Gallery> galleryArrayList;
- private RequestQueue requestQueue;
- private String nama;
- private TextView nama2;
- private ProgressBar progressBar;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_profil);
- // Swipe refresh
- swipeRefreshLayout = findViewById(R.id.swipe);
- swipeRefreshLayout.setColorSchemeColors(getResources().getColor(R.color.colorPrimaryDark));
- swipeRefreshLayout.setOnRefreshListener(this);
- //Progresbar
- progressBar = findViewById(R.id.progress_bar2);
- // Recycle View
- recyclerView = findViewById(R.id.recy2);
- loadData();
- // Adapter
- galleryArrayList = new ArrayList<>();
- mAdapter = new ProfilAdapter(this, galleryArrayList);
- RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(this);
- recyclerView.setLayoutManager(mLayoutManager);
- recyclerView.setItemAnimator(new DefaultItemAnimator());
- recyclerView.setAdapter(mAdapter);
- }
- private void loadData(){
- String jsonUrl="http://192.168.43.171/meme/profil.php";
- showProgressBar();
- JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(jsonUrl, new Response.Listener<JSONArray>() {
- @Override
- public void onResponse(JSONArray response) {
- galleryArrayList.clear();
- try {
- for (int i = 0; i < response.length(); i++) {
- JSONObject jsonObject = response.getJSONObject(i);
- Gallery gallery = new Gallery();
- gallery.setNama_admin(jsonObject.getString("nama_admin"));
- gallery.setCaption(jsonObject.getString("caption"));
- gallery.setIkon(jsonObject.getString("ikon"));
- gallery.setSumber(jsonObject.getString("sumber"));
- gallery.setGambar(jsonObject.getString("gambar"));
- gallery.setKategori(jsonObject.getString("kategori"));
- gallery.setId(jsonObject.getInt("id"));
- galleryArrayList.add(gallery);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- mPrgoresDialog.dismiss();
- }
- mAdapter.notifyDataSetChanged();
- hideProgressBar();
- swipeRefreshLayout.setRefreshing(false);
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e("Volley", error.toString());
- hideProgressBar();
- mSnackbar = Snackbar.make(swipeRefreshLayout,"Coba Lagi", Snackbar.LENGTH_INDEFINITE).setAction("RETRY", new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- loadData();
- }
- });
- }
- });
- RequestQueue requestQueue = Volley.newRequestQueue(this);
- requestQueue.add(jsonArrayRequest);
- }
- private void showProgressBar() {
- progressBar.setVisibility(View.VISIBLE);
- }
- private void hideProgressBar() {
- progressBar.setVisibility(View.GONE);
- }
- private void updateProgressBar(int progress) {
- progressBar.setProgress(progress);
- }
- @Override
- public void onRefresh() {
- loadData();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement