[iOS/UI] Swift ์จ๋ฒ ์ฌ์ง ๊ณ ๋ฅธ ๊ฐฏ์ ์ฐจ๋ก๋ก ๋ฒํธ ๋ถ์ฌํ๊ธฐ
์ฐ์ ๋๋ ์๋ ์นดํก ์ฌ์ง๊ณ ๋ฅด๊ธฐ์ ๊ฐ์ด ํญํ ์์๋๋ก ๋ฒํธ๊ฐ ๋ถ์ฌ๋๋ฉด์ ์ฌ์ง๋ฐฐ์ด์ ์ฌ์ง์ด ๋ค์ด๊ฐ๊ฒ ํ๊ณ
๋ค์ ํญํ ๊ฒฝ์ฐ ๋ฐฐ์ด์ ์ฌ์ง์ ์ญ์ ํด์ฃผ๊ณ ๊ทธ๋ณด๋ค ํฐ ๋ฒํธ๋ค์ ์ญ์ ํ ๊ฐฏ์๋งํผ ๋ฒํธ๊ฐ ์์์ ธ์ผํ๋ค.
์ฐ์ 2๊ฐ์ ๋ฐฐ์ด์ด ํ์ํ๋ฐ ํ๋๋ ์ฌ์ง์ ๋ด์ ๋ฐฐ์ด๊ณผ ํ๋๋ ๋ช ๋ฒ์งธ ์ธ๋ฑ์ค๊ฐ ์ ํ๋์๋์ง ๋ด์ ๋ฐฐ์ด์ด ํ์ํ๋ค.
1
2
|
var photos = [UIImage]()
var photoarray = [Int]()
|
๊ทธ ๋ค์ cellForItemAt์
ํฌํ ์ด๋ ์ด๊ฐ ๋น์ด์์ง์๋ค๋ฉด !photoarray.isEmpty{ for๋ฌธ์ ์ด์ฉํด photoarray์์ ์๋ ์ซ์๋ค์ ์ฐจ๋ก๋ก indexPath์ ๋น๊ตํด์ ๋ง๋ค๋ฉด ํด๋น ์ซ์๋ผ๋ฒจ(cell.number)๋ฅผ i๋ก ๋ฐ๊ฟ์ค๋ค. ๊ทธ๋ฌ๋ฉด photoarray์์ ์์๋๋ก ํ ์คํธ๊ฐ ํ์๋๋ค. ๊ทธ๋ฆฌ๊ณ cell.number.isHidden์ ํ์ด์ฃผ๋ฉด ์ซ์๊ฐ ๋ณด์ด๊ฒ ๋๋ค. borderWidth์ borderColor๋ ํด๋น ์ ์ ๋๋ ์ ๋ ํ ๋๋ฆฌ์ ์๊น๊ณผ ๋๊ป๋ฅผ ์ ํด์ค ๊ฒ์ด๋ค,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collection.dequeueReusableCell(withReuseIdentifier: "CustomPhotoCell", for: indexPath) as! CustomPhotoCell
cell.image.contentMode = .scaleAspectFill
if !photoarray.isEmpty{
cell.layer.borderColor = UIColor(displayP3Red: 162/255, green: 32/255, blue: 58/255, alpha: 1).cgColor
}
}
}
return cell
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
์ ์ ์ ํํ์ ๋ didSelectItemAt์
๋ง์ฝ ํด๋น ์ซ์๋ผ๋ฒจ์ด ์จ๊ฒจ์ ธ ์๋ค๋ฉด (๋๊ฐ์ ๊ฒฝ์ฐ๋ ์ต๋ 8๋๊น์ง ๊ณ ๋ฅผ ์ ์๊ฒ ํด๋จ๊ธฐ ๋๋ฌธ์ photos์์ ์๋ ์ฌ์ง์ด 8๊ฐ ๋ฏธ๋ง์ด๋ผ๋ฉด ๋ฃ์๋ค.) photoarray์ ํด๋น indexPath.item์ ๋ฃ์ด์ฃผ๊ณ photos์ ํด๋น image๋ฅผ ๋ฃ์ด์ค๋ค.
๊ทธ๋ ์ง ์๋ค๋ฉด
photos์์ ํด๋น cell์ด ์ด๋ค ์ซ์๊ฐ ์๋ ์ง ํ์ธํ๊ณ ๊ทธ ์ซ์์ ๋ง๊ฒ ์ญ์ ํด์ค๋ค. (photoarray๋ ๋ง์ฐฌ๊ฐ์ง)
1
2
3
4
5
6
7
8
9
10
11
12
|
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let cell = collection.cellForItem(at: indexPath) as! CustomPhotoCell
}
} else{
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
์์ ๊ฐ์ด ํญํ์ ๊ฒฝ์ฐ photoarray์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ฅ๋๊ณ ์ญ์ ๋๋ค.