2015-07-06 3 views
2

Я хочу изменить имя альбома в своем приложении.Как редактировать или переименовывать PHAssetCollection LocalizedTitle?

if ([collection canPerformEditOperation:PHCollectionEditOperationRename] == YES) 
    { 
     //rename localizedTitle 
    } 

Если это «ДА», я хочу изменить имя.

Мой код:

PHFetchOptions *userAlbumsOptions = [PHFetchOptions new]; 
userAlbumsOptions.predicate = [NSPredicate predicateWithFormat:@"estimatedAssetCount > 0"]; 

PHFetchResult *userAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAny options:userAlbumsOptions]; 

[userAlbums enumerateObjectsUsingBlock:^(PHAssetCollection *collection, NSUInteger idx, BOOL *stop) 
{ 

}]; 

ответ

1
-(void)changeAlbumtitle:(PHAssetCollection *)collection withTitle:(NSString *)title { 

    if (![collection canPerformEditOperation:PHCollectionEditOperationRename]) { 

     NSLog(@"can't PerformEditOperation"); 
     return; 
    } 


    [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ 
     PHAssetCollectionChangeRequest *changeTitlerequest =[PHAssetCollectionChangeRequest changeRequestForAssetCollection:collection]; 
     changeTitlerequest.title = title; 


    } completionHandler:^(BOOL success, NSError *error) { 
     NSLog(@"Finished editing collection. %@", (success ? @"Successfully." : error)); 
    }]; 


} 

В Above дать функцию передать объект альбома (PHAssetCollection) и название

  • Первая проверка функция PHAssetCollection может выполнить переименование editOperation

  • Если операция редактирования возможна затем выполните PHAssetCollectionChangeRequest и установите новый заголовок.

Смежные вопросы