728x90
반응형

Android 179

안드로이드 키보드 설정 ( 뷰가 밀려날때 )

이번 포스팅에서는 안드로이드 소프트 키보드 설정에 대해 알아보자. (특히 layout 을 조정하는 adjustXXX 를 자세히 보자!) How to ◼ AndroidManifest.xml activity> ​ ◼ Java code public class PhMainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_ADJUST_NOTHING); } } ..

Android 2020.02.23

안드로이드 커스텀뷰 2) onDraw 방식

이전까지는 레이아웃을 가져와서 작업을 했다면 이번에는 기본적으로 View를 상속받은 다음에 직접 하나하나 그리는 방식이다. 직접 그리기 위해서는 onDraw를 사용한다. 그러면 직접 그리는 방식의 장점은 무엇일까? 기본적으로 레이아웃 파일을 이용하여 뷰를 가져오면 처리속도가 느리다. 그렇기 때문에 한 화면에 많은 뷰가 들어가면 들어갈 수록 속도는 점점 느려진다. 클래스업(ClassUp)의 경우 수업 화면이 무한 가로 스크롤이 되는 구조인데, 레이아웃을 이용하여 수업을 20개 정도 넣으면 확연히 속도가 느려지는 것을 체감할 수 있다. ViewSwitcher를 이용하고, 뷰를 옮길 때마다 매번 20개씩 다시 그려야하기 때문이다. 그래서 수업하면 전체를 직접 onDraw로 그리는 방식을 선택했고 속도는 정말 ..

Android 2020.02.10

안드로이드 커스텀 뷰 1)

클래스업(ClassUp)에서도 그렇고 다른 앱을 만들 때에도 그렇지만 내가 원하는 뷰를 따로 만들고 싶은 경우가 있다. 즉, 커스텀 뷰(CustomView)를 만들어야 하는 상황이 있다. 보통 커스텀 뷰(CustomView)를 만드는 상황은 아래와 같다. 기존에 존재하는 뷰에 기능적인 부분을 조금 더 구현할 때. 기존에 존재하는 뷰에 커스텀한 속성을 넣고 싶을 때. 여러 뷰를 통합해서 하나의 뷰로 가져가면서 내가 원하는 기능 및 속성을 넣고 싶을 때. 여러 화면에서 같은 기능 및 속성을 가지는 뷰를 사용해야 할 때. 전부 일맥상통하는 말이지만 결국 코드를 조금 더 깔끔하게 짜고, 조금 더 구조적으로 정교하게 코딩하기 위해서인 것 같다. 그러면 안드로이드에서 간단하게 커스텀하는 방법을 적어보려고 한다. 커..

Android 2020.02.10
728x90
반응형