본문 바로가기
[Objective-C] 카테고리 개념 ( Category ) [Objective-C] 카테고리 개념 ( Category ) http://soooprmx.com/wp/archives/2436#disqus_thread -기존에 정의된 어떤 클래스를 쉽게 확장할 수 있게 해준다.카테고리를 적용하면, 이 녀석을 사용하는 녀석은 물론 상속받는 녀석까지 확장된 기능을 사용할 수 있다. -왜 이름이 카테고리냐하면...범용적으로 사용되는 Class 를 확장해서 사용을 한다고 생각을 한다면, 이 기능 저 기능 다 쑤셔넣어서 유지보수가 어려운 코드가 될 수 있다.이 녀석을 SomeClassA, SomeClassA+Network, SomeClass+Graphic 과 같이 카테고리화해서 확장해서 사용하는 것을 목적으로 설계되었기 때문에, 이 녀석을 카테고리라고 부른다. -header .. 2017. 7. 18.
[Effecitve Objective-C] #2 헤더에 헤더를 포함하는 것을 최소화하라 [Effecitve Objective-C] #2 헤더에 헤더를 포함하는 것을 최소화하라 출처 : Effective Objective-C - Objective-C 는 C, C++ 처음 헤더 파일과 구현 파일을 사용한다. Objective-C 로 클래스를 작성할 때 쓰는 표준적인 방법은 클래스 이름 뒤에 확장자가 .h 인 헤더 파일과 .m 인 구현 파일을 생성하는 것이다. // header #import @interface EOCPerson : NSObject @property (nonatomic, copy) NSString *nane @end // implementation #import “EocPerson.h" @implementation EOCPerson @end - Foundation.h 는 Obje.. 2017. 7. 17.
[Effecitve Objective-C] #1 Objective-C 의 기원과 친숙해져라. [Effecitve Objective-C] #1 Objective-C 의 기원과 친숙해져라. 출처 : Effective Objective-C -오브젝티브-C 는 매우 동적인 언어이다.언어의 기원이 스몰토크(Small Talk) 이다.대다수 언어가 컴파일 시간에 하는 일들을 오브젝티브-C 는 실행 시간에 한다. -함수 호출이 아닌 메시징 구조(Messaging Structure)를 사용한다.Objective-C 는 메시징을 처음 사용한 스몰토크로부터 진화했다.메시징과 함수 호출은 다음과 같이 차이점이 있다. // 메시징Object *obj = [Object new];[obj performWith:param1 and:param2]; // 함수 호출Object *obj = new Object;obj->perf.. 2017. 7. 16.
[android] 원형 progress view 그리기 [android] 원형 progress view 그리기 http://frogermcs.github.io/InstaMaterial-concept-part-9-photo-publishing/ -public class SendingProgressView extends View { public static final int STATE_NOT_STARTED = 0; public static final int STATE_PROGRESS_STARTED = 1; public static final int STATE_DONE_STARTED = 2; public static final int STATE_FINISHED = 3; private static final int PROGRESS_STROKE_SIZE = 10; p.. 2017. 7. 15.
[android] Circular Reveal 만들기 [android] Circular Reveal 만들기 http://frogermcs.github.io/InstaMaterial-concept-part-6-user-profile/ -Circular reveal 을 만드는 방법은 여러가지가 있다. -ViewAnimationUtils.createCircularReveal() 은 Render thread 통해 animation 되기 때문에 Lollipop 이전 단말에서는 사용할 수 없는 방법이다.하지만 Lollipop 이라면 가장 간단한 방법이다.[android] CircularRevealEffect Basic Simple Example -https://github.com/ozodrukh/CircularReveal 위의 링크는 Ginger 이상에서 사용할 수 .. 2017. 7. 14.
[android] Circular Bitmap 만들기 ( 동그란 프로필 사진 ) [android] Circular Bitmap 만들기 ( 동그란 프로필 사진 ) http://frogermcs.github.io/InstaMaterial-concept-part-6-user-profile/ -public class CircleTransformation implements Transformation { private static final int STROKE_WIDTH = 6; @Override public Bitmap transform(Bitmap source) { int size = Math.min(source.getWidth(), source.getHeight()); int x = (source.getWidth() - size) / 2; int y = (source.getHeight(.. 2017. 7. 13.
[Kotlin Tutorial] Kotlin 소개 - Kotlin : what and why [Kotlin Tutorial] Kotlin 소개 - Kotlin : what and why 참조 : Kotlin in Action -Kotlin 은 Java platform 을 targeting 한 새로운 프로그래밍 언어.Java 코드와 함께 쓰일 수 있다.Android 개발 뿐만 아니라 Server-side 개발에도 쓰일 수 있다. -Java 의 iib, framework 와 함께 쓰일 수 있고, Java 와 비교해 Performance 도 거의 동일하다. 1.1. A Taste of Kotlin -http://try.kotl.in 을 통해 코드 실습을 할 수 있다. -data class Person(val name: String, val age: Int? = null) fun main(args: A.. 2017. 7. 12.
[android] 특정 위치에 popup window 띄우기 [android] 특정 위치에 popup window 띄우기 http://frogermcs.github.io/InstaMaterial-concept-part-4-feed-context-menu/ -꼭 popup window 를 띄우지 않아도, LinearLayout 등을 통해서도 popup window 형태를 충분히 띄울 수 있다. -메뉴를 표시하는 LinearLayout 를 하나 만든다. -menu 를 표시하는 action 이 들어오면, 메뉴 view 를 만들고, ViewTreeObserver 에 addOnPreDrawListener 를 등록한다. -listener callback 에서는 먼저 pre draw listener 를 해지해주고, menu 의 위치를 잡아준다. -위치를 잡는것은, 기준점이 되.. 2017. 7. 12.
[android] list view 의 아이템 하나씩 나타나는 animation 효과 주기 [android] list view 의 아이템 하나씩 나타나는 animation 효과 주기 http://frogermcs.github.io/Instagram-with-Material-Design-concept-part-2-Comments-transition/ -// view 는 list의 itemViewview.setTranslationY(100); // 원래 등장하는 위치보다 조금 더 내려주고..view.setAlpha(0.f); // visibility 를 꺼준 후..view.animate() .translationY(0) .alpha(1.f) .setStartDelay(delayEnterAnimation ? 20 * (position) : 0) // position 마다 시간차를 조금 주고.. .s.. 2017. 7. 11.
반응형