// Called for each group that is enumerated protected void GroupsEnumerator (ALAssetsGroup group, ref bool stop) { // when the enumeration is completed, this method is invoked with group set to null if (group != null) { Console.WriteLine ("Group found: " + group.Type.ToString ()); // don't stop, baby stop = false; // photos and videos. could also pass AllVideos, AllVideos, etc. group.SetAssetsFilter (ALAssetsFilter.AllAssets); if (group.Name != null) Console.WriteLine("Group Name: " + group.Name); // add the group to the assets dictionary groups.Add(group); assetGroups.Add(group, new List<ALAsset> ()); currentGroup = group; // enumerate each asset within the group group.Enumerate(AssetEnumerator); } else { Console.WriteLine ("Group enumeration completed."); assetGroupTableSource = new AssetGroupTableSource (groups); TableView.Source = assetGroupTableSource; assetGroupTableSource.GroupSelected += (object sender, AssetGroupTableSource.GroupSelectedEventArgs e) => { AssetEnumerationScreen assetScreen = new AssetEnumerationScreen (e.Group.Name, assetGroups[e.Group]); NavigationController.PushViewController (assetScreen, true); }; } }
void GroupsEnumerator(ALAssetsGroup agroup, ref bool stop) { if (agroup == null) { return; } //We show photos only. Let's get only them agroup.SetAssetsFilter(ALAssetsFilter.AllPhotos); //do not add empty album if (agroup.Count == 0) { return; } //ALAssetsGroupType.All might have duplicated albums. let's skip the album if we already have it if (assetGroups.Any(g => g.PersistentID == agroup.PersistentID)) { return; } assetGroups.Add(agroup); dispatcher.BeginInvokeOnMainThread(ReloadTableView); }
public ELCAssetTablePicker(ALAssetsGroup assetGroup) : base(new UICollectionViewFlowLayout { ItemSize = new CGSize(75, 75), MinimumLineSpacing = 4, MinimumInteritemSpacing = 4, SectionInset = new UIEdgeInsets(0, 4, 0, 4), ScrollDirection = UICollectionViewScrollDirection.Vertical }) { this.assetGroup = assetGroup; }
private void GroupEnumerator(ALAssetsGroup group, ref bool shouldStop) { if (group == null) { shouldStop = true; return; } if (!shouldStop) { group.Enumerate(AssetEnumerator); shouldStop = false; } taskCompletionSource.TrySetResult(pictures); }
/// <summary> /// Groups the enumerator. /// </summary> /// <param name="assetGroup">Asset group.</param> /// <param name="shouldStop">Should stop.</param> private void GroupEnumerator(ALAssetsGroup assetGroup, ref bool shouldStop) { if (assetGroup == null) { shouldStop = true; notifyAssetsLoaded(); return; } if (!shouldStop) { assetGroup.Enumerate(AssetEnumerator); shouldStop = false; } }
private void GroupEnumerator(ALAssetsGroup group, ref bool shouldStop) { if (group != null && group.Name == App.APP_NAME) { _album = group; shouldStop = true; return; } if (group == null) { shouldStop = true; return; } if (!shouldStop) { shouldStop = false; } }
void GroupsEnumerator(ALAssetsGroup agroup, ref bool stop) { if (agroup == null) { return; } // added fix for camera albums order if (agroup.Name.ToString().ToLower() == "camera roll" && agroup.Type == ALAssetsGroupType.SavedPhotos) { AssetGroups.Insert(0, agroup); } else { AssetGroups.Add(agroup); } _Dispatcher.BeginInvokeOnMainThread(ReloadTableView); }
// Called for each group that is enumerated protected void GroupsEnumerator(ALAssetsGroup group, ref bool stop) { // when the enumeration is completed, this method is invoked with group set to null if (group != null) { Console.WriteLine("Group found: " + group.Type.ToString()); // don't stop, baby stop = false; // photos and videos. could also pass AllVideos, AllVideos, etc. group.SetAssetsFilter(ALAssetsFilter.AllAssets); if (group.Name != null) { Console.WriteLine("Group Name: " + group.Name); } // add the group to the assets dictionary groups.Add(group); assetGroups.Add(group, new List <ALAsset> ()); currentGroup = group; // enumerate each asset within the group group.Enumerate(AssetEnumerator); } else { Console.WriteLine("Group enumeration completed."); assetGroupTableSource = new AssetGroupTableSource(groups); TableView.Source = assetGroupTableSource; assetGroupTableSource.GroupSelected += (object sender, AssetGroupTableSource.GroupSelectedEventArgs e) => { AssetEnumerationScreen assetScreen = new AssetEnumerationScreen(e.Group.Name, assetGroups[e.Group]); NavigationController.PushViewController(assetScreen, true); }; TableView.ReloadData(); } }
void HandleALAssetsLibraryGroupsEnumerationResults(ALAssetsGroup group, ref bool stop) { FirePhotoPermissionCompletionHandler(); stop = true; }
public ELCAssetTablePicker(ALAssetsGroup assetGroup) { AssetGroup = assetGroup; }
public ELCAssetTablePicker(ALAssetsGroup assetGroup) => this.assetGroup = assetGroup;
void GroupsEnumerator(ALAssetsGroup agroup, ref bool stop) { if (agroup == null) { return; } // added fix for camera albums order if (agroup.Name.ToString ().ToLower () == "camera roll" && agroup.Type == ALAssetsGroupType.SavedPhotos) { AssetGroups.Insert (0, agroup); } else { AssetGroups.Add (agroup); } _Dispatcher.BeginInvokeOnMainThread (ReloadTableView); }
public GroupSelectedEventArgs(ALAssetsGroup group) : base() { Group = group; }
void HandleALAssetsLibraryGroupsEnumerationResults(ALAssetsGroup group, ref bool stop) { FirePhotoPermissionCompletionHandler (); stop = true; }
public ELCAssetTablePicker(ALAssetsGroup assetGroup,ALAssetsFilter filter) { AssetGroup = assetGroup; Filter= filter; }