본문 바로가기

전체 글117

ListView 사용법 ListView란? ListView는 리스트 형태의 데이터를 보여주기 위한 위젯이다. 따라서 list 형태의 원본 데이터가 있어야 하며 이를 adapter를 통해 각각의 아이템에 지정해준다. 이 때 어댑터는 데이터를 관리할 뿐만 아니라 뷰도 생성해준다. 이와 같은 형태로 쓰이는 위젯이 많기 때문에 리스트뷰를 통해 기본적인 사용법을 익히는 것이 좋다. ListView 사용법 리스트뷰의 기본적인 구성은 다음과 같다. 1. 표현할 레이아웃 파일 내의 리스트뷰 객체 2. 아이템 각각의 구성을 표현할 레이아웃 파일 3. 데이터를 아이템에 지정해줄 어댑터 이 구성을 토대로 하나씩 만들어보자. 먼저 액티비티의 레이아웃 파일에 리스트뷰를 추가한다. 다음으로 아이템의 구성을 정하기 위한 레이아웃 파일을 만들어보자. 고객.. 2019. 8. 21.
Inflation과 Layout Inflater Inflation이란? 안드로이드의 Activity는 보여지는 화면을 구성하는 xml과 내부적으로 동작하는 java 코드로 구성되어 있다. 우리가 view를 하나 만들기 위해서는 먼저 xml 파일에 원하는 view 태그를 만들게 된다. 하지만 xml 파일에서 버튼을 만들었다고 실제로 버튼이 만들어진 것은 아니다. 실제로 버튼이 만들어지기 위해서는 버튼을 메모리에 올려놓아야 한다. 이렇게 view를 메모리에 올려 객체화하는 것을 inflation이라고 한다. Layout Inflater란? view를 inflate하기 위해서는 new View()와 같이 메모리를 할당하는 코드가 필요하다. 그러나 우리는 이 코드를 직접 만들지 않아도 xml 파일에만 만들면 view를 볼 수 있다. 이는 메모리에 할당되지 않.. 2019. 8. 9.
Button을 상속받아 커스텀 Button 만들어보기 xml에서도 여러가지 속성을 바꿈으로서 원하는 형태의 Button을 만들 수 있다. 이번에는 Button 클래스를 상속받아 자바 코드를 통해 여러가지 속성을 바꿔보자. public class BitmapButton extends AppCompatButton { public BitmapButton(Context context) { super(context); } public BitmapButton(Context context, AttributeSet attrs) { super(context, attrs); } } 먼저 AppCompatButton을 상속받아 BitmapButton 클래스를 생성해준다. 아래 두 함수는 기본적으로 호출되는 AppCompatButton의 생성자이다. public BitmapBu.. 2019. 8. 8.
나인패치(Nine Patch) 이미지란? 나인패치(Nine Patch) 이미지란? 안드로이드는 기본적으로 이미지뷰를 할당한 뒤 이미지를 넣게 되면 이미지뷰의 사이즈에 맞춰지게 된다. 하지만 원본 이미지와 뷰의 크기가 다르게 되면 이미지가 늘어나서 깨지게 된다. 이를 방지하기 위해 이미지의 크기가 달라질 때 왜곡되는 부분과 왜곡되지 않는 부분을 나누어 처리할 수 있도록 만든 기능이 나인패치 이미지이다. 안드로이드 스튜디오에서 나인패치 이미지를 열어보면 위와 같은 UI를 볼 수 있다. 앞서 말했듯 왼쪽 이미지처럼 이미지를 9개의 구역으로 나누어 늘어나도 되는 부분과 아닌 부분을 정할 수 있다. 그 후 이미지의 크기를 바꾸면 오른쪽처럼 코너 부분이 왜곡되지 않고 변경되는 것을 볼 수 있다. 사용법 나인패치 이미지를 사용하기 위해서는 프로젝트에 이미지.. 2019. 8. 8.
Dialog 사용법 - AlertDialog Dialog란? Dialog는 앱 사용 중 작은 창을 띄워 사용자에게 정보를 주거나 상호작용하기 위해 사용된다. 그 중 가장 기본적으로 많이 사용되는 것이 AlertDialog이다. AlertDialog는 한국어로 알림 대화상자라고 하는데 앱 사용 중 사용자의 간단한 선택이 필요한 경우에 사용한다. 간단한 메세지와 함께 예, 아니오 혹은 취소를 선택하도록 할 수 있다. AlertDialog 사용법 AlertDialog는 기본적으로 Builder를 이용하여 원하는 내용들을 지정하고 객체를 만들어서 띄우게 된다. 간단한 예시를 통해 알아보자. AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("안내"); builder... 2019. 8. 2.
Toast 사용법 + Snackbar Toast란? Toast란 애플리케이션 위에 잠깐 떠있다 사라지는 뷰로서 간단한 메시지를 보여주기 위해 사용된다. 기본적으로 화면 하단에 나타나지만 위치뿐만 아니라 색상, 모양 등을 바꾸어 사용할 수도 있다. 기본적인 사용법 //기본 형태 Toast toast = Toast.makeText(getApplicationContext(), "Android Toast", Toast.LENGTH_SHORT); toast.show(); //자주 쓰는 형태 Toast.makeText(getApplicationContext(), "Android Toast", Toast.LENGTH_SHORT).show(); 기본적으로 Toast 클래스의 makeText() 함수를 통해 원하는 toast 객체를 만들어 show() 함수.. 2019. 8. 2.
기본적인 Event 처리 - Touch, Gesture, Key 기본적인 Event 종류 앱을 사용할 때 사용자의 입력이 다양하게 들어오는데 이를 Event라고 한다. 개발자는 이렇게 Event를 통해 들어온 정보를 바탕으로 여러 가지 기능을 만들 수 있다. 그러기 위해서는 Event 발생 시 실행될 함수를 만들고 그 함수를 Listener에 넣어주어야 한다. 그렇다면 기본적인 Event로 1. 사용자가 화면을 Touch했을 때 2. 드래그 등의 Gesture를 입력했을 때 3. 키를 입력했을 때 각각의 처리 방법을 알아보자. Touch Event 사용자가 특정한 View를 터치했을 때 어떤 action을 했는지 기록하는 기능을 만들어보자. View view1 = findViewById(R.id.view1); view1.setOnTouchListener(new Vie.. 2019. 8. 1.
ScrollView 사용법 ScrollView란? 구현하려는 내용의 높이가 실제 화면의 높이보다 클 때 화면을 스크롤할 수 있도록 하기 위해 사용한다. ScrollView를 이용하여 내용을 감싸주면 화면의 높이보다 내용물이 커질 때 자동으로 스크롤이 가능하도록 된다. ScrollView 사용법 먼저 기본 레이아웃에 ScrollView를 추가하면 안에 LinearLayout이 추가되어 있는 것을 볼 수 있다. ScrollView 바로 아래에 여러 개의 View를 추가하면 에러가 나기 때문에 꼭 레이아웃 하나를 두고 그 안에 추가하자. 그 다음 ScrollView 안의 LinearLayout에 TextView 하나를 추가하고 글자를 많이 채워 보자. 그러면 위와 같이 글자가 화면 밖을 벗어난 것을 볼 수 있다. 이제 실행시킨 뒤 드래.. 2019. 7. 30.
TableLayout 사용법 TableLayout이란? TableLayout은 View들을 표와 같은 형태로 담는 레이아웃이다. 전체 레이아웃인 TableLayout 안에 여러개의 행, TableRow를 추가하여 그 안에 View를 배치한다. 기본적인 사용법 먼저 위와 같이 TableLayout을 생성해준다. 이 때 stretchColumns 옵션에 0,1,2는 0,1,2번째 열로 레이아웃을 채운다는 설정이다. 그 다음 TableRow를 원하는 만큼 추가하고 첫 번째 줄에는 TextView와 EditText를 추가해 보자. 이 때 layout_span을 통해 해당 View가 몇 개의 column을 차지할 지를 지정할 수 있다. 그리고 두 번째 줄에는 Button 두 개를 추가하고, layout_column을 통해 해당 View가 어.. 2019. 7. 30.