Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View view = inflater.inflate(R.layout.fragment_utama, container, false);
- recyclerView = (RecyclerView) view.findViewById(R.id.list_utra);
- dataku = new ArrayList<>();
- gridLayoutManager = new GridLayoutManager(getActivity(), 4);
- adapter = new RecyclerAdapter(getActivity(), dataku);
- recyclerView.setAdapter(adapter);
- recyclerView.setLayoutManager(gridLayoutManager);
- Ambildatadariserver(0);
- recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener(){
- public void onScrolled(RecyclerView recyclerView, int dx, int dy){
- if(gridLayoutManager.findLastCompletelyVisibleItemPosition() == dataku.size()-1){
- Ambildatadariserver(dataku.get(dataku.size()-1).getId());
- }
- }
- });
- return view;
- }
- private void Ambildatadariserver(int id){
- AsyncTask<Integer, String, Void> task = new AsyncTask<Integer, String, Void>(){
- @Override
- protected Void doInBackground(Integer... integers){
- sharedPreferences = getActivity().getSharedPreferences("login.conf", Context.MODE_PRIVATE);
- editor = sharedPreferences.edit();
- String username = sharedPreferences.getString("username", "");
- String password = sharedPreferences.getString("password", "");
- httpClient = new OkHttpClient();
- RequestBody formBody = new FormBody.Builder().add("username_krm", username).add("password_krm", password).build();
- Request request = new Request.Builder().url(alamat_json + integers[0]).post(formBody).build();
- try {
- Response response = httpClient.newCall(request).execute();
- JSONArray jsonArray = new JSONArray(response.body().string());
- for(int i=0;i<jsonArray.length();i++){
- JSONObject object = jsonArray.getJSONObject(i);
- DataJson data = new DataJson(object.getInt("id"), object.getString("username"), object.getString("email"), object.getString("tanggal_lahir"));
- dataku.add(data);
- }
- }
- catch (IOException e){
- e.printStackTrace();
- }
- catch (JSONException e){
- System.out.println("Akhir Json File");
- }
- return null;
- }
- @Override
- protected void onPostExecute(Void Avoid){
- adapter.notifyDataSetChanged();
- }
- };
- task.execute();
- }
- 01-22 20:47:42.830 10352-10366/? E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
- Process: ptguwatirtasejahtera.utraposmobile, PID: 10352
- java.lang.RuntimeException: An error occured while executing doInBackground()
- at android.os.AsyncTask$3.done(AsyncTask.java:300)
- at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
- at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
- at java.util.concurrent.FutureTask.run(FutureTask.java:242)
- at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
- at java.lang.Thread.run(Thread.java:841)
- Caused by: java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
- at ptguwatirtasejahtera.utraposmobile.FragmentUtama$2.doInBackground(FragmentUtama.java:156)
- at ptguwatirtasejahtera.utraposmobile.FragmentUtama$2.doInBackground(FragmentUtama.java:147)
- at android.os.AsyncTask$2.call(AsyncTask.java:288)
- at java.util.concurrent.FutureTask.run(FutureTask.java:237)
- at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
- at java.lang.Thread.run(Thread.java:841)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement