簡體   English   中英

我可以從iPhone中的照片中獲取圖像的名稱嗎?

[英]Can i get the name of image from the photos in iPhone

我正在使用圖像選擇器從iPhone設備中的圖庫中選擇圖像。 我必須使用庫中的同名保存這些圖像。 我不想在選擇圖像后將其命名為不同。 我在選擇圖像后嘗試打印信息字典。 它提供圖像,網址和路徑和類型..但如何獲得圖像的實際名稱任何想法。 以下是我在didFinish中獲得的內容

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{
NSLog(@"Selected image info: %@",info);

}

這打印

Selected image info : (
        {
        UIImagePickerControllerMediaType = "public.image";
        UIImagePickerControllerOriginalImage = "<UIImage: 0x617d390>";
        UIImagePickerControllerReferenceURL = "assets-library://asset/asset.JPG?id=1000000089&ext=JPG";
        }
)

我的問題是從上面得到實際名稱的任何方法。

使用AssetsLibrary框架,您可以從信息字典中獲取referenceURL並獲取資產。 像這樣的東西:

NSURL *assetURL = [info objectForKey:UIImagePickerControllerReferenceURL];

__block NSString *fileName = nil;

ALAssetsLibrary *library = [[[ALAssetsLibrary alloc] init] autorelease];
[library assetForURL:assetURL resultBlock:^(ALAsset *asset)  {
    fileName = asset.defaultRepresentation.fileName;
} failureBlock:nil];

從畫廊中挑選的圖像,沒有“名稱”。 您永遠不會為剛剛從相機捕獲的圖片指定名稱,即使您通過iTunes添加圖像,原始文件名也會被刪除並替換為iTunes理解用於同步的文件名。

這些文件名不適合程序員訪問,因為在將來的同步中它們可能被其他一些圖像替換。

一個很好的回合是將當前日期指定為文件名,同時保存為從圖庫中選取的圖像。 您可以將其保存在文檔或庫目錄中,並使用映射PList文件將圖像映射到其文件名。

或者,您也可以將唯一編號指定為文件名,並使用這些值訪問圖像。

雖然你提到你不想分配新的名字,但不幸的是,這是唯一的方法。

我不認為他們有名字。 我在我的應用程序中使用的是使用NSDate (當前日期)作為名稱保存它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM