iOS TextField에 Inset 주는 방법

|

개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.


TextField에 Inset 주는 방법

UITextField 에 대한 Extension을 만들어줍니다.
저는 텍스트필드의 왼쪽 영역에 inset을 줘 볼 예정입니다.

import Foundation
import UIKit

extension UITextField {
    func addLeftPadding() {
        // width값에 원하는 padding 값을 넣어줍니다. 
        let paddingView = UIView(frame: CGRect(x: 0, y: 0, width: 주고싶은 만큼 주세요, height: self.frame.height))
        self.leftView = paddingView
        self.leftViewMode = ViewMode.always
    }
}

텍스트 필드를 직접 쓰는 뷰컨으로 돌아와 해당 메소드를 적용해줍니다.

func setTextFieldUI() {
    self.textField.addLeftPadding()
}

iOS TextField의 Clear Button 이미지 변경하는 방법

|

개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.


TextField의 Clear Button 이미지 변경하는 방법

// 클리어 버튼 이미지 변경하는 코드
if let clearButton = textField.value(forKeyPath: "_clearButton") as? UIButton {
    clearButton.setImage(UIImage(named: "변경하고 싶은 이미지"), for: .normal)
}

// 텍스트필드에 글자를 쓰고 있을때 클리어 버튼이 나타나도록 한다
self.textField.clearButtonMode = UITextField.ViewMode.whileEditing

iOS xcode multiple commands produce 해결방법

|

개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.


xcode multiple commands produce

프로젝트의 파일명 중에 중복으로 들어갔을 때 이 에러를 마주할 수 있다.
대부분 중복으로 들어가거나 파일에 무언가 문제가 있을때 발생한다.

해결방법은 아래와 같다.

Project Target > Build Phases > Copy Bundle Resources 에서 오류난 파일을 (-) 삭제해주면 된다.

이 방법으로도 해결이 안된다면 DerivedData 파일을 삭제해보자.

iOS Unable to process request - PLA Update available 해결방법

|

개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.


Unable to process request - PLA Update available

App Store Connect를 들어가 프로그램 라이선스 동의를 해주면 된다.

  1. 자신 계정으로 로그인
  2. 상단에 사용권 계약이 업데이트 되었다는 팝업이 뜸
  3. Account > Review Agreement 버튼 눌러줌

Xcode, 프로젝트에서 pod 삭제 후 재 적용해보기

|

개인적인 연습 내용을 정리한 글입니다.
더 좋은 방법이 있거나, 잘못된 부분이 있으면 편하게 의견 주세요. :)


Xcode, 프로젝트에서 pod 삭제 후 재 적용해보기

제 문제상황은 다음과 같았습니다.

  1. 프로젝트의 이름을 바꿈
  2. 이름을 변경하고 나니 pod install 이 제대로 실행이 되지 않았다.
  3. 실제 모든 프로젝트의 이름을 변경했는데도 계속해서 실행이 되지않았다.
  4. xcode 내부에서는 프로젝트명이 제대로 변경되어있었는데, 파인더를 통해 확인해보니 xcworkspace에 해당하는 파일명이 변경되지 않았다.
  5. 강제로 변경하려고 하니 적용이 되지 않는다.
  6. pod 을 프로젝트에서 삭제하고 다시 실행해야겠다고 생각이 들었다.

이에 대한 방법은 아래와 같았습니다.

  1. 터미널에 pod deintegrate 입력
  2. Podfile, Podfile.lock 파일 삭제
  3. xcworkspace 파일 삭제
  4. xcodeproj 파일을 열어 pod 관련 모든것 삭제
  5. 다시 pod init, pod install

이렇게 하고 다시 open ~.xcoworkspace를 했더니 no scheme 이 뜨더라.
xcode를 cmd + q 를 통해 강제 종료하고 다시 열어보니 정상 작동!