| | package org.ntlab.acanthus_client.views.main_menu_ui.home; |
---|
| | |
---|
| | import android.content.Intent; |
---|
| | import android.os.Bundle; |
---|
| | import android.util.Log; |
---|
| | import android.view.LayoutInflater; |
---|
| | import android.view.View; |
---|
| | import android.view.ViewGroup; |
---|
| | import android.widget.AdapterView; |
---|
| | import android.widget.BaseAdapter; |
---|
| | import android.widget.LinearLayout; |
---|
| | import android.widget.ListView; |
---|
| | import android.widget.TextView; |
---|
| |
---|
| | import org.ntlab.acanthus_client.R; |
---|
| | import org.ntlab.acanthus_client.databinding.FragmentHomeBinding; |
---|
| | import org.ntlab.acanthus_client.entities.Animation; |
---|
| | import org.ntlab.acanthus_client.entities.AnimationJson; |
---|
| | import org.ntlab.acanthus_client.views.animation.AnimationActivity; |
---|
| | import org.ntlab.acanthus_client.views.paint.PaintActivity; |
---|
| | |
---|
| | import androidx.annotation.NonNull; |
---|
| | import androidx.annotation.Nullable; |
---|
| | import androidx.fragment.app.Fragment; |
---|
| |
---|
| | import androidx.lifecycle.ViewModelProvider; |
---|
| | |
---|
| | import java.util.ArrayList; |
---|
| | import java.util.Collection; |
---|
| | import java.util.Collections; |
---|
| | import java.util.Iterator; |
---|
| | |
---|
| | public class HomeFragment extends Fragment { |
---|
| | |
---|
| | private HomeViewModel homeViewModel; |
---|
| |
---|
| | homeViewModel.getAnimationJson().observe(getViewLifecycleOwner(), new Observer<Collection<AnimationJson>>() { |
---|
| | @Override |
---|
| | public void onChanged(Collection<AnimationJson> animationJsons) { |
---|
| | Collection<AnimationJson> animationJsonList = homeViewModel.getGallery(); |
---|
| | BaseAdapter adapter = new ListAnimationViewAdapter(getActivity(), R.layout.animation_home, animationJsonList); |
---|
| | //ソート用宣言 |
---|
| | ArrayList<String> createDateList = new ArrayList<>(); |
---|
| | ArrayList<AnimationJson> animationJsonSortList =new ArrayList<>(); |
---|
| | |
---|
| | //ソート処理 |
---|
| | for (AnimationJson animationJson : animationJsonList){ |
---|
| | createDateList.add(animationJson.getCreatedDate()); |
---|
| | } |
---|
| | Collections.sort(createDateList); |
---|
| | Collections.reverse(createDateList); |
---|
| | for (String createDate : createDateList){ |
---|
| | for (AnimationJson animationJson : animationJsonList){ |
---|
| | if (createDate == animationJson.getCreatedDate()){ |
---|
| | animationJsonSortList.add(animationJson); |
---|
| | } |
---|
| | } |
---|
| | } |
---|
| | BaseAdapter adapter = new ListAnimationViewAdapter(getActivity(), R.layout.animation_home, animationJsonSortList); |
---|
| | listView.setAdapter(adapter); |
---|
| | |
---|
| | listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { |
---|
| | @Override |
---|
| | public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) { |
---|
| | // acanthus.setCurrentAnimation(homeViewModel.getAnimation(animationJsonSortList.get(position).getAid())); |
---|
| | transitionAnimationActivity(animationJsonSortList.get(position)); |
---|
| | |
---|
| | } |
---|
| | }); |
---|
| | } |
---|
| | }); |
---|
| | |
---|
| | } |
---|
| | |
---|
| | public void onCreateAnimationView(Animation animation){ |
---|
| | } |
---|
| | |
---|
| | @Override |
---|
| | public void onDestroyView() { |
---|
| | super.onDestroyView(); |
---|
| | binding = null; |
---|
| | } |
---|
| | |
---|
| | private void transitionAnimationActivity(AnimationJson animationJson) { |
---|
| | Acanthus acanthus = (Acanthus) getActivity().getApplication(); |
---|
| | Intent intent = new Intent(acanthus, AnimationActivity.class); |
---|
| | intent.putExtra("AnimationJsonData", animationJson); |
---|
| | startActivity(intent); |
---|
| | } |
---|
| | } |
---|
| | |