diff --git a/app/src/main/java/com/example/nemophila/MapsFragment.java b/app/src/main/java/com/example/nemophila/MapsFragment.java index b99769d..1ee5dd6 100644 --- a/app/src/main/java/com/example/nemophila/MapsFragment.java +++ b/app/src/main/java/com/example/nemophila/MapsFragment.java @@ -116,41 +116,44 @@ for (Shop shop : shops) { //受け取ったshopsにfriendsの投稿が含まれているかを確認,受け取ったshopsに対してMarkerが立っているかを確認 - //if ( shopsViewModel.getMarker(shop) == null) { //フレンド以外の投稿のピンも立てたい場合 - postsViewModel.loadShopPost(shop.getSid()); - postsViewModel.getShopPostLiveData().observe(getActivity(), new Observer >() { - @Override - public void onChanged(ArrayList posts) { - ArrayList ids = postsViewModel.getUserIds(); - for(int i = 0; i < ids.size(); i++) { - ArrayList fids = nemophila.getFriendIds(); - for(int j = 0; j < fids.size(); j++) { - if( ( ids.get(i).equals(fids.get(j)) || ids.get(i).equals(nemophila.getUid()) ) && shopsViewModel.getMarker(shop) == null ){ - //各shopに対応するMarkerがなければMarkerを立てる - shopLatlng = new LatLng(shop.getLatitude(), shop.getLongitude()); - System.out.println(shopLatlng); - Marker createMaker = mMap.addMarker(new MarkerOptions().position(shopLatlng).title("")); - //マーカーに店情報を持たせる - createMaker.setTag(shop); - //ShopToMarkerに紐づけ - shopsViewModel.setShopAndMarker(shop, createMaker); - } - } - } - } - }); -// if( shopsViewModel.getMarker(shop) == null) { + //observeの中にobserveはうまくいかなかった +// postsViewModel.loadShopPost(shop.getSid()); +// postsViewModel.getShopPostLiveData().observe(getActivity(), new Observer >() { +// @Override +// public void onChanged(ArrayList posts) { +// ArrayList ids = postsViewModel.getUserIds(); // -// //各shopに対応するMarkerがなければMarkerを立てる -// shopLatlng = new LatLng(shop.getLatitude(), shop.getLongitude()); -// System.out.println(shopLatlng); -// Marker createMaker = mMap.addMarker(new MarkerOptions().position(shopLatlng).title("")); -// //マーカーに店情報を持たせる -// createMaker.setTag(shop); -// //ShopToMarkerに紐づけ -// shopsViewModel.setShopAndMarker(shop, createMaker); -// } +// for(int i = 0; i < ids.size(); i++) { +// ArrayList fids = nemophila.getFriendIds(); +// for(int j = 0; j < fids.size(); j++) { +// if( ( ids.get(i).equals(fids.get(j)) || ids.get(i).equals(nemophila.getUid()) ) && shopsViewModel.getMarker(shop) == null ){ +// //各shopに対応するMarkerがなければMarkerを立てる +// shopLatlng = new LatLng(shop.getLatitude(), shop.getLongitude()); +// System.out.println(shopLatlng); +// Marker createMaker = mMap.addMarker(new MarkerOptions().position(shopLatlng).title("")); +// //マーカーに店情報を持たせる +// createMaker.setTag(shop); +// //ShopToMarkerに紐づけ +// shopsViewModel.setShopAndMarker(shop, createMaker); +// } +// } +// } +// } +// }); + + if ( shopsViewModel.getMarker(shop) == null) { //フレンド以外の投稿のピンも立てたい場合 + //if( && shopsViewModel.getMarker(shop) == null) { + + //各shopに対応するMarkerがなければMarkerを立てる + shopLatlng = new LatLng(shop.getLatitude(), shop.getLongitude()); + System.out.println(shopLatlng); + Marker createMaker = mMap.addMarker(new MarkerOptions().position(shopLatlng).title("")); + //マーカーに店情報を持たせる + createMaker.setTag(shop); + //ShopToMarkerに紐づけ + shopsViewModel.setShopAndMarker(shop, createMaker); + } } });