behan의 개인적인 기술 블로그

SwiftUI) List 마지막 줄에 닿았을 때 인식 방법 & 닿았을 때 메소드 호출 본문

iOS/SwiftUI

SwiftUI) List 마지막 줄에 닿았을 때 인식 방법 & 닿았을 때 메소드 호출

behan 2022. 1. 13. 22:01
반응형

api를 호출하여 그 정보를 List로 그릴 때,

스크롤을 내리다 마지막 줄에 닿았을 때 자동으로 다음 api 정보를 받아와 리스트 밑에 이어서 그려줄 때 사용할 만한 방법

 

 

struct Item: Codable, Identifiable {
	var id = UUID()
    var name: String
    var party: String
    var age: String
}

extension Item: Equatable {
	static func == (lhs: Self, rhs: Self) -> Bool {
    	return lhs.id == rhs.id
    }
}

위의 구조체로 된 Array를 List로 불러올 때 

Equatable 프로토콜을 추가해 lhs.id 와 rhs.id 같아질 때 리턴하도록 한다.

List( [Item] ) { item in
	ItemRowView(item)	// 리스트 한 줄 뷰
    	.onAppea {		// 리스트가 생성 될때 마다 실행
			if [Item].last == item {
        		// 여기에 다음 정보를 호출 할 수 있는 ViewModel의 함수 호출
		}
	}
}

 

참고 : https://www.youtube.com/watch?v=eccTBoSKOA8&list=PLgOlaPUIbynqyJHiTEv7CFaXd8g5jtogT&index=26

(영상 앞부분은 alamofire URLRequest참고, 뒷부분은 위 내용 참고)

반응형