본문 바로가기
[Android] Material Design 개략적으로 알아보기~ Implementing Material Design in Your Android App http://android-developers.blogspot.kr/2014/10/implementing-material-design-in-your.html Material Design 은 Android 5.0 ( Lollipop, LOS ) 부터 등장한 안드로이드의 디자인이다. 전반적인 Animation 에 대한 가이드는 아래 링크를 참조하면 좋다.https://material.io/guidelines/motion/material-motion.html Tangible Surfaces * Shadow 아래와 같이 xml 에서 elevation 을 주면, z axis 로 이동한 효과를 내며, system 에서 dynam.. 2017. 4. 10.
[iOS Study] 상태 복원 [iOS Study] 상태 복원 출처 : 아론 힐리가스의 IOS 프로그래밍 -앱의 수명은 제한돼 있다.만약 시스템이 더 많은 메모리가 필요하고 자신의 앱이 백그라운드 상태에 있다면, iOS는 아마 그 앱을 죽여 시스템에 메모리를 반환하도록 할 것이다.사용자는 이러한 사실을 알 필요가 없다.항상 앱의 마지막 장면으로 돌아가야 할 것이다. -앱에 상태 복원(state restoration)을 적용해야 한다.상태 복원은 데이터를 저장하는 데 사용했던 아카이빙과 매우 비슷하게 작동한다.앱이 잠시 중단 상태로 들어가면 뷰 컨트롤러 계층의 스냅샷(snapshot)이 저장된다.사용자가 다시 열기 전에 앱이 죽었다면 시작 시에 그 상태가 복원될 것이다.(만약 앱이 죽지 않았다면 모든 것은 메모리에 남아있고 상태를 복원.. 2016. 3. 26.
[iOS Study] 뷰 컨트롤러 [iOS Study] 뷰 컨트롤러 출처 : 아론 힐리가스의 iOS 프로그래밍 -뷰 컨트롤러는 UIViewController 의 하위 클래스 인스턴스이다.뷰 컨트롤러는 뷰 계층구조를 관리한다.뷰 컨트롤러는 계층구조를 구성하는 뷰 객체들을 만들고 뷰 객체와 관련된 이벤트를 제어하고, 윈도우에 뷰 계층구조를 추가하는 역할을 한다. -UIViewController 의 하위 클래스는 중요한 프로퍼티를 하나 상속받는다. @property (nonatomic, strong) UIView *view; 이 프로퍼티는 UIView 인스턴스를 가리킨다.뷰 컨트롤러의 View 가 윈도우의 하위뷰로 추가되면, 뷰 컨트롤러의 뷰계층 전부가 윈도우에 추가된다. -뷰 컨트롤러의 view 는 화면에 보여줄 필요가 있을 때까지 만들어지.. 2016. 2. 18.
[android] Thread Scheduling 에 대한 이야기 [android] Thread Scheduling 에 대한 이야기 -Thread 에는 priority 값을 주어 CPU 사용량을 조절할 수 있다. ( Process#setThreadPriority( int ), Thread#setPriority( int ) ) 이 Priority 에 들어가는 값은 Nice value 라 부르는데, 다른 Thread 에 대해 얼마나 Nice 한가를 나타내는 값이다. Nice 값이 높다는 것은 다른 Thread 에게 많이 양보하는 착한(?)놈이라는 의미. 즉 Nice 값이 높을수록 우선순위가 낮아 CPU 활용이 적어진다. - Android 에서는 Main ( UI ) Thread 가 우선순위가 보통 가장 높아야 한다. BG 에서 도는 Thread 들의 Nice Value 가.. 2015. 12. 22.
[android] 일반적이지 않은 사진(이미지) 모양 만들기 #1 - 모서리가 둥근 사각형 일반적이지 않은 사진(이미지) 모양 만들기 #1 - 모서리가 둥근 사각형 출처 : http://blog.stylingandroid.com/archives/2656 2가지 이미지를 합성해, 사각형의 이미지를 다른 모양으로 바꿀 수 있다.이번에 알아볼 것은 모서리가 둥근 사각형을 이용하여, 사각형 이미지를 둥근 사각형 모양으로 masking 하는 것이다. public Bitmap combineImages(Bitmap bgd, Bitmap fg) { Bitmap bmp; int width = bgd.getWidth() > fg.getWidth() ? bgd.getWidth() : fg.getWidth(); int height = bgd.getHeight() > fg.getHeight() ? bgd.getHei.. 2015. 4. 11.
Android RenderScript blur Android RenderScript Blur RenderScript 관련 API 들은 API 11 에 등장했다.하지만 Compat library 를 통해 API 8 부터 사용 가능하다. RenderScript 는 Graphic 작업을 할 때 CPU, GPU 중 해당 작업을 최적으로 처리할 수 있는 것을 찾아내서 multiple processor 작업을 하고 나중에 그 결과를 합치는 작업을 하여 성능을 매우 높인다. Native syntax 는 C99 기반으로, OpenCL, CUDA, GLSL 등이랑 비슷하다. private void blur(Bitmap bg, View textView, float radius) { Bitmap overlay .. 2014. 6. 8.
android:foreground 속성은 언제 쓰이는가? android:foreground 는 android:background 와 반대되는 개념이다. android:foreground 의 경우는 main contents 를 가리면 안 되기 때문에 보통 alpha 를 먹인 이미지나 색상 등을 사용하며,어떤 item 을 선택했을 때 background selector 와 같은 효과를 볼 수 있지만, 앞쪽(컨텐츠보다 z 축으로 우리 눈쪽에 가깝게)에서 press 된 상태를 보기 위해 보통 사용된다. 말인 즉슨, 만약 어떤 버튼을 클릭하는데, 그 버튼의 컨텐츠가 버튼의 거의 전부를 cover 하고 있다면,selector를 background 로 설정했을 때, 해당 버튼을 press 하면 해당 버튼이 눌렸는지 판단하기 어렵다.이 경우 selector 를 foregro.. 2014. 4. 14.
[Android] 제대로 된 REST API 를 구축해보자. [Android] 제대로 된 REST API 를 구축해보자. reference : http://mytechaddiction.blogspot.kr/2014/02/rest-interaction-in-android.html?utm_source=Android+Weekly&utm_campaign=4254f212fb-Android_Weekly_91&utm_medium=email&utm_term=0_4eb677ad19-4254f212fb-337262377 Anti-Patterns 1. UI Thread 에서 API Call. 2. Activity 나 Fragment 등에서 Thread 를 만들어 요청 3. 결과를 Memory 에만 저장하여 사용. Decouple the UI from the http call. Act.. 2014. 3. 18.
[android] custom actionbar theme example android, custom actionbar theme example actionbar, actionbarstyle, actionBarTabTextStyle, android:actionbarstyle, android:actionBarTabTextStyle, android:background, android:textcolor, android:titleTextStyle, app theme, background, CODE, custom actionbar, custom actionbar theme, exmaple, sample, tab theme, TextAppearance.AppCompat.Widget.ActionBar.Title", textcolor, textsize, theme.appcompat.ligh.. 2014. 3. 10.
반응형