본문 바로가기

Tech/iOS

[iOS] Day 2 - Storyboard 상에서 Button 활용

728x90

 

아침부터 아파트 제초하는 소리와 건조한 더위 날씨의 대환장 콜라보와

나의 iOS 공부의 열기가 합쳐져

너무 더웠지만 오늘도 달려보자

 

0704 Review

0704 구현한 배민 View

어제 구현한 베민 View다

다양한 시도를 했었는데 오늘 강의가 시작하고 역시나 다른 사람들도 이미지의 크기가 줄여지지 않아서 당황했나보다

Version 15가 된 후에 다양한 기능이 추가되어서 예전에 당황해서 StackOverFlow에 도움을 요청했었던 경험.. 역시 갓버플로우

 

어제 구현할 때 어떻게 구현을 해야할까? 했을 때 머리속에는

  1. UIImageView를 16개를 불러오고 UILabel 16개를 불러와서 하자(1개의 UIImageView와 1개의 UILabel 지정 한 후 15번의 Copy & Paste...
  2. 첫째 줄의 UIImageView와 UILabel 4개를 StackView로 지정해서 4번 반복 
  3. UIButton 과 UILabel을 구현해서 15번의 Copy & Paste...

 

1. 구현 했을 때 위의 View처럼 크기는 줄일 수 없었다

2. Layout 설정이 잘못되어 이미지는 제대로 정렬 됐으나  Label이 View 왼쪽 상단에 모이는 에러 발생

 

3. UIButton의 Image를 넣는 것은  build를 하기 전에 View 상에서는 문제가 없었으나 역시 build를 했을 때 button 자체의 tint 색깔인 파란색 이미지 형체만 띈채 구현 됐다.


 

UIImageView와 UILable을 하나의 View로 묶었다

 

UIImageView와 UILable을 드래그 하여 왼쪽 하단 Embed In 버튼을 통해 하나의 View로 묶었다

 

 

build한 후 시뮬레이터

어제 보다 이미지의 크기가 확실히 작아진 것이 보인다

 

추후 강의에서 UICollectionView, StackView를 배웠을 때 다시 돌아와서 구현해 볼 예정이다

 


 

버튼을 눌렀을 때 이미지뷰의 이미지가 랜덤으로 변경되도록 구현

 

 

0704에 구현한 영화 View

 

자주 보니 정이 간다

 

어떻게 접근해야할까?

 

1. 재생 버튼을 눌렀을 때 실행이 되어야 하니 재생 버튼과 연결하자

2. 재생 버튼을 눌렀을 때 실행이 될 View가 필요하니 어제 구현한 것 처럼 ViewController를 하나 더 생성하자

3. 이미지가 랜덤으로 변경되어야 하니까 UIImageView를 넣고 UIButton을 넣어서 누를 때 마다 변경되도록 하자

 


랜덤 이미지를 구현할 새로운 ViewController

 

Movie View에서 재생 버튼과 연결한 ViewController을 새로 만들었다

랜덤이미지를 구현하려면 스토리보드와 코드를 연결해야한다

새로운 파일 Second View Controller와 연결했다

SecondViewController와 연결

SecondViewController와 연결이 되어있는지 확인하자

Custom Class를 SecondViewController가 설정 되어 있는지 확인하자

\UIImageView를 우측 마우스를 누른채로 Drag하여 @IBOutlet 변수를 지정한다

UIImageView의 변수 posterImage

@IBOutlet을 선언 후 삭제 할 경우 코드 상에서는 삭제가 되지만 작업 후에 빌드를 할 경우  Crush가 발생한다

오류

여름이라 버그가 많은가..

대충 버그 잡느라 머리 아픔

Referencing Outlets의 연결이 끊어졌는지 꼭 확인하자

연결 확인

만약 변수의 이름을 변경하는 것을 원한다면 삭제가 아닌 변경을 택하자

 

변경할 변수명에서 오른쪽 클릭 후 Refactor -> Rename

UIImage에 대한 코드는 viewDidLoad 내에 입력하고 버튼의 Action 부분은 viewDidLoad 영역 밖에 위치하도록 하자

-> 유저의 Control에 따라 Action 해야 하므로

 

viewDidLoad 영역 밖에 UIButtond의 @IBAction위치

UIImage 랜덤에 대한 코드를 입력 후 빌드하면 된다

 

KakaoTalk_Video_2022-07-05-21-33-59.mp4
3.01MB

 

작동이 잘되는 것을 확인할 수 있다

내일 하루도 힘내보자!

 


추가

 

처음 MovieView의 재생버튼을 눌렀을 때 Image가 random으로 변경되도록 만들고 싶어서 추가로 만들어 보았다

 

새로운 ViewController 없이 Main에서 구현

 

KakaoTalk_Video_2022-07-05-21-52-49.mp4
1.88MB

문제 없이 구현된다 

코드로만 구현하는 방법을 생각해보며 자러 가야겠다

'Tech > iOS' 카테고리의 다른 글

[iOS] Day3 - 수업 정리  (0) 2022.07.07
[iOS] Day 3 - UITextField 활용  (0) 2022.07.06
[iOS] Day 2 - 수업 정리  (0) 2022.07.05
[iOS] Day 1 - 수업 정리  (0) 2022.07.04
[iOS] Day 1 - 스토리보드를 활용한 여러가지 화면 구현  (0) 2022.07.04