안드로이드
-
[ Android ] 스플래시 화면 ( 로딩 화면 )Android 2020. 4. 2. 15:40
이 글은 부스트코스 강의를 공부하며 요약한 글입니다. CatServant Splash Screen ( 로딩 화면 ) 앱이 실행되기 전에 잠깐 보였다 사라지는 화면을 Splash Screen이라고 부릅니다. 이 화면은 앱이 어떤 것인지를 알려주는 역할도 하고 메인 화면이 초기화될 때까지 시간이 걸리면서 사용자에게 주는 지루함을 없애주는 역할도 합니다. Splash Screen을 구현하는 방법은 2가지로 나눌 수 있습니다. 1. 로딩 화면을 메인으로 설정하는 방법 ( SplashActivity → MainActivity ) 2. 메인 화면에서 로딩 화면을 호출하는 방법 ( MainActivity → SplashActivity → MainActivity ) 아래의 코드는 앱의 시작점을 로딩 화면으로 설정하는 ..
-
[ Android ] ListViewAndroid 2020. 3. 31. 16:59
이 글은 부스트코스 강의를 공부하며 요약한 글입니다. CatServant ListView 최근 실무에서는 ListView 보다는 RecyclerView를 많이 사용합니다. 여러 개의 item 중에서 하나를 선택하는 방식을 가진 선택 위젯은 Adapter를 사용합니다. 화면에 보이는 View가 데이터를 관리하는 것이 아니라 Adapter가 데이터를 관리하는 방식으로 사용하게 됩니다. Adapter는 데이터를 관리하면서 동시에 위젯을 통해 보일 각각의 item을 위해 View를 만들어 줍니다. ListView는 여러 개의 Item을 위 아래로 스크롤 할 수 있게 해주면서 각각의 item을 순서대로 보여주는 역할을 합니다. 각각의 item은 독립적인 View로 만들어지게 되고 View들이 모여있는 형태를 유지..
-
[ Android ] 트윈 애니메이션Android 2020. 3. 30. 15:09
이 글은 부스트코스 강의를 공부하며 요약한 글입니다. CatServant Tweened Animation Thread Animation이 만화 같은 효과를 만들어내는 기본적인 방법이지만 각각의 프레임을 모두 이미지로 그려야 한다는 것은 힘든 일입니다. 동일한 이미지가 움직이도록 만드는 경우 직접 이미지를 그리지 않고 프로그램이 이미지의 위치를 약간 바꾸고 화면에 뿌려주도록 하는 방법을 사용하는 것이 더 편리합니다. 이러한 방식으로 Animation 을 동작시키는 것이 Tweened Animation입니다. 트윈 애니메이션(Tweened Animation)은 보여줄 대상을 적절하게 연산한 후 그 결과를 연속적으로 디스플레이하는 방식을 제공합니다. Frame Animation 처럼 변경하면서 보여줄 각각의 ..
-
[ Android ] 음성 녹음하기Android/멀티미디어 2020. 3. 26. 14:32
이 글은 부스트코스 강의 와 MediaRecorder를 공부하며 요약한 글입니다. CatServant MediaRecorder Android 멀티미디어 프레임워크에는 다양한 일반 오디오 및 동영상 포맷을 캡처하고 인코딩하는 지원 기능이 포함되어 있습니다. AudioRecorder 는 오디오만 레코딩 가능 하지만, MediaRecorder 의 경우 Audio 및 Video 컨텐츠의 레코딩이 가능 합니다. 다만 인코딩 된 파일을 받기 때문에 AudioRecorder 처럼 PCM Data 를 바로 받아올 수는 없는 단점이 있습니다. MediaRecorder recorder = new MediaRecorder(); recorder.setAudioSource(MediaRecorder.AudioSource.MIC)..
-
[ Android ] 음악 재생하기Android/멀티미디어 2020. 3. 25. 16:48
이 글은 부스트코스 강의를 공부하며 요약한 글입니다. 안드로이드 프레임워크에서 소리와 영상을 재생하기 위해 사용하는 클래스는 아래와 같습니다. MediaPlayer 소리와 영상을 재생하기 위한 기본 API 입니다. AudioManager 기기의 오디오 소스와 오디오 출력을 관리하는 Class입니다. CatServant MediaPlayer Audio / Video File 및 Stream의 재생 제어는 상태 머신(State machine)으로 관리됩니다. 타원은 MediaPlayer 객체의 상태를 나타냅니다. 아크(arc)는 객체의 상태 전환을 구동하는 재생 제어 작업을 나타냅니다. 여기서 단일 화살촉의 화살표(or Arc)는 동기식 메서드 호출이고 이중 화살촉이 있는 화살표(or Arc)는 비동기식 메..
-
[ Android ] 사진 미리보기 - Camera 이용Android/멀티미디어 2020. 3. 17. 17:02
CatServant 옆의 사진은 카메라 미리보기를 구현한 사진입니다. 현재는 android.hardware.Camera 가 deprecated 되어서 Camera2를 이용해야 합니다. 그리고 카메라 화면이 회전되어서 나오기 때문에 똑바르게 회전되어 나오도록 코드를 추가해 주었지만 미리보기 화면은 회전되지 않은 상태로 나옵니다. SurfaceView 카메라 미리 보기를 추가하고 싶은 경우 SurfaceView를 사용하면 됩니다. SurfaceView를 상속하는 새로운 클래스를 만들고 해당 클래스가 SurfaceHolder의 Callback Interface를 구현하도록 합니다. 여기서 SurfaceView는 껍데기 역할만 하고 실제 컨트롤은 SurfaceHolder가 담당합니다. 그리고 뷰의 상태 변화를 ..