7월, 2020의 게시물 표시

Android JVM target 오류

이미지
사용 버전: Android Studio 4.0.1 사용 언어: Kotlin 1.3.72 ​ 안드로이드 JVM target 오류를 해결해 봅시다. ​ 컴파일 도중 다음과 같은 오류가 나올 때가 있습니다. Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1.6. Please specify proper '-jvm-target' option ​ 앱 용 build.gradle로 갑니다. compileOptions와 kotlinOptions를 아래와 같이 적어줍니다. 끝. 카테고리: Android

Python open().read()

이미지
사용 버전 : Python 3.6.8 사용 프로그램 : Atom 1.34.0 x64 ​ 파이썬 open().read()에 대해서 알아보겠습니다. open() 괄호에는 파일을 열 경로를, read() 괄호에는 읽을 데이터양을 적습니다. ​ open().read()는 파일을 열고, str 형식으로 읽습니다. "shakespeare.txt" 내용입니다. 이번에는 read에 읽을 데이터양을 설정한 뒤 실행해 보겠습니다. 다음과 같이 정해진 길이만큼만 읽어들였습니다. ​ 읽은 파일은 리스트가 아닌, 하나의 문자열로 취급됩니다. 끝. 카테고리: Standard Library, Python

Android Back Button 두 번 클릭 종료

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Back Button 두 번 클릭 종료하기를 알아보겠습니다. ​ ​ MainActivity에 onBackPressed()를 override 합니다. doubleBackPressed라는 변수도 만들어줍니다. onBackPressed를 수정해 줍니다. 2000L은 2 초를 의미합니다. 2초 안에 한 번 더 뒤로 버튼을 눌러야 합니다. 끝. 카테고리: Android

Android Custom IME(Input method editor) 만들기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Custom IME(Input method editor) 만들기를 해보겠습니다. ​ IME를 간단히 설명하면 키보드입니다. 키보드를 만들어봅시다. ​ ​ 키보드로 사용할 Custom View가 필요합니다. https://shwoghk14.blogspot.com/2020/07/android-custom-view.html Class를 하나 만듭니다.  저는 MyIMEservice로 만들었습니다. 아래와 같이 수정합니다. res 우 클릭 - New - Android resource File을 누릅니다. File name, Resource type을 설정합니다. 다음과 같이 적습니다. 그리고, manifests로 갑니다. <application> </application> 사이에 service를 넣습니다. 앱을 설치하고 실행합니다. 달라진 게 없습니다. 우리가 강제로 설정할 수 없습니다. 그 이유는 보안 문제 때문에 구글에서 막았습니다. 자, 이제 키보드를 설정해봅시다. ​ ​ 설정 - 언어 및 입력 가상 키보드 키보드 관리 우리가 만든 inAppKeyboard가 보입니다. Manifest의 label이 이름으로 사용되고, xml의 imeSubtypeLocale이 아래 작은 설명으로 사용됩니다. 다시 돌아와서 키보드 관리로 들어갑니다.

Android InApp Keyboard 만들기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 InApp Keyboard 만들기를 해보겠습니다. ​ 인앱 키보드를 만들기 전에 Custom View가 필요합니다. https://shwoghk14.blogspot.com/2020/07/android-custom-view.html 위의 글에서 아랫부분을 수정해야 합니다. 다음과 같이 수정합니다. Custom layout에 Id를 적용합니다. Keyboard를 적용할 Fragment로 갑니다. thisView는 제가 정의한 것이기 때문에 그냥 requireActivity() 사용하시면 됩니다. 끝. 카테고리: Android

Android Custom View 만들기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Custom View 만들기를 해보겠습니다. ​ Custom View는 사용자가 만든 View를 말합니다. ​ Custom View로 사용할 Class를 하나 만듭니다. 저는 InAppKeyboard로 만들겠습니다. 아래처럼 기본 Class를 수정합니다. ConstraintLayout을 적은 이유는 ConstraintLayout으로 사용하려고 적었습니다. 다른 View를 적으셔도 됩니다. layout에 해당 class에서 사용할 layout을 만듭니다. 저는 in_app_keyboard.xml로 만들었습니다. 디자인은 다음과 같습니다. 다시 InAppKeyboard로 돌아옵니다. init을 적습니다. inflate에 위에서 만든 layout을 적습니다. Custom View를 사용하고자 하는 layout에 일반 View처럼 추가합니다. 추가되었습니다. 끝. 카테고리: Android

Android Softkeyboard 숨기기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Softkeyboard 숨기기를 알아보겠습니다. Button을 누르면 Softkeyboard가 숨도록 만들겠습니다. Fragment에서 제어하는 방법은 다음과 같습니다. MainActivity에서 사용하는 방법은 다음과 같습니다. 끝. 카테고리: Android

Android Text Fields Softkeyboard 비활성 하기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Text Fields Softkeyboard 비활성 하기를 알아보겠습니다. Text Fields를 누르면 자동으로 Softkeyboard가 나타납니다. 눌러도 키보드가 자동으로 나타나지 않게 하려면, showSoftInputOnFocus를 사용합니다. 끝. 카테고리: Android

Android Actionbar 메뉴 버튼 만들기

이미지
사용 버전: Android Studio 4.0 사용 언어: Kotlin 1.3.72 ​ 안드로이드 Actionbar 메뉴 버튼 만들기 ​ 먼저, menu를 만듭니다. res 우 클릭 - New - Android Resource File 클릭 File name, Resource type을 설정하고 확인을 누릅니다. Menu Item을 추가해 줍니다. id와 title을 설정합니다. 사용하고 싶은 화면(onCreateView 또는 onCreate)에 setHasOptionsMenu()를 적습니다. onCreateOptionsMenu를 override 합니다. 그리고, onOptionsItemSelected를 override 합니다. 선택되었을 때의 행위를 나타냅니다. 실행합니다. 끝. 카테고리: Android