시작 화면 스토리보드가 이미지를 표시하지 않음
Launch Screen.storyboard 파일에서 시작 화면으로 표시할 이미지를 가져오려고 하지만 이미지가 표시되지 않습니다.레이블은 잘 표시되지만 이미지는 표시되지 않습니다.
Launch Screen.storyboard 파일의 실행 화면은 다음과 같습니다.
하지만 시뮬레이터와 물리적 장치에서 앱을 실행하면 다음과 같이 표시됩니다.
보시다시피 "테스트" 레이블은 정상적으로 표시되지만 이미지는 표시되지 않습니다.저는 왜 이런 일이 일어나는지 정말 확신할 수 없고 제가 시도하는 것은 아무것도 효과가 없는 것 같습니다.이 문제를 해결하는 방법에 대한 아이디어가 있는 사람이 있다면 매우 감사하겠습니다.
Xcode를 다시 시작한 후 빌드를 청소하고 이 문제에 대한 SO의 다른 제안을 몇 가지 정리합니다.실제로 문제를 해결한 것은 장치의 하드 재부팅이었습니다.(저는 이것에 한 시간 이상을 낭비했습니다)
저는 그것이 단지 당신이 그것을 껐다 다시 켰다는 옛말이 최신 기기들에 여전히 사실이라는 것을 보여준다고 생각합니다!
iPhone XS 또는 iPhone XS Max 재부팅 방법
- Volume Up 버튼을 빠르게 눌렀다 놓습니다.
- Volume Down 버튼을 빠르게 눌렀다 놓습니다.
- Apple 로고가 나타날 때까지 사이드 버튼을 길게 누릅니다.
저도 몇 시간 동안 이것을 가지고 놀고 있었습니다.하지만 저는 지금 해결책을 찾았습니다.끌어서 놓기를 통해 이미지를 프로젝트에 추가하고 assets.xcassets에도 추가해야 합니다.
동일한 문제가 발생하여 "빌드 단계 -> 번들 리소스 복사"에 이미지를 추가하여 수정했습니다.
다음 단계를 따릅니다.
- 장치에서 응용 프로그램 제거
- 장치 다시 시작
- 다시 빌드
작동하지 않는 경우 파생 데이터를 삭제합니다.Xcode 기본 설정 -> 위치 탭 -> 파생 데이터그런 다음 위의 단계를 수행합니다.
매우 답답합니다.최종적으로 작동한 솔루션:
장치의 하드 재부팅 수행
앱 삭제
Xcode에서 앱 설치
그 일은 저에게 일어났고 저를 미치게 합니다. 제가 그것을 알아낼 때까지 몇 분을 허비하게 하는 것을 넘어서요.
그래서, 전에 말했듯이:
- 원하는 이미지를 Xcode 프로젝트로 가져오기(끌어서 놓기만 하면 됨)
- 구속조건 및 선형 변경
- 자동 레이아웃 문제를 해결하는 프레임 업데이트
- 속성 검사기 탭 메뉴(일반적으로 오른쪽 코너 메뉴 xCode)에서 이미지 보기 > 이미지에서 이미지 확장(.png 또는 .jpg)을 제거하는 것이 요령입니다.
디자인 화면에는 표시되지 않지만 앱을 실행하면 표시됩니다.
도움이 되길 바랍니다!
마침내, 전화기를 다시 시작하는 것이 나에게 효과가 있습니다!!
저는 이 문제에 대해 몇 시간을 보냈습니다.이미지 이름을 변경하고, 전체 이미지 자산을 삭제하고, info.plist를 수정하고, Xcode를 다시 시작하고, 이미지의 모든 속성을 설정하려고 시도했습니다(내가 얼마나 절박했는지 알 수 있습니다).
많은 시간을 투자한 끝에 해결책을 얻었습니다.
Step 1:- Quit Xcode
Step 2:- Delete the app from device/simulator
Step 3:- Restart your device (if you are using simulator then you have to quit simulator)
Step 4:- Clear all derived data
Step 5:- Clear Bin
Step 6:- Open Xcode and relaunch the app, it will work
저도 같은 문제에 직면했습니다.
- 새 이미지 세트를 XcodeAsset에 추가합니다.
- 이미지 세트에 이미지를 추가합니다.
- 이미지 보기를 추가하여 화면을 시작하고 이미지 세트를 이미지로 설정합니다.
- Imageview의 특성 검사기에서 '그래픽 컨텍스트 지우기' 선택을 취소합니다.
- 빌드 폴더를 정리하고 다시 실행합니다.
이 문제는 수정하기 위한 Assets.xcassets와 관련이 있습니다. 이미지를 리소스로 추가해야 하지만 xcassets 폴더에는 추가하지 않고 정상적으로 작동해야 합니다.
저의 경우 시뮬레이터의 콘텐츠와 설정을 재설정하여 문제를 해결했습니다.
여러 StackOverflow 스레드에서 모든 작업을 시도한 결과, 다음과 같은 이점이 있었습니다.
- .png 사용
- 자산 카탈로그에 포함하지 마십시오.원본 파일을 추가할 때와 마찬가지로 프로젝트의 계층에 직접 추가합니다.
- 이미지 보기에서 확장자를 포함한 이미지를 로드합니다.예: launch_app_image.png
(업데이트를 위해 제품 또는 파생 데이터를 정리해야 할 수도 있지만 그럴 필요가 없었습니다.)
xCode의 리소스 캐싱에 문제가 있는 것 같습니다.동일한 문제가 발생하여 xCode를 다시 시작했고 그 이후에는 모든 것이 정상적으로 작동합니다.
장치를 다시 시작하고 x-code 파생 데이터 지우기
이미지를 일반 파일로 가져오는 것이 효과가 있었습니다.자산 카탈로그에서 이미지를 추가하지 마십시오!
프로젝트에 이미지를 추가하고 장치를 다운시킨 후 문제가 해결되었습니다.
스플래시 화면의 배경 이미지를 변경하는 중이었는데 새 이미지가 표시되지 않았습니다(기본 프로젝트 대응).
다른 사람들의 답변을 따릅니다.
저는 아래의 모든 것을 했고 그것은 고쳐졌습니다.
- 깔끔한 체격.
- 시뮬레이터에서 앱 제거
- 시뮬레이터 종료
- XCode 다시 시작
- 앱 다시 실행
, 할 수 저는 음, 현, 재를 무시했습니다.@1x
를 지미이로 합니다.Assets.xcassets
.
저의 경우 앱을 실행할 때 보이지 않는 스플래시 화면에 앱 로고가 있습니다.
너무 많은 시간을 낭비한 후에 나는 단지 내가 제공했다는 것을 알게 되었습니다.@2x
그리고.@3x
해당 로고 이미지에 대한 이미지.
는 이문는다추해다니를 추가하여 되었습니다.
@1x
해당 이미지의 버전입니다.
저의 경우, 스플래시 화면은 시뮬레이터와 다른 장치에 대해 작동했지만, 특정 장치에 대해서는 작동하지 않았습니다.이것은 xcode(v10 및 iPhone 7 v12.1)에 의해 보관된 일부 캐싱 데이터라고 믿게 만들었습니다.
다음 위치에서 파생 데이터를 삭제했습니다.~/Library/Developer/Xcode/DerivedData/
폴더 내용만 비우고 폴더는 삭제하지 않습니다.그리고 나서 mac과 iPhone을 재부팅하고 프로젝트를 청소하고 다시 구축했는데, 지금 나타나고 있습니다.
이 모든 것이 필요한 것인지는 모르겠지만, 더 이상 시간을 낭비하고 싶지 않았기 때문에 위의 sledgehammer 접근법이 저에게 효과가 있었습니다.그러나 물론 항상 사용자의 특정 상황에 따라 다릅니다. 장치별로 다릅니다. 다른 사용자의 경우 실제 이미지 또는 시작 화면 레이아웃 등일 수 있습니다.
사실, 일부 헤비급 이미지의 경우, 이미지를 추가하는 것은 좋은 상황이 아닙니다.images.xcassets
앱이 로드되기 입니다.images.xcassets
시작 전의 경량 이미지.로드의 첫 번째 루트에 스플래시 화면 이미지를 넣었더니 문제가 사라졌습니다.
- 프로젝트 루트에 새 그룹 만들기
- 노란색 그룹 폴더 안에 이미지를 끌어다 놓기
- 다른 특수 이름으로 이름 바꾸기
- 너의 것으로 돌아가기
xib
(또는 스토리보드) ImageView를 파일로 저장하고 3단계에 있는 특수 이름으로 지정합니다. - 청소하고 다시 빌드하면 이미지를 볼 수 있습니다.
힌트: 에서 이미지 세트를 만들 수 있습니다.images.xcassets
프로젝트의 루트에 배치합니다.
이미지의 파일 이름이 마지막에 .png 또는 .jpg와 같은 형식인지 확인해야 합니다. 그렇지 않으면 작동하지 않습니다.또한 이미지를 추가하기 전에 이미지 파일이 프로젝트 내의 "Assets.xcassets" 폴더에 있는지 확인해야 합니다.이 작업은 드래그 앤 드롭만으로 수행할 수 있습니다.또한 이미지를 스토리보드에 추가한 경우 왼쪽 위에 있는 이미지 이름도 실제 이미지 파일 이름과 일치하는지 확인합니다.저도 제약에 대해 알아보겠습니다.이게 도움이 되길 바랍니다.앱에 행운을 빕니다.
저는 이것으로 많은 것들을 시도했습니다. (이 스레드 하나만으로도 백만 개의 아이디어가 있고 그 중 절반이 상충되는 것 같습니다.)저에게 문제는 기기와 Xcode를 다시 시작할 때 앱의 몇 세션 동안 이미지가 표시되고 중지된다는 것이었습니다(이유는 모르겠지만 와우 짜증났습니다).
수 많은 시간이 흐른 후, 저는 이 스레드에서 A.G.의 답이 정확하다는 것을 발견했습니다.한 가지 제가 잘못한 것은 xcassets 내에서 새로운 이미지 세트를 만들었지만, 그때도 이미지 세트의 이름을 사용하는 대신 스토리보드 내부의 UIImageView 내에서 이미지 이름을 사용하고 있었다는 것입니다.
명확히 하기 위해 새 이미지 세트를 만들고 "Launch-Defaults"와 같은 이름을 붙인 다음 이미지를 추가합니다.그런 다음 스토리보드의 UI ImageView 내에서 "Launch-Default" 이미지(이미지 세트이므로 확장자가 없으므로 확장자는 포함되지 않음)를 사용합니다.
이 모든 작업을 수행하면 실제로 이미지가 스토리보드 내부에 올바르게 표시됩니다.확장자(.jpg 또는 .png)를 사용하지 않으면 이미지가 공백으로 표시된다고 말하는 사람도 있지만, 이미지 세트의 이름을 사용하지 않기 때문인 것 같습니다..png 또는 .jpg와 같은 확장자를 사용해야 한다고 말하는 사람도 있지만, 핵심은 xcassets 내부에 이미지 세트를 만든 다음 스토리보드 내부에 해당 이미지 세트를 사용하는 것입니다.올바르게 완료되면 이미지가 표시되지 않거나 실행 화면이 일부 시간 동안만 작동하는 것과 같은 흠집이 없어야 합니다(재부팅 필요).
이 질문에 $0.02를 추가하기 위해 JPG/JPEG 이미지 대신 PNG 이미지를 사용하여 이 문제를 해결했습니다.
이미지를 PNG로 변환하고 크기를 조금 줄이기 위해 크런치를 한 후 모든 것이 잘 작동했습니다.
나의 문제.
이유: Xcode로 드래그한 후 이미지 이름을 변경했습니다.솔루션:Xcode로 끌어다 놓은 후 이미지 이름을 바꾸지 않습니다.Xcode를 이해하는 데 문제가 발생합니다.Xcode로 드래그/추가하기 전에 이미지 이름을 변경합니다.
도움이 되길 바랍니다!
저는 마침내 제 실수를 깨닫기 전에 이 문제에 대해 몇 시간을 보냈습니다.UIImageView에 이미지를 추가하면 이미지의 이름만 사용됩니다.이미지가 스토리보드와 다른 폴더에 있으면 xcode로 표시되지만 앱을 실행할 때는 표시되지 않습니다.적절한 파일 경로 접두사(예: images/image.png)를 추가해야 합니다.이제 xcode에서는 파란색 물음표로 표시되지만 앱에서는 작동합니다.
저도 같은 문제에 직면했습니다.다른 해결책을 시도했지만 도움이 되지 않았습니다.그리고 나서 나는 앱을 기기에 직접 설치하고 앱이 여전히 xcode에 연결되어 있을 때만 이미지가 보이지 않는다는 것을 깨달았습니다.연결을 끊고 앱을 열면 이미지가 예상대로 표시됩니다.xcode 버그일 수 있습니다.
프로젝트를 청소하고, png를 제거하고, 구속조건을 제거하는 것은 나에게 효과가 없었습니다.
이미지를 하나 더 만들고 복사본의 이름을 바꾼 다음 이전 이미지를 삭제하고 새 이미지(이름이 변경된 동일)를 추가했습니다. 방금 이미지를 줬더니 효과가 있었습니다.
또한 폴더의 이미지를 사용하여 Assets.xcassets를 사용하지 않습니다.
저의 첫 번째 실수는 일반 .storyboard를 만들고 이름을 바꾸고 프로젝트 설정에서 실행 화면으로 정의한 것입니다.저는 이 경우에 이미지 문제가 있었습니다.이 경우 일부 설정이 누락된 것 같아서 file->new를 통해 새 파일을 만들고 "Launch Screen"을 직접 선택하여 작동했습니다.
또한 어떤 이유에서인지 실행 화면에서 레이아웃 제약 조건이 지원되지 않는다는 점도 염두에 두었습니다.처음에는 그랬을지 모르지만, 이제는 제약이 작용해야 합니다.
아마 이것은 누구에게나 도움이 될 것입니다.
제 경우에는 단순히 기기를 재부팅하는 것 이상의 효과가 있었습니다.출시 이미지가 다른 자산(기타 포드)에 저장되었습니다.
이미지를 앱 프로젝트의 자산으로 이동해야 했습니다.그리고 나서 내 장치를 재부팅했습니다.(시뮬레이터를 먼저 확인하십시오. 작동할 것입니다.)효과가 있었습니다.
이미지는 png/pdf 형식이거나 단일 스케일이거나 상관 없습니다.
아래 참조 덕분에 동일한 문제를 해결할 수 있습니다.
https://developer.apple.com/forums/thread/19759?answerId=75438022#75438022
이미지 보기를 위해 이미지를 선택하는 동안 이미지 이름을 변경하고 확장자를 제거할 필요는 없지만, 루트 폴더에 이미지를 직접 넣는 것은 좋지 않을 것 같아서 리소스라는 이름의 폴더 하나를 만들고 그 폴더 안에 이미지를 추가했습니다.
이것이 도움이 되길 바랍니다.
행복한 디버깅!
언급URL : https://stackoverflow.com/questions/36669325/launch-screen-storyboard-not-displaying-image
'sourcecode' 카테고리의 다른 글
일반인 용어로 JSONP가 무엇인지 설명할 수 있는 사람이 있습니까? (0) | 2023.05.13 |
---|---|
Thread에서 ThreadStart 메서드에 매개 변수를 전달하는 방법은 무엇입니까? (0) | 2023.05.08 |
SDK iOS 8.0의 제품 유형 Unit Test Bundle에 대한 코드 서명 필요 (0) | 2023.05.08 |
여러 열에서 DISTINCT를 선택하려면 어떻게 해야 합니까? (0) | 2023.05.08 |
Vb를 사용하여 프로세스를 종료하려면 어떻게 해야 합니까?NET 또는 C#? (0) | 2023.05.08 |