페이지 컨트롤과 결합 된 스크롤보기에서 이미지를 자동 레이아웃하는 방법이 있습니까?

JPJerry5

이것은 나의 첫 번째 항목입니다. 나는 독일에서 앱 디자인을 처음 접했지만 여전히 내 문제를 이해할 수 있기를 바랍니다. Xcode 11과 Swift 5를 사용했습니다.

페이지 컨트롤과 스크롤보기를 사용하여 한 화면에서 이미지를 전환하고 있습니다. iPhone 11에서는 좋아 보이지만 iPhone 8에서는 이미지의 너비와 높이가 너무 커서 페이지 컨트롤이 두 번째 세그먼트에있을 때 첫 번째 이미지의 일부가 여전히 표시 될 수 있습니다. 두 번째 이미지와 세 번째 세그먼트에서도 마찬가지입니다. 이것은 문제를 잘 보여줍니다. 이미지를 화면 크기에 맞추는 방법이 있습니까?

이것은 내 코드입니다.

```
import UIKit

class ViewController: UIViewController, UIScrollViewDelegate {

@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var pageControl: UIPageControl!

    var Pages: [String] = ["Page1","Page2","Page3"]
    var frame = CGRect.zero


    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        pageControl.numberOfPages = Pages.count //
        setupScreens()
        scrollView.showsHorizontalScrollIndicator = false
        scrollView.showsVerticalScrollIndicator = false
        scrollView.isPagingEnabled = true
        scrollView.delegate = self
    }

    func setupScreens() {
        for index in 0..<Pages.count {
            // 1.
            frame.origin.x = scrollView.frame.size.width * CGFloat(index)
            frame.size = scrollView.frame.size

            // 2.
            let imageView = UIImageView(frame: frame)
            imageView.image = UIImage(named: Pages[index])
            self.scrollView.addSubview(imageView)        }

        // 3.
        scrollView.contentSize = CGSize(width: (scrollView.frame.size.width * CGFloat(Pages.count)), height: scrollView.frame.size.height)
        scrollView.delegate = self


    }

    func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
        let pageNumber = scrollView.contentOffset.x / scrollView.frame.size.width
        pageControl.currentPage = Int(pageNumber)
    }

}

```
사이판 나다 프

코드는 완전히 호출을 제외하고 잘 작동됩니다 setupScreens()에 방법을 viewDidLoad().

해당 메서드를 호출 viewDidLayoutSubviews하여 scrollView.

override func viewDidLayoutSubviews() {
          setupScreens()
}

여기 에서 데모 다운로드

여기에 이미지 설명 입력

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

행과 열 레이아웃간에 동적으로 이동하는 데 사용할 수있는 WPF 레이아웃 컨트롤이 있습니까?

분류에서Dev

자동 레이아웃이 일관된 결과를 생성하지 않는 이유는 무엇입니까?

분류에서Dev

테이블보기의 셀 내부에 자동 레이아웃 이미지. 올바른 레이아웃이지만 한 번만 아래로 스크롤하고 위로 이동합니까?

분류에서Dev

사용자 지정 레이아웃이있는 ListView에서 클릭 된보기를 확인하는 방법

분류에서Dev

제약 레이아웃에서 스크롤보기가 작동하지 않습니다.

분류에서Dev

Mac OS X는보기 컨트롤러와 함께 자동 레이아웃을 사용하고 창 크기 조정을 허용합니다.

분류에서Dev

페이지 A를 페이드 아웃하고 페이지 B를 페이드 인하는 방법은 무엇입니까? 자바 스크립트에서만

분류에서Dev

자동 레이아웃을 사용하여 컨트롤러에서 UIView를 이동하는 방법

분류에서Dev

동적으로로드 된 이미지로 목록보기를 스크롤하면 이미지 순서가 혼합됩니다.

분류에서Dev

자동 레이아웃 : UITableViewCell 내부에서 패널 확장과 관련된 경고를 해결하는 방법을 알 수 없습니다.

분류에서Dev

인터페이스 빌더를 사용하여 이미지 및 텍스트가있는 스크롤보기 레이아웃

분류에서Dev

Arduino 마이크로 컨트롤러가 서로 연결된 자체 핀을 감지 할 수 있습니까?

분류에서Dev

자동 레이아웃을 사용하는 버튼이있는 iOS 가로 스크롤보기

분류에서Dev

레이아웃이 큰 가로에서 Android 스크롤보기가 스크롤되지 않습니까?

분류에서Dev

"1, 2, 3"숫자와 결합 된 컨트롤이 작동하지 않음

분류에서Dev

가로 스크롤에서 자연 스크롤이 작동하지 않습니다.이 문제를 해결하는 방법은 무엇입니까?

분류에서Dev

특정 제약 조건이있는 스크롤 뷰에 이미지 표시 (자동 레이아웃 사용)

분류에서Dev

특정 제약 조건이있는 스크롤 뷰에 이미지 표시 (자동 레이아웃 사용)

분류에서Dev

부트 스트랩이있는 검색 결과 페이지의 Wordpress 사용자 정의 레이아웃

분류에서Dev

C # WinForms에서 컨트롤을 자동 너비 또는 자동 높이하는 방법이 있습니까?

분류에서Dev

새로 생성 된 컨트롤러 함수를 호출하면 404 오류 페이지로 이동합니다.

분류에서Dev

Razor 페이지의 페이지에 컨트롤러를 연결하는 방법

분류에서Dev

페이지 수준 스크롤과 같은 외부 작업에 대해 열면 각도 재질 자동 완성 컨트롤이 닫히지 않습니다.

분류에서Dev

Apple Watch에 내장 된 Workout 앱은 기본 테이블 행에서 페이지 기반 컨트롤러 세트로 어떻게 이동합니까?

분류에서Dev

두 개의 자식 레이아웃이있는 레이아웃에 스크롤바를 지정

분류에서Dev

Blazor 페이지의 기본 레이아웃과 통신 할 수있는 방법이 있습니까?

분류에서Dev

Three.js에서 객체에 연결된 컨트롤러 목록을 얻는 방법이 있습니까?

분류에서Dev

자바 스크립트 크기 컨트롤이 하위 페이지에서 작동하지 않음

분류에서Dev

애니메이션이있는 스크롤보기를 기반으로 사용자 지정 컨트롤을 만드는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    행과 열 레이아웃간에 동적으로 이동하는 데 사용할 수있는 WPF 레이아웃 컨트롤이 있습니까?

  2. 2

    자동 레이아웃이 일관된 결과를 생성하지 않는 이유는 무엇입니까?

  3. 3

    테이블보기의 셀 내부에 자동 레이아웃 이미지. 올바른 레이아웃이지만 한 번만 아래로 스크롤하고 위로 이동합니까?

  4. 4

    사용자 지정 레이아웃이있는 ListView에서 클릭 된보기를 확인하는 방법

  5. 5

    제약 레이아웃에서 스크롤보기가 작동하지 않습니다.

  6. 6

    Mac OS X는보기 컨트롤러와 함께 자동 레이아웃을 사용하고 창 크기 조정을 허용합니다.

  7. 7

    페이지 A를 페이드 아웃하고 페이지 B를 페이드 인하는 방법은 무엇입니까? 자바 스크립트에서만

  8. 8

    자동 레이아웃을 사용하여 컨트롤러에서 UIView를 이동하는 방법

  9. 9

    동적으로로드 된 이미지로 목록보기를 스크롤하면 이미지 순서가 혼합됩니다.

  10. 10

    자동 레이아웃 : UITableViewCell 내부에서 패널 확장과 관련된 경고를 해결하는 방법을 알 수 없습니다.

  11. 11

    인터페이스 빌더를 사용하여 이미지 및 텍스트가있는 스크롤보기 레이아웃

  12. 12

    Arduino 마이크로 컨트롤러가 서로 연결된 자체 핀을 감지 할 수 있습니까?

  13. 13

    자동 레이아웃을 사용하는 버튼이있는 iOS 가로 스크롤보기

  14. 14

    레이아웃이 큰 가로에서 Android 스크롤보기가 스크롤되지 않습니까?

  15. 15

    "1, 2, 3"숫자와 결합 된 컨트롤이 작동하지 않음

  16. 16

    가로 스크롤에서 자연 스크롤이 작동하지 않습니다.이 문제를 해결하는 방법은 무엇입니까?

  17. 17

    특정 제약 조건이있는 스크롤 뷰에 이미지 표시 (자동 레이아웃 사용)

  18. 18

    특정 제약 조건이있는 스크롤 뷰에 이미지 표시 (자동 레이아웃 사용)

  19. 19

    부트 스트랩이있는 검색 결과 페이지의 Wordpress 사용자 정의 레이아웃

  20. 20

    C # WinForms에서 컨트롤을 자동 너비 또는 자동 높이하는 방법이 있습니까?

  21. 21

    새로 생성 된 컨트롤러 함수를 호출하면 404 오류 페이지로 이동합니다.

  22. 22

    Razor 페이지의 페이지에 컨트롤러를 연결하는 방법

  23. 23

    페이지 수준 스크롤과 같은 외부 작업에 대해 열면 각도 재질 자동 완성 컨트롤이 닫히지 않습니다.

  24. 24

    Apple Watch에 내장 된 Workout 앱은 기본 테이블 행에서 페이지 기반 컨트롤러 세트로 어떻게 이동합니까?

  25. 25

    두 개의 자식 레이아웃이있는 레이아웃에 스크롤바를 지정

  26. 26

    Blazor 페이지의 기본 레이아웃과 통신 할 수있는 방법이 있습니까?

  27. 27

    Three.js에서 객체에 연결된 컨트롤러 목록을 얻는 방법이 있습니까?

  28. 28

    자바 스크립트 크기 컨트롤이 하위 페이지에서 작동하지 않음

  29. 29

    애니메이션이있는 스크롤보기를 기반으로 사용자 지정 컨트롤을 만드는 방법은 무엇입니까?

뜨겁다태그

보관