본문 바로가기
[ios] TableView 의 Height dynamic 하게 바꾸기 [ios] TableView 의 Height dynamic 하게 바꾸기 -UITextView 를 TableView 의 Cell 로 사용하고 있는데,길이가 길어지면서 TableView 의 Height 를 dynamic 하게 바꾸고 싶은 needs 가 있다. -reload 를 하게 되면 입력하던 focus 를 잃어버리기 때문에 focus 를 새로 줘야 하지만,focus 를 새로 주며 reload 하는 방법은 한글일 경우 자음 + 모음이 완성되지 못하는 버그가 생긴다. -cell reload 없이 height 만 바꾸고 싶을 때는 [self.tableView beginUpdates];[self.tableView endUpdates]; 이 두줄의 코드면 된다.새로운 reload 없이, 그리고 focus 를 잃지.. 2017. 12. 21.
[android] VectorDrawable 에 대한 이야기 [android] VectorDrawable 에 대한 이야기 https://blog.stylingandroid.com/vectordrawables-part-1/ -LOS 부터 등장한 녀석으로 SVG 형식으로 xml 을 정의하여 drawable 로 사용할 수 있다. -V 1.4. 이전에서는 android studio 에서는 preview 를 제대로 그리지 못하는 이슈가 있지만, 이후버전에서는 수정됨. -VectorDrawable 을 사용하면 각 해상도에 필요한 res 를 넣어주지 않아도 되서 app size 가 많이 절약된다. -drawable/android.xml 위의 코드는 이 녀석을 그린다. -vector 로 animation 을 하려면 animated-vector 를 정의하여 assign 해줘야 한.. 2017. 6. 2.
[iOS Study] 오토 레이아웃 소개 [iOS Study] 오토 레이아웃 소개 출처 : 아론 힐리가스의 iOS 프로그래밍 -아이패드와 아이폰 모두에서 실행 가능한 단일 앱을 유니버설 앱(Universal application) 이라 한다. -Deployment info 섹션으로 이동하여 Devices 팝업에서 iPhone 을 Universal 로 변경하면 된다. -절대 좌표 체계는 레이아웃이 깨지기 쉽다.미리 화면 크기를 알고 있다고 가정하기 때문이다. 오토 레이아웃을 사용하여 상대적인 방식으로 뷰들의 레이아웃을 기술할 수 있다.이것은 실행 시에 frames 를 결정하도록 해준다.따라서 frames 의 정의가 프로그램이 실행 중인 장비의 화면 크기를 고려할 수 있도록 한다. -레티나 장비는 비레티나 장비보다 두 배 많은 픽셀을 가지고 있지만.. 2016. 3. 3.
[iOS Study] 뷰와 뷰 계층구조 [iOS Study] 뷰와 뷰 계층구조 출처 : 아론 힐리가스의 iOS 프로그래밍 - 뷰는 UIView 의 인스턴스이거나 그 하위 클래스의 인스턴스이다. 뷰는 자신을 그리는 법을 알고 있다. 뷰는 터치와 같은 이벤트를 처리한다. 뷰는 뷰 계층구조상에 존재한다. 뷰 계층구조의 루트는 앱의 윈도우이다. - iOS 앱은 앱의 모든 뷰의 컨테이너 역할을 하는 UIWindow 인스턴스를 하나 가진다. 윈도우는 앱이 실행될 때 만들어진다. 그리고 윈도우가 만들어지면 그 윈도우에 다른 뷰들을 추가 할 수 있다. - 계층의 모든 뷰는 윈도우를 가지고 자신을 그린다. 뷰는 그 자체를 자신의 CALayer 인스턴스인 레이어에 나타낸다 ( 뷰의 레이어는 비트맵 이미지로 생각할 수 있다. ) 모든 뷰의 레이어들이 화면에 합성.. 2016. 2. 16.
How to implement a Floating Activity in an Android App. How to implement a Floating Activity in an Android App. 출처 : http://cases.azoft.com/android-tutorial-floating-activity/ 만들고자 하는것. - Floating Activity ( Transparent ) - 단말의 orientation 에 상관없이 화면의 약 2/3 를 차지하며, center 에 위치하는 것. 만드는 과정 - Activity size 와 location 계산하기.- Activity 를 transparent 하게 만들기.- Background 가 touch 를 받지 않도록 하기. 1. Activity size 계산하기 ActionBar 를 사용하는 경우에 ActionBar 는 항상 동일한 위치에 존.. 2015. 3. 8.
[Android] GlobalLayoutListener 해제 ( remove ) 의 Version 분기. Android GlobalLayoutListener 해제 ( remove ) 의 Version 분기. OnGlobalLayoutListener 는 Keyboard의 존재여부나, View 의 redraw 후의 변경된 width 혹은 height 등을 측정할 때 좋다.하지만 이 녀석이 젤리빈 이후에 listener 를 해지하는 api 이름이 변경되었다. 이전 API 의 이름이 이상하기는 하여 당연한 수정이라고 볼 수는 있지만...정말 코드를 버전분기하는 것은 여간 귀찮고 지저분한 코드 처리가 아닐 수 없다. http://developer.android.com/reference/android/view/ViewTreeObserver.html#removeGlobalOnLayoutListener 여튼 아래와 같이 .. 2014. 5. 8.
[Tutorial] AndEngine Most Important Concepts [Tutorial] AndEngine Most Important Concepts 출처 : http://www.matim-dev.com/most-important-concepts.html Engine Frame 단위로 어떤 명령어들을 처리하는 Controller 이다.Engine 은 모든 content 를 담고 있는 Scene 을 주기적으로 update 한다. LimitedFPSEngine특정양의 update 를 control 할 수 있다. IResolutionPolicy multi resolution 에 대해서 어떻게 처리할지를 구현하는 interface. RatioResolutionPolicy모든 것을 scale 해서 적당한 ratio 로 만든다. ( black line 이 생길 수 있다. ) Fill.. 2014. 5. 7.
[기초강좌] HTML IFrames - w3schools 번역 [기초강좌] HTML IFrames - w3schools 번역 w3school 의 강좌 내용을 번역한 글입니다. 원문 : http://www.w3schools.com/html/html_iframe.asp iframe 은 웹 페이지 안에서 다른 웹 페이지를 표시할 때 사용된다. iframe 추가하는 syntax 는. URL 은 다른 페이지 주소가 들어간다. Iframe - Set Height and Width height 와 width 속성은 iframe 의 높이와 너비를 결정하는 데 사용된다. 기본적으로 높이와 너비값은 pixel 단위로 된다. 하지만 80% 와 같은 percent 단위로 가능하다. 눈으로 직접 보기. Iframe - Remove the Border frameborder 속성은 ifram.. 2014. 3. 23.
Bootstrap All Functions #2 Bootstrap All Functions #2 HTML 5 Doctype .. Mobile First BootStrap 3 부터는 기본적으로 responsive web page 이다. Bootstrap 3 부터는 모바일 단말들이 먼저이고, 데스크탑을 다음 순위로 지원한다. 추가적으로 user-scalable=no 를 넣을수도 있다. 이 녀석은 모바일 단말에서 zoom 을 막는 효과가 있다.maximum-scale=1.0 은 user-scable=no 와 함께 쓰여서 native app 과 비슷한 효과를 볼 수는 있으나, responsiveness 는 떨어진다고 볼 수 있다. Responsive Images .img-responsive{ display: inline-block; height: auto; .. 2014. 3. 18.
반응형