Last active
October 13, 2016 11:42
-
-
Save cliffgr/d384cf7c38f3f4c9696b08eb3b668890 to your computer and use it in GitHub Desktop.
Stores Fragment with ListView and MapView Swicher
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.ethos.main.ui.fragments.DemoNewList; | |
import android.content.Intent; | |
import android.os.Bundle; | |
import android.support.v4.app.Fragment; | |
import android.support.v7.widget.DefaultItemAnimator; | |
import android.support.v7.widget.GridLayoutManager; | |
import android.support.v7.widget.RecyclerView; | |
import android.view.LayoutInflater; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import android.widget.ImageView; | |
import android.widget.LinearLayout; | |
import com.ethos.doers.Constants; | |
import com.ethos.doers.R; | |
import com.ethos.doers.net.BasicArvieRequest; | |
import com.ethos.main.ui.activities.BusinessViewActivity; | |
import com.ethos.main.ui.utils.OnItemClickListener; | |
import java.util.ArrayList; | |
import java.util.List; | |
public class DemoListFragment extends Fragment { | |
private static final String ARG_PARAM1 = "param1"; | |
private static final String ARG_PARAM2 = "param2"; | |
private String type; | |
public DemoListFragment() { | |
// Required empty public constructor | |
} | |
public static DemoListFragment newInstance() { | |
DemoListFragment fragment = new DemoListFragment(); | |
Bundle args = new Bundle(); | |
// args.putString(ARG_PARAM1, param1); | |
fragment.setArguments(args); | |
return fragment; | |
} | |
@Override | |
public void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
if (getArguments() != null) { | |
type = getArguments().getString(ARG_PARAM1); | |
} | |
} | |
@Override | |
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { | |
return inflater.inflate(R.layout.fragment_listviewpois, container, false); | |
} | |
@Override | |
public void onViewCreated(View view, Bundle savedInstanceState) { | |
super.onViewCreated(view, savedInstanceState); | |
setupViews(view); | |
} | |
private void setupViews(View view) { | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.ethos.main.ui.fragments.DemoNewList; | |
import android.annotation.SuppressLint; | |
import android.content.Context; | |
import android.content.Intent; | |
import android.graphics.Color; | |
import android.os.Bundle; | |
import android.support.annotation.Nullable; | |
import android.support.v4.app.Fragment; | |
import android.view.LayoutInflater; | |
import android.view.Menu; | |
import android.view.MenuInflater; | |
import android.view.MenuItem; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import android.view.animation.Animation; | |
import android.view.animation.AnimationUtils; | |
import android.widget.FrameLayout; | |
import android.widget.ImageView; | |
import android.widget.ProgressBar; | |
import android.widget.RelativeLayout; | |
import android.widget.TextView; | |
import android.widget.Toast; | |
import com.android.volley.VolleyError; | |
import com.android.volley.toolbox.ImageLoader; | |
import com.ethos.doers.Constants; | |
import com.ethos.doers.Doers; | |
import com.ethos.doers.R; | |
import com.ethos.doers.net.ArvieRestfulApi; | |
import com.ethos.doers.net.BasicArvieRequest; | |
import com.ethos.main.ui.activities.BusinessViewActivity; | |
import com.ethos.main.ui.activities.CouponActivity; | |
import com.ethos.main.ui.utils.GeneralUtils; | |
import com.ethos.main.ui.utils.Logger; | |
import com.ethos.main.ui.utils.VolleyErrorHelper; | |
import com.google.android.gms.maps.GoogleMap; | |
import com.google.android.gms.maps.OnMapReadyCallback; | |
import com.google.android.gms.maps.SupportMapFragment; | |
import com.google.android.gms.maps.model.BitmapDescriptorFactory; | |
import com.google.android.gms.maps.model.Marker; | |
import com.google.android.gms.maps.model.MarkerOptions; | |
import com.google.maps.android.clustering.Cluster; | |
import com.google.maps.android.clustering.ClusterManager; | |
import com.google.maps.android.clustering.view.DefaultClusterRenderer; | |
import java.util.ArrayList; | |
import java.util.List; | |
public class DemoMapFragment extends Fragment implements OnMapReadyCallback{ | |
private static final String ARG_PARAM1 = "param1"; | |
private static final String ARG_PARAM2 = "param2"; | |
private String type = Constants.NORMAL; | |
private GoogleMap mMap; | |
// private List<ARObject> list; | |
// private ClusterManager<ARObject> mClusterManager; | |
private FrameLayout frameLayoutBubble; | |
// private ARObject arObjectTemp; | |
public DemoMapFragment() { | |
// Required empty public constructor | |
} | |
public static DemoMapFragment newInstance() { | |
DemoMapFragment fragment = new DemoMapFragment(); | |
Bundle args = new Bundle(); | |
//args.putString(ARG_PARAM1, param1); | |
fragment.setArguments(args); | |
return fragment; | |
} | |
@Override | |
public void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setHasOptionsMenu(true); | |
if (getArguments() != null) { | |
type = getArguments().getString(ARG_PARAM1); | |
} | |
} | |
@Override | |
public View onCreateView(LayoutInflater inflater, ViewGroup container, | |
Bundle savedInstanceState) { | |
// Inflate the layout for this fragment | |
return inflater.inflate(R.layout.fragment_demo_map, container, false); | |
} | |
@Override | |
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { | |
inflater.inflate(R.menu.menu_listview_mapview, menu); | |
if (getActivity().findViewById(R.id.framelayout_bubble).getVisibility() == View.VISIBLE) { | |
menu.findItem(R.id.action_bar_close).setVisible(true); | |
} else { | |
menu.findItem(R.id.action_bar_close).setVisible(false); | |
} | |
super.onCreateOptionsMenu(menu, inflater); | |
} | |
@Override | |
public boolean onOptionsItemSelected(MenuItem item) { | |
int id = item.getItemId(); | |
switch (id) { | |
case R.id.action_bar_close: { | |
//Start Animation Fade out | |
// FrameLayoutViewAnimatedChangeFadeOut(getActivity(), (FrameLayout) getActivity().findViewById(R.id.framelayout_bubble)); | |
} | |
default: | |
return super.onOptionsItemSelected(item); | |
} | |
} | |
public FrameLayout getFrameLayout() { | |
return frameLayoutBubble; | |
} | |
@Override | |
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { | |
super.onViewCreated(view, savedInstanceState); | |
setupViews(view); | |
} | |
private void setupViews(View view) { | |
SupportMapFragment mapFragment = (SupportMapFragment) getChildFragmentManager().findFragmentById(R.id.map); | |
// mapFragment.getMapAsync(this); | |
frameLayoutBubble = (FrameLayout) getActivity().findViewById(R.id.framelayout_bubble); | |
} | |
@Override | |
public void onMapReady(GoogleMap googleMap) { | |
mMap = googleMap; | |
// setUpMap(list); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.ethos.main.ui.fragments; | |
import android.os.Bundle; | |
import android.support.annotation.Nullable; | |
import android.support.design.widget.FloatingActionButton; | |
import android.support.v4.app.Fragment; | |
import android.view.LayoutInflater; | |
import android.view.Menu; | |
import android.view.MenuInflater; | |
import android.view.MenuItem; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import com.ethos.doers.R; | |
import com.ethos.main.ui.fragments.DemoNewList.DemoListFragment; | |
import com.ethos.main.ui.fragments.DemoNewList.DemoMapFragment; | |
public class StoresFragment extends Fragment implements View.OnClickListener { | |
private static final String LIST = "list"; | |
private static final String MAP = "map"; | |
private FloatingActionButton goButton; | |
public static StoresFragment newInstance() { | |
return new StoresFragment(); | |
} | |
@Override | |
public void onCreate(@Nullable Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setHasOptionsMenu(true); | |
} | |
@Override | |
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { | |
return inflater.inflate(R.layout.fragment_store, container, false); | |
} | |
@Override | |
public void onViewCreated(View view, Bundle savedInstanceState) { | |
super.onViewCreated(view, savedInstanceState); | |
switchFragment(new DemoListFragment().newInstance(), LIST); | |
goButton = (FloatingActionButton) view.findViewById(R.id.fab); | |
goButton.setOnClickListener(this); | |
} | |
@Override | |
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { | |
inflater.inflate(R.menu.filter_menu, menu); | |
super.onCreateOptionsMenu(menu, inflater); | |
} | |
@Override | |
public boolean onOptionsItemSelected(MenuItem item) { | |
int id = item.getItemId(); | |
switch (id) { | |
default: | |
return super.onOptionsItemSelected(item); | |
} | |
} | |
private void switchFragment(Fragment fragment, String tag) { | |
getFragmentManager().beginTransaction().replace(R.id.frame_container, fragment, tag).commit(); | |
} | |
@Override | |
public void onClick(View v) { | |
Fragment fragment = getFragmentManager().findFragmentById(R.id.frame_container); | |
String tag = fragment.getTag(); | |
if (tag.equals(LIST)) { | |
switchFragment(new DemoMapFragment().newInstance(), MAP); | |
goButton.setImageResource(R.drawable.listview); | |
} else if (tag.equals(MAP)) { | |
switchFragment(new DemoListFragment().newInstance(), LIST); | |
goButton.setImageResource(R.drawable.mapview); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment