본문 바로가기
[iOS Study] UITableView 와 UITableViewController [iOS Study] UITableView 와 UITableViewController 출처 : 아론 힐리가스의 iOS 프로그래밍 -UITableView 는 여러 행을 가질 수 있는 단일 열에 데이터를 보여준다. -UITableView 의 dataSource 는 UITableViewDataSource 프로토콜을 따르는 한 어떠한 Objective-C 객체든 될 수 있다. -UITableViewController 클래스의 인스턴스는 뷰 컨트롤러, 데이터 소스, 델리게이트의 세 가지 역할을 다 할 수 있다. -UITableViewController 는 UIViewController 의 하위 클래스이기 때문에 view 프로퍼티를 가진다.UITableViewController 의 view 는 언제나 UITable.. 2016. 2. 20.
[iOS Study] 델리게이션과 텍스트 입력 [iOS Study] 델리게이션과 텍스트 입력 출처 : 아론 힐리가스의 iOS 프로그래밍 -UITextField 인스턴스는 사용자가 텍스트를 수정할 수 있게 해준다. -UIResponder 는 UIKit 프레임워크에 존재하는 추상 클래스이다.다음 세 클래스는 UIResponder 의 하위 클래스이다. UIView, UIViewController, UIApplication UIResponse 는 이벤트를 제어하는 메소드들을 정의한다.이벤트에는 터치 이벤트, 흔들기와 같은 모션 이벤트, 재생/정지와 같은 원격 제어 이벤트 등이 있다.하위 클래스들은 이런 이벤트에 응답하기 위해 각각에 따라 이들 메소드를 재정의한다. -UIWindow 는 다른 이벤트들에 응답할 객체를 가리키는 퍼스트 리스폰더 (first re.. 2016. 2. 19.
[iOS Study] 뷰 컨트롤러 [iOS Study] 뷰 컨트롤러 출처 : 아론 힐리가스의 iOS 프로그래밍 -뷰 컨트롤러는 UIViewController 의 하위 클래스 인스턴스이다.뷰 컨트롤러는 뷰 계층구조를 관리한다.뷰 컨트롤러는 계층구조를 구성하는 뷰 객체들을 만들고 뷰 객체와 관련된 이벤트를 제어하고, 윈도우에 뷰 계층구조를 추가하는 역할을 한다. -UIViewController 의 하위 클래스는 중요한 프로퍼티를 하나 상속받는다. @property (nonatomic, strong) UIView *view; 이 프로퍼티는 UIView 인스턴스를 가리킨다.뷰 컨트롤러의 View 가 윈도우의 하위뷰로 추가되면, 뷰 컨트롤러의 뷰계층 전부가 윈도우에 추가된다. -뷰 컨트롤러의 view 는 화면에 보여줄 필요가 있을 때까지 만들어지.. 2016. 2. 18.
[iOS Study] 뷰와 뷰 계층구조 [iOS Study] 뷰와 뷰 계층구조 출처 : 아론 힐리가스의 iOS 프로그래밍 - 뷰는 UIView 의 인스턴스이거나 그 하위 클래스의 인스턴스이다. 뷰는 자신을 그리는 법을 알고 있다. 뷰는 터치와 같은 이벤트를 처리한다. 뷰는 뷰 계층구조상에 존재한다. 뷰 계층구조의 루트는 앱의 윈도우이다. - iOS 앱은 앱의 모든 뷰의 컨테이너 역할을 하는 UIWindow 인스턴스를 하나 가진다. 윈도우는 앱이 실행될 때 만들어진다. 그리고 윈도우가 만들어지면 그 윈도우에 다른 뷰들을 추가 할 수 있다. - 계층의 모든 뷰는 윈도우를 가지고 자신을 그린다. 뷰는 그 자체를 자신의 CALayer 인스턴스인 레이어에 나타낸다 ( 뷰의 레이어는 비트맵 이미지로 생각할 수 있다. ) 모든 뷰의 레이어들이 화면에 합성.. 2016. 2. 16.
[Effective Java] equals 메소드를 오버라이딩 할 때는 보편적 계약을 따르자. [Effective Java] equals 메소드를 오버라이딩 할 때는 보편적 계약을 따르자. - 인스턴스의 동일 여부를 판정하는 equals 메소드의 오버라이딩은 간단한 것 같지만, 잘못되는 경우가 많아서 참담한 결과를 초래할 수 있다. ( 기본 equals 는 참조를 비교한다. ) - 다음의 조건이 만족된다면 슈퍼 클래스의 equals 를 그냥 사용해도 된다. 1. 클래스의 각 인스턴스가 본래부터 유일한 경우. 2. 두 인스턴스가 논리적으로 같은지 검사하지 않아도 되는 클래스의 경우. 3. 수퍼 클래스에서 equals 메소드를 이미 오버라이딩 했고, 그 메소드를 그대로 사용해도 좋은 경우. 4. private 이나 패키지 전용(package private) 클래스라서 이 클래스의 equals 메소드가.. 2015. 12. 31.
[android] webview 에서 파일 업로드하기 -아래 input type 이 file 인 html 코드는 안드로이드 webview 에서 제대로 작동을 안 한다. 즉 해당 button 을 눌러도 파일 선택 창이 뜨지 않는다는 것. - 이 경우 webview 에 WebChromeClient 를 set 해주면서 필요한 함수를 구현해주면 된다.private static final int RC_FILE_CHOOSE = 2833;private ValueCallback mUploadMsg = null; ...webView.setWebChromeClient(new WebChromeClient() {// ICS 에서도 동작하기 위해서는 아래메소드도 넣어줘야함.public void openFileChooser(ValueCallback uploadFile, String.. 2015. 12. 7.
[android] authenticator 관련 Tutorial [android] authenticator 관련 Tutorial 참조 : http://cranix.net/346 http://cranix.net/347 http://cranix.net/349 http://cranix.net/350 Authenticator Service - 안드로이드 설정의 Accounts & Sync 메뉴의 기능 제공을 위해서 필요하다. - @ Manifest - @ xml/authenticator.xml - @AuthenticationService.java public class AuthenticationService extends Service { @Override public void onCreate() { // TODO Auto-generated method stub } @Ove.. 2015. 12. 5.
[android] v7 에 추가된 RecyclerView 에 대해 알아보자 #1 v7 에 추가된 RecyclerView 에 대해 알아보자 #1 참조 : http://antonioleiva.com/recyclerview RecyclerView? 그게 뭐야? RecyclerView 는 새로운 ViewGroup 이며, ListView 의 확장판이라고도 불린다.최신 support-v7 에 포함되었다. RecyclerView 는 확장성을 고려하여 생성되었다. RecyclerView 를 사용하기 위해서는 RecyclerView.Adapter, LayoutManager 이렇게 2개의 컴퍼넌트가 필요하고, 필요에 따라 ItemAnimator, ItemDecorator 등이 추가될 수 있다. RecyclerView.Adatper RecyclerView 의 Adapter 는 기존에 사용되던 패턴을 포.. 2015. 6. 15.
getter / setter 장단점 Getter / Setter 장단점 [ 장점 ] * 단순히 get, set 뿐만이 아니라 다른 일을 하고 싶을 때 유용하다. - validation 을 할 수 있다. - get, set 하는 값을 변형해서 set 하거나 return 할 수 있다. - 안의 구조를 숨길 수 있다. ( encapsulation ) - 안의 변수명을 숨길 수 있다. - 상속할 때 override 할 수 있다. - getter 와 setter 에 다른 access level 을 적용할 수 있다. - lazy loading 이 가능하다. - 몇몇 library, platform, framework 에서 이를 요구하기도 한다. ( reflection 등 이용 ) [ 단점 ] 단순한 get, set의 경우에는 mobile 환경에서 p.. 2015. 2. 12.
반응형