본문 바로가기

Android111

[Java][Android] Wear(웨어러블) 앱 프로젝트 만들어보기 안녕하세요. 오늘은 안드로이드 Wear 앱 프로젝트를 만드는 방법에 대해서 알아보겠습니다. 안드로이드 Wear 앱 프로젝트는 Wear OS를 사용하는데요. 여기서 Wear OS란 구글의 안드로이드를 스마트워치에 맞게 조정한 운영 체제 입니다. 스마트워치에 들어가는 안드로이드 앱을 만드는 것이죠. 자세한 내용은 아래 공식문서에서 보실 수 있습니다. https://developer.android.com/training/wearables Wear OS 개요 | Android 개발자 | Android Developers Wear OS 개요 Wear OS by Google을 사용하면 사용자가 연결을 유지한 상태로 작업을 수행하고 자신을 표현할 수 있는 앱을 작성할 수 있습니다. Wear OS는 Android를 기.. 2022. 12. 10.
[Java][Android] 화면 회전(가로, 세로 모드) 막기 안녕하세요. 오늘은 안드로이드에서 화면 회전을 막는 방법에 대해 알아보겠습니다. 스마트폰을 옆으로 기울이게 되면 어플이 가로 모드로 배치되게 됩니다. 미리 그것에 대한 대비가 되어 있었다면 문제가 없겠지만 그렇지 않다면 이미지와 레이아웃이 다 깨지게 되죠. 이런 상황이라면 아예 가로, 세로 모드를 고정시켜야 합니다. 가로, 세로 모드를 고정 시키는 방법은 간단하게 구현할 수 있습니다. 바로 AndroidManifest.xml 파일에 android:screenOrientation="" 위 코드를 넣으면 됩니다. 위 코드에 적용될 수 있는 값은 아래와 같습니다. 그럼 예시로 한 번 적용해보도록 하겠습니다. AndroidManifest.xml AndroidManifest.xml 파일에 android:scree.. 2022. 11. 25.
[Java][Android] 간단한 룰렛(원판 돌리기) 만들기 안녕하세요. 오늘은 간단한 룰렛을 만드는 방법에 대해서 알아보겠습니다. 먼저 라이브러리를 등록해줍니다. build.gradle(Module:프로젝트명.app) 아래처럼 dependencies에 코드를 추가해줍니다. dependencies { . . . implementation 'com.github.mmoamenn:LuckyWheel_Android:0.3.0' } setting.gradle(프로젝트명) 아래처럼 repositories 안에 maven { url 'http://jitpck.io' }를 추가해줍니다. dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories {.. 2022. 11. 10.
[Kotlin][Android] Jetpack Compose에서 폰트 추가해서 사용하기 안녕하세요. 오늘은 Jetpack Compose를 사용해서 만든 레이아웃에 추가한 폰트를 적용하는 방법에 대해 알아보겠습니다. 1. 폰트 추가하기 'res' 폴더를 우클릭해서 New > Android Resource Directory 를 클릭합니다. 디렉토리 이름은 'font'로 지정하고 리소스타입도 font를 선택합니다. 드래그 앤 드롭해서 사용할 폰트들을 폰트폴더에 넣습니다. (폰트 파일 이름은 반드시 '소문자' , '언더바(_)'만 사용합니다.) 아래와 같은 새 창이 뜨면 Refactor를 클릭합니다. 여기까지 하면 폰트 폴더에 파일이 추가된 것을 볼 수 있습니다. 2. 폰트 사용하기 compose 앱 프로젝트를 생성하면 ui라는 폴더가 생성되고 그 안에 theme이라는 폴더가 있습니다. 이 폴더에.. 2022. 11. 3.
[JAVA][Android] ViewFlipper 사용해보기 안녕하세요. 오늘은 안드로이드에서 ViewFlipper를 사용해보도록 하겠습니다. 시작하기에 앞서 ViewFlipper에 대해서 먼저 간단히 알아봅시다. ViewFlipper란? 여러 화면을 한 화면에서 볼 수 있게 해주는 view 컨테이너 View Animator의 일종으로 Frame Layout 을 상속받아 만들어졌습니다. 컴퓨터나 스마트폰 사진 앱에서 사진을 한장씩 넘기면서 보는 뷰어 기능이라고 보시면 됩니다. (자세한 내용은 아래 링크를 통해 확인할 수 있습니다.) https://developer.android.com/reference/android/widget/ViewFlipper ViewFlipper | Android Developers android.net.wifi.hotspot2.omadm.. 2022. 10. 26.
[JAVA][Android] EditText 키보드 엔터(Enter)키 기능 변경 안녕하세요. 오늘은 안드로이드 EditText 키보드 엔터(Enter)키의 기능을 변경하는 방법에 대해서 알아보겠습니다. [Android] EditText 키보드 엔터(Enter)키 기능 변경 안드로이드에서 EditText에 텍스트를 입력할 때 소프트 키보드의 엔터키가 상황에 따라 다르게 나타나는 것을 종종 볼 수 있습니다. 예를 들어 아래의 그림처럼 인터넷 브라우져 주소창이면 '이동' 또는 '검색' 으로, 검색창이면 '검색'으로, 정보 입력창이면 '완료' 등을 볼 수 있죠. 이렇게 소프트 키보드의 엔터키를 상황에 맞게 바꿔주는 방법에 대해서 알아보도록 하겠습니다. 해당 설정은 xml 코드와 java 코드에서 설정 가능한데요.(둘 중 하나만 설정해도 됨) 아래는 그 예시 입니다. xml 코드 예시 Jav.. 2022. 10. 11.
[Java][Android] Alert Dialog 다이얼로그 띄우고 Back 버튼 뒤로가기 막기 안녕하세요. 오늘은 안드로이드에서 간단한 다이얼로그를 띄워보고 뒤로가기 버튼을 막는 것까지 해보겠습니다. 먼저 xml 파일입니다. 버튼을 클릭하면 다이얼로그를 띄울 수 있도록 버튼을 만들었습니다. 다음으로 자바 파일입니다. // DialogTest.java public class DialogTest extends AppCompatActivity { Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog_test); button = findViewById(R.id.dialogBtn); button.setO.. 2022. 9. 28.
[Java][Android] 화면 꺼지지 않게 하기(켜짐 상태 유지) 안녕하세요. 오늘은 안드로이드에서 화면이 꺼지지 않게 하는 방법입니다. 동영상을 보거나 앱에서 무언가를 기다릴 때 화면이 꺼지지 않게 하려면 이 방법을 사용합니다. 자신이 사용하는 액티비티에서 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); // 화면 켜짐 유지 } } 위 코드처럼 onCreate 부분에서.. 2022. 9. 13.
[Java][Android] 화면이 회전 되었을 때 이전 액티비티의 데이터 유지하기 안녕하세요 오늘은 안드로이드 디바이스를 회전 했을 때, 데이터를 유지하는 방법에 대해 알아보겠습니다. 먼저 영상부터 함께 보겠습니다. 영상과 같이 기본적으로 안드로이드에서 화면을 회전 시키면 기존 액티비티가 지워지고 새로 다시 만들어지게 되는데요. 이때 이전 액티비티에서 입력 받았던 데이터들이 전부 사라지게 됩니다. 하지만 이 데이터를 저장할 수 있는 방법이 있는데요. 바로 매개변수 saveInstanceState에 이전 액티비티의 데이터를 Bundle 형태로 저장 후, onCreate() 함수에서 로딩해주면 화면이 회전 되어도 데이터를 그대로 유지시킬 수 있습니다. (저장된 데이터를 다시 불러옴) 이제 예제 함께 보겠습니다. 먼저 xml 파일입니다. 이번 예제에서는 화면의 [레벨 증가] 버튼과 [점수 .. 2022. 8. 29.