Skip to content

Instantly share code, notes, and snippets.

@alfianyusufabdullah
Created July 30, 2018 01:17
Show Gist options
  • Save alfianyusufabdullah/234438e1d77c3e68fe290c925fbab649 to your computer and use it in GitHub Desktop.
Save alfianyusufabdullah/234438e1d77c3e68fe290c925fbab649 to your computer and use it in GitHub Desktop.
package com.company.whitelord.sibumdes;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.widget.Toast;
import com.company.whitelord.sibumdes.Adapter.AdapterPotensi;
import com.company.whitelord.sibumdes.Model.DataTemp;
import com.company.whitelord.sibumdes.Model.Potensi;
import com.company.whitelord.sibumdes.Rest.ApiClient;
import com.company.whitelord.sibumdes.Rest.ApiInterface;
import com.company.whitelord.sibumdes.Rest.DesaItem;
import com.company.whitelord.sibumdes.Rest.NewResponse;
import java.util.ArrayList;
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
public class PotensiActivity extends AppCompatActivity {
RecyclerView recyclerView;
List<DesaItem> data_desa = new ArrayList<>();
AdapterPotensi adapterPotensi;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_potensi);
adapterPotensi = new AdapterPotensi(PotensiActivity.this , data_desa, R.layout.layout_item_potensi);
recyclerView = (RecyclerView)findViewById(R.id.idRecy);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapterPotensi);
if(savedInstanceState != null){
data_desa = new ArrayList<>();
data_desa.addAll(savedInstanceState.getParcelableArrayList("position"));
adapterPotensi.notifyDataSetChanged();
} else {
tampilData();
}
}
public void tampilData(){
ApiInterface api = ApiClient.getInstance();
Call<NewResponse> desaCall = api.request_show_all_desa();
desaCall.enqueue(new Callback<NewResponse>() {
@Override
public void onResponse(Call<NewResponse> call, retrofit2.Response<NewResponse> response) {
if(response.isSuccessful()){
data_desa = new ArrayList<>();
data_desa.addAll(response.body().getDesa());
boolean status = response.body().isStatus();
if(status){
adapterPotensi.notifyDataSetChanged();
} else {
Toast.makeText(getApplicationContext(),"Tidak ada data",Toast.LENGTH_SHORT).show();
}
}
}
@Override
public void onFailure(Call<NewResponse> call, Throwable t) {
t.printStackTrace();
}
});
}
@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putParcelableArrayList("position", data_desa);
super.onSaveInstanceState(outState);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment