분류 전체보기 (401) 썸네일형 리스트형 모달 뷰 투명 배경 모달 뷰 컨트롤러 띄우기 MyModalViewController *vc = [[MyModalViewController alloc] initWithNibName:@"name" budle:nil];vc.modalPresentaitionStyle = UIModalPresentationOverCurrentContext; [self presentViewController:vc animated:YES completion:nil]; 이 스타일들은 보여지는 뷰 컨트롤러에 적용해야 한다.아래 스타일은 인터페이스빌더에서도 적용 가능하다. 그런데 UIModalPresentationOverCurrentContext 는 UIModalPresentationOverFullScreen 과 차이를 모르것다.아무튼 둘다 투명.. ChildViewController Child View Controller컨트롤러 추가 addChildViewController: 를 사용해 컨트롤러 추가한다.addSubView: 로 자식 컨트롤러의 루트뷰를 등록한다.자식뷰의 사이즈(frame) 정보를 지정한다.각종 제약등을 설정한다.자식 컨트롤러의 didMoveToParentViewController: 호출해준다. addChildViewController: 가 호출되면 자식 컨트롤러를 등록하고, 자식컨트롤러의 willMoveToParentViewController: 를 호출해준다. 자식컨트롤러가 부모 컨트롤러에 추가될때 원하는 초기화 코드를 넣으면되고, 추가 완료 후에는 부모 컨트롤러에서 didMoveToParentViewController: 를 호출해 주어야 한다. * 오토레이아웃 환.. 오토레이아웃 이것저것 / Constraint / UITextView 코드에서 제약 사항추가view.translatesAutoResizingMaskIntoConstraints = NO NSArray *array = [NSLayoutConstraintconstraintsWithVisualFormat:NSString*options:NSLayoutFormatOptionsmetrics:NSDictionary*views:NSDictionary* 오브젝티브씨의 경우 NSDictionaryFromVariableBindings() 매크로를 사용하면 뷰들의 키와 값을 설정해준다.옵션에 정렬등이 있어 사용시 유용하다. NSLayoutFormatAlignAllCenterX 등~ 비주얼포맷 기본| : 슈퍼뷰[view1]-[view2] : 기본간격 8[view1]-10-[view2] : 간격은 .. 커스텀객체와 인터페이스빌더 인터페이스 빌더에서 코드상의 클래스와 프로퍼티를 동적으로 연동 IBDesignable해당 객체를 인터페이스빌터를 통해 표현하겠다는 지시어 IBInspectable이름그래도 해당 속성(멤버 인스턴스)을 인터페이스뷰를 통해 제어 가능토록 해준다. IBInspectable.h@interface MyView : UIView{IBInspectable UIColor *bgColor;}@end .mIB_DESIGNABLE@interface MyView : UIView // setter, getter 관련 코드-(void)setBgColor:(UIColor *)color {// setter를 재정의 해 변경이 일어나면 처리할 작업을 추가한다// 원래 setter가 할일 -_-;;bgColor = color; // 다른.. 스토리보드 / XIB 스토리보드,xib 객체 코드에서 불러오기 xib 기반 프로젝트나 날코딩(?)으로 ui를 구현했는데, 만약 storyboard가 필요할 경우동적으로 스토리보드를 불러올수 있다. 스토리보드를 만들고 뷰컨트롤러 속성에서 id를 지정하고, id를 사용한다고 체크해야 한다. UIStoryboard *sb = [UIStoryboard storyboardWithName:@"스토리보드 이름" bundle:nil];UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"뷰컨트롤러id"]; xib// NSBundle 사용 현재 권장되지 않음.[[NSBundle mainBundle] loadNibNamed:@"nib이름" owner:self options:.. 싱글톤 싱글톤 +(id) instance{static dispatch_once_t pred;static MyClass *obj=nil; dispatch_once(&pred, ^{obj = [[MyClass alloc] init];}); return obj;} class MyClass{static let instance = MyClass();} 코어 데이터 정리 헬퍼 클래스를 만들기 위해서 필요한 내용들 정리. * MO(엔티티) : NSManagedObject엔티티는 관계형 db의 테이블이라고 보면된다. managed object context 는 엔티티를 구현한 객체인 NSManagedObject를 통해 각 엔티티의 데이터를 처리하게 된다.엔티티는 각각 NSManagedObject 가 되며, 필요시 이를 상속받아 구현하면 된다.일반적으로 MO 클래스는 엔티티 이름과 동일하게 생성한다. 엔티티 편집화면에서 Editor > Create NSManagedObject Subclass.. 를 클릭하면 모델 클래스를 만들어 준다.NSManagedObject 객체를 상속받은 클래스를 만들고, 모델 편집화면에서 엔티티 선택후 속성창에서 클래스 이름을 입력해도 된다. 자동생성.. 슬라이드메뉴 간단한 메뉴뷰를 하나 만드려는데, 전체적인 구조도 볼겸 관련 내용이 정리된 소스를 정리해본다.참조 : https://www.raywenderlich.com/32054/how-to-create-a-slide-out-navigation-like-facebook-and-path * 단순히 사용되는 메쏘드나 구조를 살펴보기 위함이라 실제 내용과 차이가 있음.이 튜토리얼은 메뉴뷰가 에니메이션되는 형태가 아닌 센터뷰가 이동하는 형태로 처리되어 있다. 따라서, 메뉴뷰는 고정되어 있고, 센터뷰가 슬라이드되면서 메뉴뷰가 보이게 된다. 메뉴뷰가 이동하게하려면 frame 등 영역정보를 화면 외부로 설정해서 안으로 에니메이션 하면 될것으로 보인다. 센터뷰 생성self.centerViewController = [[centerV.. 이전 1 ··· 21 22 23 24 25 26 27 ··· 51 다음