Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
PhoneManager
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Yang
PhoneManager
Commits
fe59c4f0
Commit
fe59c4f0
authored
Apr 03, 2025
by
CZ1004
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
项目位置
parent
1cc0c07d
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
293 additions
and
309 deletions
+293
-309
CompressQualityController.swift
...er/Class/Session/Compress/CompressQualityController.swift
+0
-170
CompressCompletedViewController.swift
...Compress/Controller/CompressCompletedViewController.swift
+2
-0
CompressController.swift
...lass/Session/Compress/Controller/CompressController.swift
+291
-0
CompressSelectCell.swift
...Class/Session/Compress/View/Cell/CompressSelectCell.swift
+0
-139
No files found.
PhoneManager/Class/Session/Compress/CompressQualityController.swift
deleted
100644 → 0
View file @
1cc0c07d
//
// CompressQualityController.swift
// PhoneManager
//
// Created by edy on 2025/4/2.
//
import
Foundation
class
CompressQualityController
:
BaseViewController
{
var
model
:
ResourceModel
?
{
didSet
{
let
image
=
PhotoAndVideoMananger
.
mananger
.
getImageFromAssetID
(
id
:
model
!.
ident
)
self
.
imageView
.
image
=
image
}
}
private
var
compressNav
:
CompressNavView
?
lazy
var
imageView
:
UIImageView
=
{
let
imageView
=
UIImageView
()
imageView
.
clipsToBounds
=
true
imageView
.
layer
.
cornerRadius
=
12
imageView
.
backgroundColor
=
.
clear
return
imageView
}()
lazy
var
tipLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
"Select photo quality after compression"
label
.
textAlignment
=
.
left
label
.
font
=
UIFont
.
systemFont
(
ofSize
:
16
,
weight
:
.
bold
)
label
.
backgroundColor
=
.
clear
return
label
}()
lazy
var
detailTiplabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
"You've selected 2 out of 253 photos to compress."
label
.
textAlignment
=
.
left
label
.
font
=
UIFont
.
systemFont
(
ofSize
:
12
,
weight
:
.
regular
)
label
.
backgroundColor
=
.
clear
return
label
}()
lazy
var
lowQualityView
:
QualityView
=
{
let
view
=
QualityView
()
view
.
selectedImageView
.
image
=
UIImage
(
named
:
"ic_unsel_com"
)
return
view
}()
lazy
var
mediumQualityView
:
QualityView
=
{
let
view
=
QualityView
()
view
.
tipLabel
.
text
=
"Medium quality"
view
.
detailTiplabel
.
text
=
"Compress up to 50% of the size"
return
view
}()
lazy
var
highQualityView
:
QualityView
=
{
let
view
=
QualityView
()
view
.
tipLabel
.
text
=
"High quality"
view
.
detailTiplabel
.
text
=
"Compress up to 20% of the size"
return
view
}()
lazy
var
submitButton
:
UIButton
=
{
let
view
=
UIButton
()
view
.
setTitle
(
"Compress"
,
for
:
UIControl
.
State
.
normal
)
view
.
setTitleColor
(
UIColor
(
red
:
1
,
green
:
1
,
blue
:
1
,
alpha
:
1
),
for
:
.
normal
)
view
.
clipsToBounds
=
true
view
.
layer
.
cornerRadius
=
23
view
.
backgroundColor
=
UIColor
(
red
:
0
,
green
:
0.51
,
blue
:
1
,
alpha
:
1
)
view
.
addTarget
(
self
,
action
:
#selector(
submitAction
)
,
for
:
.
touchUpInside
)
return
view
}()
func
setUI
(){
compressNav
=
CompressNavView
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
self
.
view
.
width
,
height
:
statusBarHeight
+
44
))
self
.
view
.
addSubview
(
compressNav
!
)
compressNav
?
.
snp
.
makeConstraints
({
make
in
make
.
top
.
centerX
.
width
.
equalToSuperview
()
make
.
height
.
equalTo
(
statusBarHeight
+
44
)
})
self
.
view
.
addSubview
(
self
.
imageView
)
self
.
view
.
addSubview
(
self
.
tipLabel
)
self
.
view
.
addSubview
(
self
.
detailTiplabel
)
self
.
view
.
addSubview
(
self
.
lowQualityView
)
self
.
view
.
addSubview
(
self
.
mediumQualityView
)
self
.
view
.
addSubview
(
self
.
highQualityView
)
self
.
view
.
addSubview
(
self
.
submitButton
)
self
.
imageView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
compressNav
!.
height
+
20
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
259
)
}
self
.
tipLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
imageView
.
snp
.
bottom
)
.
offset
(
28
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
22
)
}
self
.
detailTiplabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
tipLabel
.
snp
.
bottom
)
.
offset
(
4
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
17
)
}
self
.
lowQualityView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
detailTiplabel
.
snp
.
bottom
)
.
offset
(
16
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
61
)
}
self
.
mediumQualityView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
lowQualityView
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
61
)
}
self
.
highQualityView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
mediumQualityView
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
61
)
}
self
.
submitButton
.
snp
.
makeConstraints
{
make
in
make
.
bottom
.
equalTo
(
-
40
)
make
.
left
.
equalToSuperview
()
.
offset
(
15
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
15
)
make
.
height
.
equalTo
(
46
)
}
}
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
view
.
backgroundColor
=
.
white
self
.
navigationController
?
.
navigationBar
.
isHidden
=
true
setUI
()
}
@objc
func
submitAction
(){
let
compressingView
:
CompressingView
=
CompressingView
(
frame
:
self
.
view
.
bounds
)
self
.
view
.
addSubview
(
compressingView
)
let
queue
=
DispatchQueue
.
global
()
let
delayTime
=
DispatchTime
.
now
()
+
3.0
queue
.
asyncAfter
(
deadline
:
delayTime
)
{
DispatchQueue
.
main
.
async
{
compressingView
.
removeFromSuperview
()
let
vc
=
CompressCompletedViewController
()
self
.
navigationController
?
.
pushViewController
(
vc
,
animated
:
true
)
}
}
}
}
PhoneManager/Class/Session/Compress/CompressCompletedViewController.swift
→
PhoneManager/Class/Session/Compress/Co
ntroller/Co
mpressCompletedViewController.swift
View file @
fe59c4f0
...
...
@@ -9,6 +9,8 @@ import Foundation
class
CompressCompletedViewController
:
BaseViewController
{
var
model
:
[
ResourceModel
]?
lazy
var
imageView
:
UIImageView
=
{
let
imageView
=
UIImageView
()
imageView
.
clipsToBounds
=
true
...
...
PhoneManager/Class/Session/Compress/Controller/CompressController.swift
0 → 100644
View file @
fe59c4f0
This diff is collapsed.
Click to expand it.
PhoneManager/Class/Session/Compress/View/Cell/CompressSelectCell.swift
deleted
100644 → 0
View file @
1cc0c07d
//
// CompressSelectCell.swift
// PhoneManager
//
// Created by edy on 2025/4/2.
//
import
Foundation
typealias
CompressSelectCellCallback
=
(
ResourceModel
,
Bool
)
->
Void
class
CompressSelectCell
:
UICollectionViewCell
{
var
callBack
:
CompressSelectCellCallback
=
{
model
,
choose
in
}
var
model
:
ResourceModel
?
{
didSet
{
guard
let
model
=
self
.
model
else
{
return
}
let
image
=
PhotoAndVideoMananger
.
mananger
.
getImageFromAssetID
(
id
:
model
.
ident
)
self
.
backImageView
.
image
=
image
self
.
saveSizeLabel
.
text
=
String
(
format
:
"Save %.2f MB"
,
Double
(
model
.
saveSize
)
/
1024.0
)
}
}
var
choose
:
Bool
=
false
{
didSet
{
}
}
lazy
var
backImageView
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
isUserInteractionEnabled
=
true
view
.
contentMode
=
.
scaleAspectFill
view
.
clipsToBounds
=
true
view
.
layer
.
masksToBounds
=
true
view
.
layer
.
cornerRadius
=
12
return
view
}()
lazy
var
saveSizeView
:
UIView
=
{
let
view
=
UIView
()
view
.
layer
.
masksToBounds
=
true
view
.
layer
.
cornerRadius
=
4
view
.
backgroundColor
=
UIColor
(
red
:
0
,
green
:
0.51
,
blue
:
1
,
alpha
:
1
)
return
view
}()
lazy
var
saveSizeLabel
:
UILabel
=
{
let
view
=
UILabel
()
view
.
textAlignment
=
.
left
view
.
textColor
=
UIColor
(
red
:
1
,
green
:
1
,
blue
:
1
,
alpha
:
1
)
view
.
font
=
UIFont
.
systemFont
(
ofSize
:
12
,
weight
:
.
regular
)
view
.
text
=
"Save 1.3MB"
return
view
}()
lazy
var
moreImageView
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"icon_left_setting_grey"
)
view
.
backgroundColor
=
.
clear
return
view
}()
lazy
var
selectImageView
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"ic_sel_com"
)
view
.
backgroundColor
=
.
clear
view
.
isUserInteractionEnabled
=
true
let
tap
=
UITapGestureRecognizer
()
tap
.
addTarget
(
self
,
action
:
#selector(
selectClick
)
)
view
.
addGestureRecognizer
(
tap
)
return
view
}()
@objc
func
selectClick
(){
self
.
choose
=
!
self
.
choose
if
choose
{
self
.
selectImageView
.
image
=
UIImage
(
named
:
"ic_unsel_com"
)
}
else
{
self
.
selectImageView
.
image
=
UIImage
(
named
:
"ic_sel_com"
)
}
callBack
(
self
.
model
!
,
self
.
choose
)
}
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
self
.
addSubview
(
self
.
backImageView
)
self
.
addSubview
(
self
.
saveSizeView
)
self
.
saveSizeView
.
addSubview
(
self
.
saveSizeLabel
)
self
.
saveSizeView
.
addSubview
(
self
.
moreImageView
)
self
.
addSubview
(
self
.
selectImageView
)
self
.
backImageView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
right
.
height
.
width
.
equalToSuperview
()
}
self
.
saveSizeView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
12
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
12
)
make
.
height
.
equalTo
(
48
)
make
.
width
.
equalTo
(
120
)
}
self
.
saveSizeLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
8
)
make
.
centerY
.
equalToSuperview
()
make
.
height
.
equalTo
(
48
)
make
.
width
.
equalTo
(
120
)
}
self
.
moreImageView
.
snp
.
makeConstraints
{
make
in
make
.
right
.
equalToSuperview
()
.
offset
(
-
4
)
make
.
centerY
.
equalToSuperview
()
make
.
height
.
width
.
equalTo
(
16
)
}
self
.
selectImageView
.
snp
.
makeConstraints
{
make
in
make
.
bottom
.
right
.
equalToSuperview
()
.
offset
(
-
12
)
make
.
height
.
width
.
equalTo
(
24
)
}
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
}
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