private void nav_NavigationItemSelected(object sender, NavigationEventArgs args) { var containerResId = Resource.Id.fragment_container; var transaction = SupportFragmentManager.BeginTransaction(); transaction.SetTransition((int)SupportFragmentTransaction.TransitFragmentOpen); if (args.NavItemPosition == NavigationDestination.List) { list_fragment = list_fragment ?? new SampleListFragment(); list_fragment.FastScrollEnabled = false; transaction.Replace(containerResId, list_fragment); } else if (args.NavItemPosition == NavigationDestination.Grid) { grid_fragment = grid_fragment ?? new GridFragment(); transaction.Replace(containerResId, grid_fragment); } else if (args.NavItemPosition == NavigationDestination.ScrollView) { image_fragment = new ImageFragment(Resource.Drawable.android_flavors); transaction.Replace(containerResId, image_fragment); } else if (args.NavItemPosition == NavigationDestination.ListFastScroll) { list_fragment = list_fragment ?? new SampleListFragment(); list_fragment.FastScrollEnabled = true; transaction.Replace(containerResId, list_fragment); } transaction.AddToBackStack(null); transaction.Commit(); }
private void nav_NavigationItemSelected(object sender, NavigationEventArgs args) { var didChange = false; var addToBackStack = false; if (current_nav_position != args.NavItemPosition) { current_nav_position = args.NavItemPosition; didChange = true; } var containerResId = 0; var transitionType = FragmentTransit.None; if (didChange || !is_dual_pane) { if (is_dual_pane) { transitionType = FragmentTransit.FragmentFade; containerResId = Resource.Id.content_fragment_container; } else { transitionType = FragmentTransit.FragmentOpen; addToBackStack = true; containerResId = Resource.Id.fragment_container; } var transaction = SupportFragmentManager.BeginTransaction(); transaction.SetTransition((int)transitionType); if (current_nav_position == 0) { grid_fragment = grid_fragment ?? new GridFragment(); transaction.Replace(containerResId, grid_fragment); } else if (current_nav_position == 1) { image_fragment = new ImageFragment(Resource.Drawable.android_flavors); transaction.Replace(containerResId, image_fragment); } else if (current_nav_position == 2) { image_fragment = new ImageFragment(Resource.Drawable.xamarin); transaction.Replace(containerResId, image_fragment); } if (addToBackStack) { transaction.AddToBackStack(null); } transaction.Commit(); } }
protected override object GetObject(object[] parts) { PointZ location = parts[0] as PointZ; Bitmap bmp = null; ImageFragment fragment = null; if (location != null) bmp = parts[1] as Bitmap; if (bmp != null) fragment = new ImageFragment(bmp, location); return fragment; }
public override Fragment GetItem(int position) { ImageFragment f = new ImageFragment(position); return(f); }
protected override IList IGetPartsObject(object obj) { ImageFragment image = obj as ImageFragment; return new object[] { image.Location, image.Image }; }