UILabel sizeToFit() : <https://stackoverflow.com/questions/41005172/dynamically-adjust-width-of-uilabel-in-swift-3>
일단 uilabel의 크기 변화는 성공했다.
근데 uiviewtable에서 셀의 크기 변화에 실패했다.
uiviewtable셀의 높이 설정 방법이 몇가지 있던데 , 동적으로 설정하는 방법 있고, 정적으로가 있는데 주로 estimate 즉 어림치를 미리 설정해 놓고 정적으로 설정하는 편인거 같다. 왜냐하면 동적으로 방법이 두갠가 본거 같은데, 한개는 셀마다 설정값에 따라 정하는 것이고, 다른건 자동 제한인데, 이게 일일이 계산하다 보니 연산량이 많아진다고 카더라; 복잡하네;
<https://stackoverflow.com/questions/51498165/how-to-change-height-of-uitableview-cell-in-swift>
동적으로 해보려다 실패해서 , 여기서 말대로 정적으로 그냥 해봤다. 사실 정적으로도 인스펙터에서 하는 방법이랑, 코드에서 하는 방법이 둘다 있는데, 인스펙터에서 도저히 안되서 그냥 포기하는 심정으로 아래 코드를 넣는데 되었다. ㅋㅋ
//why only this worked?
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat
{
return 120 //or whatever you need
}
이렇게 해주니 셀의 높이가 조절되었다.
이건 원격 url에서 data로 가져와서 이미지로 변환해서 대입하는건데 일단 잘 안된다.
<https://www.hackingwithswift.com/example-code/uikit/how-to-load-a-remote-image-url-into-uiimageview>
근데 지금 이것도 안된다. <https://baked-corn.tistory.com/124>
이렇게 이미지뷰가 잘린다. ;;
이제 다시 img를 가져와 보자.
아래 처럼 코드를 실행했는데, data to img부터 출력이 안된다.
extension UIImageView{
func load(url : URL){
DispatchQueue.global().async { [weak self] in
if let data = try? Data(contentsOf: url) {
print("got img data")
if let image = UIImage(data: data){
print("data to img")
DispatchQueue.main.async{
self?.image = image
print("image set in uiview")
}
}else{
print("UIImage not working")
}
}
}
}
}
info.plist에 추가 설정하고 <https://tom7930.tistory.com/39> 이거 보고 생각남 찾다가 .
<https://github.com/rubenbaca/cs193p_iOS11/blob/master/PlayingCard/PlayingCard/Assets.xcassets/J%E2%99%A6%EF%B8%8F.imageset/jack.jpg?raw=true> 이 주소는 깃헙에 이미지에서 가져온건데 처음에 ?raw=true를 빼고 적어서 안되었는데 이제 된다. 위 코드는 이상없는 걸로ㅋㅋ
'ios개발 > 프로젝트' 카테고리의 다른 글
<스위프트 프로젝트> xcode 앱 런치할때 시작 스토리보드 설정하기 (0) | 2020.03.08 |
---|---|
<스위프트 프로젝트> 스토리보드 여러개 만들기, 로딩 화면 구현해 보자. (0) | 2020.03.08 |
<스위프트 프로젝트> 커스텀 뷰 만들기! (0) | 2020.03.07 |
<스위프트 프로젝트> json parsing!!, swift5 쉽게 파싱하는 방법 , quicktype (0) | 2020.03.06 |
<스위프트 프로젝트> 뷰 컨트롤러에 테이블 뷰를 띄워 보자! (0) | 2020.03.06 |