본문 바로가기

ios6

UIEdgeInsets 없이 UILabel에 여백 넣기 UILabel에 여백을 넣는 방법은 다양하다. 그 중 NSLayoutConstraint를 이용하는 법을 다뤄보자! class FitLabel: UILabel { //상하좌우 여백 storyboard 입력값 @IBInspectable var edge: CGSize = CGSize(width: 0, height: 0) //너비, 높이가 적용될 Constraint private var mWidthConstraint, mHeightConstraint: NSLayoutConstraint? //좌우 여백값 var edgeAllWidth: CGFloat { return edge.width * 2 } //상하 여백값 var edgeAllHeight: CGFloat { return edge.height * 2 } ove.. 2018. 5. 8.
손쉽게 아이폰 앱을 새로 실행 시키는 코드 한줄 안드로이드에서는 메인 activity를 종료하고 다시 호출하면 바로 재시작이 된다. 하지만 아이폰에서는 그렇게 할수가 없었다. 혹시나 하는 마음에 재시작 시키는 함수를 찾아봤지만 이 또한 없었다. 나의 구글링 실력이 부족해서 못찾은거일수도 있지만... 좌절하고 있는 순간... 정말 우연하게 방법을 알아냈다. 사실 실수로 코드를 잘못 넣었는데... 재시작이 되는것이다... 아! 실수로 찍은 로또나 될것이지.. 어쨋든 기분은 좋다. 불로소득같은 느낌이다. 방법은 진짜 간단하다. AppDelegate 의 applicationWillEnterForeground 에서 exit(0)를 호출해주면 된다. 아마도 잠에서 깨어나기 직전에 종료를 해주면 깨어나는 작업이 중단되지 않고 계속 진행되면서 재시작되는 효과가 나오.. 2018. 3. 26.
NSString을 마치 UILabel인 양 사용하기 UILabel을 추가하면 간단하게 글자를 넣을 수 있다. 하지만 sub view가 많아지면 어플이 무거워 질 수 있는데 이럴때에는 NSString을 써주면 좋다. 그렇다면 NSString를 UILabel처럼 배경색을 넣어서 마치 view인듯 사용해 보자~ 먼저, NSString이 들어있는 클래스를 하나 만들자! NSString를 상속받아 확장해도 좋다. 나는 그냥 했다. TextBox라고 명명하겠다. class TextBox { //정렬키 상수 static let CENTER = 0 static let LEFT = 8 static let RIGHT = 16 static let TOP = 1 static let BOTTOM = 2 var mText: NSString var mAlign: Int var mF.. 2017. 11. 20.
UIView에 동적으로 버튼을 넣을때 크기를 같게 맞출려면? 안드로이드에서는 layout_weight 로 쉽게 하위 뷰들의 크기를 맞출 수 있다 예를 들어 버튼을 넣는다면 버튼에 layout_weight=1 속성을 추가한 후 LinearLayout에 넣기만 하면 된다 또한 버튼 사이 간격은 layout_margin 로 조절한다 그렇다면 iso의 swift에선 어떻게 하면 될까? 약간 손이 더 가긴 하지만 어렵지 않다 편하게 사용하기 위해 UIView를 커스텀해서 만들어 보았다 버튼 크기를 맞춰주는 동시에 사이 간격, 여백도 줄것이다 class ButtonsView: UIView { private var mGap: CGFloat! private var mPadding: (left: CGFloat, top: CGFloat, right: CGFloat, bottom: .. 2017. 4. 25.
기준점을 중앙으로 Scale UIView 애니메이션 하기 swift 에서는 간단하게 뷰 애니메이션을 구현할 수 있다. 그런데 크기를 변경시키는 애니메이션에서는 주의 해야 할 점이 있다 바로 기준점이다 다음을 보자 let width = frame.width let height = frame.height frame.size.width = width * 0.2 frame.size.height = height * 0.2 UIView.animateWithDuration(1, delay: 0, options: [.CurveEaseInOut], animations: { self.frame.size.width = width self.frame.size.height = height }, completion: nil) 20% 작은 크기에서 원래 크기로 애니메이션 효과를 주었다 .. 2017. 3. 21.
쿼츠2D로 자유롭게 폰트 크기를 바꿔보자 직접 UIView를 상속해서 자신만의 UI객체를 만들때 쿼츠 2D를 사용한다 이때, 폰트 크기는 어떻게 바꿀수 있을까? NSString를 이용하면 간단하다. class MyView: UIView { var mFontAttrDic: [String: NSObject]! var mFont: UIFont! var mText: NSString! override func drawRect(rect: CGRect) { //문자 출력 mText.drawInRect(CGRectMake(0, 0, 100, 100), withAttributes: mFontAttrDic) } func intiFont() { //NSString 설정 mText = "테스트" //폰트 설정 mFont = UIFont(name: "SeoulNams.. 2016. 12. 19.