Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
D
dz_TZImagePickerController
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shuijing
dz_TZImagePickerController
Commits
0272cd17
Commit
0272cd17
authored
Aug 23, 2016
by
banchichen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化拍照照片保存相册的判断,目前已知在8.0-8.0.2版本中,拍照照片会保存在最近添加
parent
1b52982a
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
31 additions
and
10 deletions
+31
-10
TZImagePickerController/Info.plist
TZImagePickerController/Info.plist
+1
-1
TZImagePickerController/TZImagePickerController/TZAssetCell.m
...agePickerController/TZImagePickerController/TZAssetCell.m
+6
-2
TZImagePickerController/TZImagePickerController/TZImageManager.h
...PickerController/TZImagePickerController/TZImageManager.h
+1
-0
TZImagePickerController/TZImagePickerController/TZImageManager.m
...PickerController/TZImagePickerController/TZImageManager.m
+20
-4
TZImagePickerController/TZImagePickerController/TZImagePickerController.h
...troller/TZImagePickerController/TZImagePickerController.h
+1
-1
TZImagePickerController/TZImagePickerController/TZImagePickerController.m
...troller/TZImagePickerController/TZImagePickerController.m
+1
-1
TZImagePickerController/TZImagePickerController/TZPhotoPickerController.m
...troller/TZImagePickerController/TZPhotoPickerController.m
+1
-1
No files found.
TZImagePickerController/Info.plist
View file @
0272cd17
...
...
@@ -15,7 +15,7 @@
<key>
CFBundlePackageType
</key>
<string>
APPL
</string>
<key>
CFBundleShortVersionString
</key>
<string>
1.6.
1
</string>
<string>
1.6.
2
</string>
<key>
CFBundleSignature
</key>
<string>
????
</string>
<key>
CFBundleVersion
</key>
...
...
TZImagePickerController/TZImagePickerController/TZAssetCell.m
View file @
0272cd17
...
...
@@ -71,8 +71,12 @@
-
(
void
)
setMaxImagesCount
:(
NSInteger
)
maxImagesCount
{
_maxImagesCount
=
maxImagesCount
;
self
.
selectPhotoButton
.
hidden
=
maxImagesCount
==
1
;
self
.
selectImageView
.
hidden
=
maxImagesCount
==
1
;
if
(
!
self
.
selectPhotoButton
.
hidden
)
{
self
.
selectPhotoButton
.
hidden
=
maxImagesCount
==
1
;
}
if
(
!
self
.
selectImageView
.
hidden
)
{
self
.
selectImageView
.
hidden
=
maxImagesCount
==
1
;
}
}
-
(
void
)
setType
:(
TZAssetCellType
)
type
{
...
...
TZImagePickerController/TZImagePickerController/TZImageManager.h
View file @
0272cd17
...
...
@@ -60,5 +60,6 @@
-
(
BOOL
)
isAssetsArray
:(
NSArray
*
)
assets
containAsset
:(
id
)
asset
;
-
(
NSString
*
)
getAssetIdentifier
:(
id
)
asset
;
-
(
BOOL
)
isCameraRollAlbum
:(
NSString
*
)
albumName
;
@end
TZImagePickerController/TZImagePickerController/TZImageManager.m
View file @
0272cd17
...
...
@@ -80,7 +80,7 @@ static CGFloat TZScreenScale;
option
.
sortDescriptors
=
@[[
NSSortDescriptor
sortDescriptorWithKey
:
@"modificationDate"
ascending
:
self
.
sortAscendingByModificationDate
]];
PHFetchResult
*
smartAlbums
=
[
PHAssetCollection
fetchAssetCollectionsWithType
:
PHAssetCollectionTypeSmartAlbum
subtype
:
PHAssetCollectionSubtypeAlbumRegular
options
:
nil
];
for
(
PHAssetCollection
*
collection
in
smartAlbums
)
{
if
([
collection
.
localizedTitle
isEqualToString
:
@"Camera Roll"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"相机胶卷"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"所有照片"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"All Photos"
])
{
if
([
self
isCameraRollAlbum
:
collection
.
localizedTitle
])
{
PHFetchResult
*
fetchResult
=
[
PHAsset
fetchAssetsInAssetCollection
:
collection
options
:
option
];
model
=
[
self
modelWithResult
:
fetchResult
name
:
collection
.
localizedTitle
];
if
(
completion
)
completion
(
model
);
...
...
@@ -94,7 +94,7 @@ static CGFloat TZScreenScale;
if
([
group
numberOfAssets
]
<
1
)
return
;
NSString
*
name
=
[
group
valueForProperty
:
ALAssetsGroupPropertyName
];
#pragma clang diagnostic pop
if
([
name
isEqualToString
:
@"Camera Roll"
]
||
[
name
isEqualToString
:
@"相机胶卷"
]
||
[
name
isEqualToString
:
@"所有照片"
]
||
[
name
isEqualToString
:
@"All Photos"
])
{
if
([
self
isCameraRollAlbum
:
name
])
{
model
=
[
self
modelWithResult
:
group
name
:
name
];
if
(
completion
)
completion
(
model
);
*
stop
=
YES
;
...
...
@@ -119,7 +119,7 @@ static CGFloat TZScreenScale;
PHFetchResult
*
fetchResult
=
[
PHAsset
fetchAssetsInAssetCollection
:
collection
options
:
option
];
if
(
fetchResult
.
count
<
1
)
continue
;
if
([
collection
.
localizedTitle
containsString
:
@"Deleted"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"最近删除"
])
continue
;
if
([
collection
.
localizedTitle
isEqualToString
:
@"Camera Roll"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"相机胶卷"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"所有照片"
]
||
[
collection
.
localizedTitle
isEqualToString
:
@"All Photos"
])
{
if
([
self
isCameraRollAlbum
:
collection
.
localizedTitle
])
{
[
albumArr
insertObject
:[
self
modelWithResult
:
fetchResult
name
:
collection
.
localizedTitle
]
atIndex
:
0
];
}
else
{
[
albumArr
addObject
:[
self
modelWithResult
:
fetchResult
name
:
collection
.
localizedTitle
]];
...
...
@@ -144,7 +144,7 @@ static CGFloat TZScreenScale;
if
([
group
numberOfAssets
]
<
1
)
return
;
NSString
*
name
=
[
group
valueForProperty
:
ALAssetsGroupPropertyName
];
#pragma clang diagnostic pop
if
([
name
isEqualToString
:
@"Camera Roll"
]
||
[
name
isEqualToString
:
@"相机胶卷"
]
||
[
name
isEqualToString
:
@"所有照片"
]
||
[
name
isEqualToString
:
@"All Photos"
])
{
if
([
self
isCameraRollAlbum
:
name
])
{
[
albumArr
insertObject
:[
self
modelWithResult
:
group
name
:
name
]
atIndex
:
0
];
}
else
if
([
name
isEqualToString
:
@"My Photo Stream"
]
||
[
name
isEqualToString
:
@"我的照片流"
])
{
if
(
albumArr
.
count
)
{
...
...
@@ -668,6 +668,22 @@ static CGFloat TZScreenScale;
}
}
-
(
BOOL
)
isCameraRollAlbum
:(
NSString
*
)
albumName
{
NSString
*
versionStr
=
[[
UIDevice
currentDevice
].
systemVersion
stringByReplacingOccurrencesOfString
:
@"."
withString
:
@""
];
if
(
versionStr
.
length
<=
1
)
{
versionStr
=
[
versionStr
stringByAppendingString
:
@"00"
];
}
else
if
(
versionStr
.
length
<=
2
)
{
versionStr
=
[
versionStr
stringByAppendingString
:
@"0"
];
}
CGFloat
version
=
versionStr
.
floatValue
;
// 目前已知8.0.0 - 8.0.2系统,拍照后的图片会保存在最近添加中
if
(
version
>=
800
&&
version
<=
802
)
{
return
[
albumName
isEqualToString
:
@"最近添加"
]
||
[
albumName
isEqualToString
:
@"Recently Added"
];
}
else
{
return
[
albumName
isEqualToString
:
@"Camera Roll"
]
||
[
albumName
isEqualToString
:
@"相机胶卷"
]
||
[
albumName
isEqualToString
:
@"所有照片"
]
||
[
albumName
isEqualToString
:
@"All Photos"
];
}
}
-
(
NSString
*
)
getAssetIdentifier
:(
id
)
asset
{
if
(
iOS8Later
)
{
PHAsset
*
phAsset
=
(
PHAsset
*
)
asset
;
...
...
TZImagePickerController/TZImagePickerController/TZImagePickerController.h
View file @
0272cd17
...
...
@@ -4,7 +4,7 @@
//
// Created by 谭真 on 15/12/24.
// Copyright © 2015年 谭真. All rights reserved.
// version 1.6.
1 - 2016.08.19
// version 1.6.
2 - 2016.08.23
/*
经过测试,比起xib的方式,把TZAssetCell改用纯代码的方式来写,滑动帧数明显提高了(约提高10帧左右)
...
...
TZImagePickerController/TZImagePickerController/TZImagePickerController.m
View file @
0272cd17
...
...
@@ -4,7 +4,7 @@
//
// Created by 谭真 on 15/12/24.
// Copyright © 2015年 谭真. All rights reserved.
// version 1.6.
1 - 2016.08.19
// version 1.6.
2 - 2016.08.23
#import "TZImagePickerController.h"
#import "TZPhotoPickerController.h"
...
...
TZImagePickerController/TZImagePickerController/TZPhotoPickerController.m
View file @
0272cd17
...
...
@@ -70,7 +70,7 @@ static CGSize AssetGridThumbnailSize;
self
.
view
.
backgroundColor
=
[
UIColor
whiteColor
];
self
.
navigationItem
.
title
=
_model
.
name
;
self
.
navigationItem
.
rightBarButtonItem
=
[[
UIBarButtonItem
alloc
]
initWithTitle
:[
NSBundle
tz_localizedStringForKey
:
@"Cancle"
]
style
:
UIBarButtonItemStylePlain
target
:
self
action
:
@selector
(
cancel
)];
_showTakePhotoBtn
=
(([
_model
.
name
isEqualToString
:
@"相机胶卷"
]
||
[
_model
.
name
isEqualToString
:
@"Camera Roll"
]
||
[
_model
.
name
isEqualToString
:
@"所有照片"
]
||
[
_model
.
name
isEqualToString
:
@"All Photos"
])
&&
tzImagePickerVc
.
allowTakePicture
);
_showTakePhotoBtn
=
(([
[
TZImageManager
manager
]
isCameraRollAlbum
:
_model
.
name
])
&&
tzImagePickerVc
.
allowTakePicture
);
if
(
!
tzImagePickerVc
.
sortAscendingByModificationDate
&&
_isFirstAppear
&&
iOS8Later
)
{
[[
TZImageManager
manager
]
getCameraRollAlbum
:
tzImagePickerVc
.
allowPickingVideo
allowPickingImage
:
tzImagePickerVc
.
allowPickingImage
completion
:^
(
TZAlbumModel
*
model
)
{
_model
=
model
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment