Kotlin AutoCompleteTextView에 포커스를 둔 채 키보드를 숨기기 키보드에 의한 인풋에 대해서, 자동으로 문자를 보완해 주는 기능을 갖추고 있던 EditText입니다. 일반적으로 Google의 에 준거한 드롭다운 메뉴를 작성하는 경우는 다음과 같은 구현을 합니다. res/layout/dropdown_menu.xml res/layout/item_dropdown_menu.xml 그건 그렇고, android:ellipsize="end"android:ellipsi... MaterialDesignAndroidStudio안드로이드자바Kotlin 머티리얼 디자인 도입 직후에 할 일 안드로이드 프로젝트에 머티리얼 디자인을 도입한 후에 할 일을 적는다. Android 프로젝트를 만든 후 Hello world에 대해 수행합니다. 머티리얼 디자인을 도입하기 위해, build.gradle 를 이하와 같이 기재합니다. build.gradle res/values/styles.xml 를 아래와 같이 기재합니다. res/layout/activity_main.xml 를 변경하여 표시를 ... 안드로이드MaterialDesign자바Kotlin Theme.MaterialComponents의 컬러 테마 색상 코드 표기 옆에 실제 색상을 넣습니다. 그리고 간결한 일본어로. 컬러 테마를 사용할 수 있습니다. 속성 설명 기본값 colorPrimary 앱에서 가장 많이 사용되는 색상. 표면색, 배경색 위에 그려집니다.#6200EE colorPrimaryVariant colorPrimary의 변형.#3700B3 colorOnPrimary colorPrimary 상의 텍스트/이미지의 색.#FFFFFF... 안드로이드MaterialDesignKotlin Collapsingtoolbarlayout에서 빠진 것 스크롤로 툴바를 접을 수있는 Collapsingtoolbarlayout이 있습니다. 외형이 멋지기 때문에 구현해 봅시다. activity_main.xml 레이아웃은 이런 식으로 ... Run! 오, 움직이는 움직이는 w 이것으로 슈퍼 오징어하는 앱을 만드는 것이다! 그거・・・하지만 뭔가 이상해・・・? 왜 마지막 목록이 보이지 않아! 잘 보면 Toolbar의 크기 정도가 보이지 않는다! 레이아... 안드로이드MaterialDesignKotlin TextInputLayout을 사용하여 좋은 느낌의 텍스트 입력 구현 TextInputLayout 는 Android Design Support Library에 포함된 텍스트 입력 기능을 제공하는 View입니다. MaterialDesign의 TextFields를 실현하기 위해서 사용됩니다. 이번에는 이 TextInputLayout에 대해 공부했으므로 꼭 참고해 주시면 감사하겠습니다. 레이아웃 xml 만들기 activity_main.xml 상위 View 에 Tex... TextInputLayoutMaterialDesignAndroidStudio안드로이드Kotlin iOS의 하프 모달을 Android에서도 구현해 보았다 (Kotlin + BottomSheetBehavior) BottomSheetBehavior를 Kotlin으로 구현한 기사는 별로 없는 느낌이 들기 때문에 기사를 써 보았습니다. 첫 기사 때문에, 이르지 않는 점이 많이 있다고 생각합니다만, 누군가의 참고가 된다고 생각하고 있습니다. 업무로 Android에도 iOS의 하프 모달을 구현하게 된 분 (자신) macOS Mojave 10.14.4 Android Studio 3.4.1 이미지는 Google... 안드로이드MaterialDesignKotlinBottomSheetBehavior 【Kotlin】Navigation(AAC)와 UIComponent를 연계한다 앞으로는 위의 기사에서 업데이트하겠습니다. NavigationUI 클래스를 사용하는 것으로 AAC의 Navigation과 후술하는 UIComponent를 간단하게 연계할 수 있으므로 비망록으로서 기사로 합니다. NavigationUI 클래스에는,Top App Bar , Navigation Drawer , Bottom Navigation 와 Navigation 을 연동하기 위한 메소드가 준비되... MaterialDesignnavigationNavigationUIAndroidArchitectureComponentsKotlin NavigationView의 구분선 높이 변경 Design Support Library의 NavigationView를 사용하여 네비게이션 드로어를 구현했으며 각 그룹에 표시되는 구분선(separator)의 높이를 조정하고 싶다는 요구가 있었습니다. Style이나 Attribute로 간단하게 실현할 수 있을 것이라고 생각하고 있었습니다만, 조금 빠졌기 때문에 메모합니다. NavigationView 의 기본적인 구현은 를 참고로 진행합니다.... 안드로이드MaterialDesignKotlin TextInputLayout - password visibility toggle의 디자인 변경 Android의 머티리얼 디자인에 따라 입력 필드를 만드는 데 Android Design Support Library의 TextInputLayout를 사용하는 경우가 많습니다. 이것에는 패스워드의 표시/비표시를 전환하는 기능( password visibility toggle )이 갖추어져 있습니다만, 디자인을 변경할 때에 조금 빠졌으므로 메모합니다. 비밀번호 표시/숨기기 전환 버튼( pass... 안드로이드MaterialDesignKotlin Spring Boot Thymeleaf View의 일부를 동적으로 변경 선택 상자에서 선택한 내용에 따라 연결되는 목록을 동적으로 (화면을 다시로드하지 않고 부분적으로) 변경합니다. Spring Boot Thymleaf Kotlin 선택한 강좌에 따라 개최 시간이 바뀌는 예 Thymleaf의 fragment를 이용해, 일부의 DOM만 렌더링 시킨다. 또한 선택 상자를 눌렀을 때의 요청에 대해서는 ajax를 사용합니다. 처리 흐름 View에서 selectBox 값... spring-bootKotlinThymeleaf 【Java/Kotlin】unbescape에서 HTML5 대응의 이스케이프(사니타이즈) 처리를 한다【SpringBoot】 HTML 템플릿의 매크로 문자열을 매개 변수로 바꿀 때 이스케이프 처리를 수행합니다. 이 기사에서는 unbescape를 사용합니다. HTML5 대응이 명시되어 있지 않습니다만, Apache Commons Text 를 사용하는 방법등도 있습니다. 이 라이브러리는 spring-boot-starter-thymeleaf 에 들어 있었으므로, SpringBoot 관련의 것을 넣고 있으면 아무것도 할 ... spring-bootunbescape자바KotlinThymeleaf Gradle + Kotlin + Thymeleaf에서 Hello World 평소에는 toB의 업무 시스템을 만들고 있습니다. 사내에서의 기술의 업데이드가 없기 때문에 개인적으로 여러가지 배우려고 생각해, 처음에 Spring Boot로 간단한 프로젝트를 만들려고 했습니다만 생각보다 걸리거나 했으므로 비망도 겸해 작성해 보았습니다. Spring Initializr에서 프로젝트 만들기 Template 만들기 아래의 순서대로 설정합니다. ■ Project Gradle Pr... spring-bootgradleideaKotlinThymeleaf Kotlin + Spring Boot 2.1.0 + Thymeleaf + IntelliJ IDEA + Gradle에서 Hello World IntelliJ IDEA에서 Kotlin + Spring Boot 2.1.0 + Thymeleaf를 사용하여 Hello World를 표시하는 프로그램을 작성합니다. IntelliJ IDEA 커뮤니티 버전 2018.2.5 Kotlin plugin version 1.3.0-release-IJ2018.2-1 Gradle 4.8.1 Spring Boot 2.1.0 Thymeleaf 3.0.11 에서... spring-bootHelloWorldIntelliJKotlinThymeleaf 【클래스 다이어그램】kotlin.collections 패키지의 최상위 인터페이스 Iterable, Collection 시스템 ListIterator -up-|> Iterator MutableIterator -left-|> Iterator Collection -up-|> Iterable List -up-|> Collection Set -up-|> Collection MutableIterable -left-|> Iterable MutableCollection -left-|>... 컬렉션uml클래스 다이어그램컬렉션Kotlin Room을 암호화해보세요 에도 있습니다만, 개인정보를 취급하는 경우, 데이타베이스의 암호화가 필요할 것 같았기 때문에, Room은 암호화할 수 있는지 조사했는데 SQLCipher라는 라이브러리가 눈에 띄었습니다. 을 참고로 build.gradle(app) 에 추가합니다. build.gradle(app) 데이터베이스를 조작하는 부분 UserDatabase.kt 에 있는 대로, DeviceFileExplorer에서/da... sqliteRoom안드로이드KotlinSQLCipher 【Android】니코니코의 코멘트풍 애니메이션을 구현하는【Animation】 디자이너 "여기 버튼 누르고 싶어지는 애니메이션하자!" 라는 것으로, 니코니코의 코멘트풍 애니메이션을 구현하기로 했다. 생각보다 간단하게 할 수 있었으므로, 실장 방법을 소개. 이런 느낌의 것을 만들거야. 전제로서, 루트의 ViewGroup은 ConstraintLayout을 사용하고 있다. 화면 크기 취득 TextView 생성 생성 된 TextView에 제약 조건 설정 오른쪽에서 왼쪽으로 이... 안드로이드Layout애니메이션Kotlin Android 앱에서 자연어 처리(DialogFlow) 이전에는 Android 앱에서 DialogFlow를 사용하여 자연 언어 처리 기능을 구현했습니다. DialogFlow를 구현하기 위한 SDK가 Android용으로는 없고, 상당히 끼웠으므로 메모로서 투고했습니다. 조금이라도 도움이 되었으면 좋겠습니다. Android 앱에서 DialogFlow를 호출하기 위해 Cloud function을 사용합니다. Cloud function을 사이에 두어 A... Firebasedialogflow안드로이드자연 언어 처리Kotlin View Binding 설정 및 사용(Kotlin) View Binding 설정 방법과 사용법을 소개합니다. 뷰를 조작하는 코드를 간단하게 기술할 수 있는 기능입니다. 각 XML 레이아웃 파일에 대해 바인딩 클래스가 자동으로 생성되며 대상 레이아웃 내에서 ID가 있는 모든 뷰에 대한 참조가 있습니다. View Binding은 findViewById의 상위 호환이라고 할 수 있습니다. 널 안전 View Binding은 뷰를 참조하는 코드를 자동... 안드로이드JetpackViewBindingKotlin Android : ActivityResultContract를 사용하여 이미지 선택 앱에서 여러 이미지 선택 (EXTRA_ALLOW_MULTIPLE) ActivityResultContract를 사용하여 외부 이미지 선택 앱을 실행하여 사용자가 여러 이미지를 선택하게 합니다. Android 표준 이미지 선택 앱이 아닌 Google Photos를 실행하여 여러 이미지를 선택하려면 다음 도움말을 참조하세요. 외부 이미지 선택 앱에서 이미지를 선택하고 이미지를 읽으려면 READ_EXTERNAL_STORAGE 권한이 필요하지 않습니다. 이미지 선택... 안드로이드Kotlin [Kotlin] enum의 기술 예 (인텐트에서 enum을 전달한다) enum을 사용하면 코드를 읽을 수 있고 실수를 줄일 수 있습니다. 이번에는 enum으로 정의된 데이터를 2개의 Activity간에 전달하는 샘플 코드를 공유하고 싶습니다. enum을 분기시키는 when()을 기술하고 싶을 때는 when(~){ 까지 입력한 시점에서 「Alt+Enter」를 누르면 enum의 항목을 자동 입력해 줍니다... Kotlin DatePicker에서 생년월일을 입력할 수 있도록 허용 SDK 버전: 30 Android 버전 : 9.0 Android DatePicker로 조사하면 거의 나오는 것이 캘린더 형식의 것으로 나는 상당히 곤란했습니다. 날짜를 선택할 때는 별도로 캘린더 형식에서도 문제 없다고 생각합니다만, 생년월일의 선택의 경우는 스피너, 혹은 드럼 롤이라고 불리는 타입의 형식이 훨씬 선택이 편합니다. 참고 : 이런 식으로 EditText를 클릭하면 생년월일을 선택... 안드로이드KotlinDatePickerDialogDatePicker Navigation 설정 및 사용(Kotlin) Navigation 설정 방법과 사용법을 소개합니다. 프래그먼트 간의 전이와 같은 다양한 네비게이션 구현에 유용합니다. Android Studio: Arctic Fox | 2020.3.1 Gradle: 7.0.2 Gradle plugin: 7.0.0 Navigation: 2.3.5 Navigation 설치 루트 바로 아래의 "build.gradle"에 Navigation 버전을 추가합니다. ... 안드로이드JetpacknavigationKotlin MockK에서 최상위 함수를 모의 에서 최상위 함수를 모의하는 방법에 대한 참고 사항을 설명합니다. 이런 log 함수가 있었을 경우. Ext.kt 이런 느낌으로 쓰면 OK였습니다. ExtTest.kt ① mockkStatic 를 사용하여 최상위 함수가 정의된 클래스를 지정합니다. 이번 경우에는 package 가 com.example 파일 이름이 Ext.kt 그래서, com.example.ExtKt 를 지정해 주면 OK. ② ... 안드로이드MockKKotlin 쉽게 SnackBar로 돌아가기 버튼 동작(ActionButton) 추가 스낵바의 뒤로 버튼의 동작(액션 버튼)이 안내외 간단하게 실장할 수 있게 되었기 때문에 여기에 메모 대신에 보존해 두기로 했다. 의외로 간단하고 알기 쉽고 정리되어 있다고 생각했으므로, 꼭 사용해 보길 바란다. 스낵바 만들기 Snackbar.make([표시되는 위치],[표시되는 문자], [표시되는 길이]) 액션 버튼 만들기 .setAction([액션 버튼에 표시되는 문자]){ [버튼을 눌렀을... 안드로이드SnackBarKotlin Kotlin > Ktor > Auto Reload 사용 다음과 같은 느낌으로 소스 변경에 Auto Reload가 걸릴 수 있습니다. application.conf에 다음을 추가합니다. development: true 로 한다 watch: 모니터링 대상. 이 경우에는 /build/classes가 감시 대상이 된다. application.conf watch는 그 밖에도 다음과 같이 설정할 수 있는 모양 terminal에서 다음을 수행하여 소스가 변경... KtorKotlin Kotlin > ktlint 설정 ktlint 플러그인을 사용하는 경우 버전 맞추기 이번에는 플러그인에 맞추어 0.42.0을 넣습니다. ※ 그럼 플러그인으로의 사용을 추천 되고 있습니다만, 이번에는 ktlint의 버전을 명시적으로 지정하고 싶었기 때문에 ↓의 방법을 취하고 있습니다. build.gradle의 경우 build.gradle build.gradle build.gradle.kts의 경우 build.gradle.kts... Kotlinktlint Kotlin > Ktor > Docker에서 Hello world! Web Application을 Docker에서 작동하도록 합니다. (클라우드에서 배포하는 데 사용할 수 있습니다) 에서 새 프로젝트 만들기 ※ IntelliJ에서도 신규 프로젝트는 만들 수 있습니다만, obsolete(폐지)가 되어 있으므로 비추천입니다. 루트 폴더에 Dockerfile를 만듭니다. Dockerfile debug 시도로 시작합니다. 루트 폴더에 docker-compose.ym... 도커KtorKotlin Jetpack Compose for Web을 사용해 보았습니다. 사용법이나 감상을 써 갑니다. ↓는 샘플입니다. Reactive web UIs for Kotlin, based on Google's modern toolkit and brought to you by JetBrains Compose for Web simplifies and accelerates UI development for web applications, and aims to enable ... JetpackComposeKotlin Android: ActivityResultContract를 사용하여 이미지 선택 앱에서 이미지 선택 ActivityResultContract를 사용하여 외부 이미지 선택 앱을 시작하고 사용자가 이미지를 선택하게 합니다. Android 표준 이미지 선택 앱이 아닌 Google Photos 앱을 실행하여 이미지를 선택하려면 아래 도움말을 참조하세요. 여러 이미지 선택을 지원하려면 아래 문서를 참조하십시오. 외부 이미지 선택 앱에서 이미지를 선택하고 이미지를 읽으려면 READ_EXTERNAL_S... 안드로이드Kotlin 이전 기사 보기
AutoCompleteTextView에 포커스를 둔 채 키보드를 숨기기 키보드에 의한 인풋에 대해서, 자동으로 문자를 보완해 주는 기능을 갖추고 있던 EditText입니다. 일반적으로 Google의 에 준거한 드롭다운 메뉴를 작성하는 경우는 다음과 같은 구현을 합니다. res/layout/dropdown_menu.xml res/layout/item_dropdown_menu.xml 그건 그렇고, android:ellipsize="end"android:ellipsi... MaterialDesignAndroidStudio안드로이드자바Kotlin 머티리얼 디자인 도입 직후에 할 일 안드로이드 프로젝트에 머티리얼 디자인을 도입한 후에 할 일을 적는다. Android 프로젝트를 만든 후 Hello world에 대해 수행합니다. 머티리얼 디자인을 도입하기 위해, build.gradle 를 이하와 같이 기재합니다. build.gradle res/values/styles.xml 를 아래와 같이 기재합니다. res/layout/activity_main.xml 를 변경하여 표시를 ... 안드로이드MaterialDesign자바Kotlin Theme.MaterialComponents의 컬러 테마 색상 코드 표기 옆에 실제 색상을 넣습니다. 그리고 간결한 일본어로. 컬러 테마를 사용할 수 있습니다. 속성 설명 기본값 colorPrimary 앱에서 가장 많이 사용되는 색상. 표면색, 배경색 위에 그려집니다.#6200EE colorPrimaryVariant colorPrimary의 변형.#3700B3 colorOnPrimary colorPrimary 상의 텍스트/이미지의 색.#FFFFFF... 안드로이드MaterialDesignKotlin Collapsingtoolbarlayout에서 빠진 것 스크롤로 툴바를 접을 수있는 Collapsingtoolbarlayout이 있습니다. 외형이 멋지기 때문에 구현해 봅시다. activity_main.xml 레이아웃은 이런 식으로 ... Run! 오, 움직이는 움직이는 w 이것으로 슈퍼 오징어하는 앱을 만드는 것이다! 그거・・・하지만 뭔가 이상해・・・? 왜 마지막 목록이 보이지 않아! 잘 보면 Toolbar의 크기 정도가 보이지 않는다! 레이아... 안드로이드MaterialDesignKotlin TextInputLayout을 사용하여 좋은 느낌의 텍스트 입력 구현 TextInputLayout 는 Android Design Support Library에 포함된 텍스트 입력 기능을 제공하는 View입니다. MaterialDesign의 TextFields를 실현하기 위해서 사용됩니다. 이번에는 이 TextInputLayout에 대해 공부했으므로 꼭 참고해 주시면 감사하겠습니다. 레이아웃 xml 만들기 activity_main.xml 상위 View 에 Tex... TextInputLayoutMaterialDesignAndroidStudio안드로이드Kotlin iOS의 하프 모달을 Android에서도 구현해 보았다 (Kotlin + BottomSheetBehavior) BottomSheetBehavior를 Kotlin으로 구현한 기사는 별로 없는 느낌이 들기 때문에 기사를 써 보았습니다. 첫 기사 때문에, 이르지 않는 점이 많이 있다고 생각합니다만, 누군가의 참고가 된다고 생각하고 있습니다. 업무로 Android에도 iOS의 하프 모달을 구현하게 된 분 (자신) macOS Mojave 10.14.4 Android Studio 3.4.1 이미지는 Google... 안드로이드MaterialDesignKotlinBottomSheetBehavior 【Kotlin】Navigation(AAC)와 UIComponent를 연계한다 앞으로는 위의 기사에서 업데이트하겠습니다. NavigationUI 클래스를 사용하는 것으로 AAC의 Navigation과 후술하는 UIComponent를 간단하게 연계할 수 있으므로 비망록으로서 기사로 합니다. NavigationUI 클래스에는,Top App Bar , Navigation Drawer , Bottom Navigation 와 Navigation 을 연동하기 위한 메소드가 준비되... MaterialDesignnavigationNavigationUIAndroidArchitectureComponentsKotlin NavigationView의 구분선 높이 변경 Design Support Library의 NavigationView를 사용하여 네비게이션 드로어를 구현했으며 각 그룹에 표시되는 구분선(separator)의 높이를 조정하고 싶다는 요구가 있었습니다. Style이나 Attribute로 간단하게 실현할 수 있을 것이라고 생각하고 있었습니다만, 조금 빠졌기 때문에 메모합니다. NavigationView 의 기본적인 구현은 를 참고로 진행합니다.... 안드로이드MaterialDesignKotlin TextInputLayout - password visibility toggle의 디자인 변경 Android의 머티리얼 디자인에 따라 입력 필드를 만드는 데 Android Design Support Library의 TextInputLayout를 사용하는 경우가 많습니다. 이것에는 패스워드의 표시/비표시를 전환하는 기능( password visibility toggle )이 갖추어져 있습니다만, 디자인을 변경할 때에 조금 빠졌으므로 메모합니다. 비밀번호 표시/숨기기 전환 버튼( pass... 안드로이드MaterialDesignKotlin Spring Boot Thymeleaf View의 일부를 동적으로 변경 선택 상자에서 선택한 내용에 따라 연결되는 목록을 동적으로 (화면을 다시로드하지 않고 부분적으로) 변경합니다. Spring Boot Thymleaf Kotlin 선택한 강좌에 따라 개최 시간이 바뀌는 예 Thymleaf의 fragment를 이용해, 일부의 DOM만 렌더링 시킨다. 또한 선택 상자를 눌렀을 때의 요청에 대해서는 ajax를 사용합니다. 처리 흐름 View에서 selectBox 값... spring-bootKotlinThymeleaf 【Java/Kotlin】unbescape에서 HTML5 대응의 이스케이프(사니타이즈) 처리를 한다【SpringBoot】 HTML 템플릿의 매크로 문자열을 매개 변수로 바꿀 때 이스케이프 처리를 수행합니다. 이 기사에서는 unbescape를 사용합니다. HTML5 대응이 명시되어 있지 않습니다만, Apache Commons Text 를 사용하는 방법등도 있습니다. 이 라이브러리는 spring-boot-starter-thymeleaf 에 들어 있었으므로, SpringBoot 관련의 것을 넣고 있으면 아무것도 할 ... spring-bootunbescape자바KotlinThymeleaf Gradle + Kotlin + Thymeleaf에서 Hello World 평소에는 toB의 업무 시스템을 만들고 있습니다. 사내에서의 기술의 업데이드가 없기 때문에 개인적으로 여러가지 배우려고 생각해, 처음에 Spring Boot로 간단한 프로젝트를 만들려고 했습니다만 생각보다 걸리거나 했으므로 비망도 겸해 작성해 보았습니다. Spring Initializr에서 프로젝트 만들기 Template 만들기 아래의 순서대로 설정합니다. ■ Project Gradle Pr... spring-bootgradleideaKotlinThymeleaf Kotlin + Spring Boot 2.1.0 + Thymeleaf + IntelliJ IDEA + Gradle에서 Hello World IntelliJ IDEA에서 Kotlin + Spring Boot 2.1.0 + Thymeleaf를 사용하여 Hello World를 표시하는 프로그램을 작성합니다. IntelliJ IDEA 커뮤니티 버전 2018.2.5 Kotlin plugin version 1.3.0-release-IJ2018.2-1 Gradle 4.8.1 Spring Boot 2.1.0 Thymeleaf 3.0.11 에서... spring-bootHelloWorldIntelliJKotlinThymeleaf 【클래스 다이어그램】kotlin.collections 패키지의 최상위 인터페이스 Iterable, Collection 시스템 ListIterator -up-|> Iterator MutableIterator -left-|> Iterator Collection -up-|> Iterable List -up-|> Collection Set -up-|> Collection MutableIterable -left-|> Iterable MutableCollection -left-|>... 컬렉션uml클래스 다이어그램컬렉션Kotlin Room을 암호화해보세요 에도 있습니다만, 개인정보를 취급하는 경우, 데이타베이스의 암호화가 필요할 것 같았기 때문에, Room은 암호화할 수 있는지 조사했는데 SQLCipher라는 라이브러리가 눈에 띄었습니다. 을 참고로 build.gradle(app) 에 추가합니다. build.gradle(app) 데이터베이스를 조작하는 부분 UserDatabase.kt 에 있는 대로, DeviceFileExplorer에서/da... sqliteRoom안드로이드KotlinSQLCipher 【Android】니코니코의 코멘트풍 애니메이션을 구현하는【Animation】 디자이너 "여기 버튼 누르고 싶어지는 애니메이션하자!" 라는 것으로, 니코니코의 코멘트풍 애니메이션을 구현하기로 했다. 생각보다 간단하게 할 수 있었으므로, 실장 방법을 소개. 이런 느낌의 것을 만들거야. 전제로서, 루트의 ViewGroup은 ConstraintLayout을 사용하고 있다. 화면 크기 취득 TextView 생성 생성 된 TextView에 제약 조건 설정 오른쪽에서 왼쪽으로 이... 안드로이드Layout애니메이션Kotlin Android 앱에서 자연어 처리(DialogFlow) 이전에는 Android 앱에서 DialogFlow를 사용하여 자연 언어 처리 기능을 구현했습니다. DialogFlow를 구현하기 위한 SDK가 Android용으로는 없고, 상당히 끼웠으므로 메모로서 투고했습니다. 조금이라도 도움이 되었으면 좋겠습니다. Android 앱에서 DialogFlow를 호출하기 위해 Cloud function을 사용합니다. Cloud function을 사이에 두어 A... Firebasedialogflow안드로이드자연 언어 처리Kotlin View Binding 설정 및 사용(Kotlin) View Binding 설정 방법과 사용법을 소개합니다. 뷰를 조작하는 코드를 간단하게 기술할 수 있는 기능입니다. 각 XML 레이아웃 파일에 대해 바인딩 클래스가 자동으로 생성되며 대상 레이아웃 내에서 ID가 있는 모든 뷰에 대한 참조가 있습니다. View Binding은 findViewById의 상위 호환이라고 할 수 있습니다. 널 안전 View Binding은 뷰를 참조하는 코드를 자동... 안드로이드JetpackViewBindingKotlin Android : ActivityResultContract를 사용하여 이미지 선택 앱에서 여러 이미지 선택 (EXTRA_ALLOW_MULTIPLE) ActivityResultContract를 사용하여 외부 이미지 선택 앱을 실행하여 사용자가 여러 이미지를 선택하게 합니다. Android 표준 이미지 선택 앱이 아닌 Google Photos를 실행하여 여러 이미지를 선택하려면 다음 도움말을 참조하세요. 외부 이미지 선택 앱에서 이미지를 선택하고 이미지를 읽으려면 READ_EXTERNAL_STORAGE 권한이 필요하지 않습니다. 이미지 선택... 안드로이드Kotlin [Kotlin] enum의 기술 예 (인텐트에서 enum을 전달한다) enum을 사용하면 코드를 읽을 수 있고 실수를 줄일 수 있습니다. 이번에는 enum으로 정의된 데이터를 2개의 Activity간에 전달하는 샘플 코드를 공유하고 싶습니다. enum을 분기시키는 when()을 기술하고 싶을 때는 when(~){ 까지 입력한 시점에서 「Alt+Enter」를 누르면 enum의 항목을 자동 입력해 줍니다... Kotlin DatePicker에서 생년월일을 입력할 수 있도록 허용 SDK 버전: 30 Android 버전 : 9.0 Android DatePicker로 조사하면 거의 나오는 것이 캘린더 형식의 것으로 나는 상당히 곤란했습니다. 날짜를 선택할 때는 별도로 캘린더 형식에서도 문제 없다고 생각합니다만, 생년월일의 선택의 경우는 스피너, 혹은 드럼 롤이라고 불리는 타입의 형식이 훨씬 선택이 편합니다. 참고 : 이런 식으로 EditText를 클릭하면 생년월일을 선택... 안드로이드KotlinDatePickerDialogDatePicker Navigation 설정 및 사용(Kotlin) Navigation 설정 방법과 사용법을 소개합니다. 프래그먼트 간의 전이와 같은 다양한 네비게이션 구현에 유용합니다. Android Studio: Arctic Fox | 2020.3.1 Gradle: 7.0.2 Gradle plugin: 7.0.0 Navigation: 2.3.5 Navigation 설치 루트 바로 아래의 "build.gradle"에 Navigation 버전을 추가합니다. ... 안드로이드JetpacknavigationKotlin MockK에서 최상위 함수를 모의 에서 최상위 함수를 모의하는 방법에 대한 참고 사항을 설명합니다. 이런 log 함수가 있었을 경우. Ext.kt 이런 느낌으로 쓰면 OK였습니다. ExtTest.kt ① mockkStatic 를 사용하여 최상위 함수가 정의된 클래스를 지정합니다. 이번 경우에는 package 가 com.example 파일 이름이 Ext.kt 그래서, com.example.ExtKt 를 지정해 주면 OK. ② ... 안드로이드MockKKotlin 쉽게 SnackBar로 돌아가기 버튼 동작(ActionButton) 추가 스낵바의 뒤로 버튼의 동작(액션 버튼)이 안내외 간단하게 실장할 수 있게 되었기 때문에 여기에 메모 대신에 보존해 두기로 했다. 의외로 간단하고 알기 쉽고 정리되어 있다고 생각했으므로, 꼭 사용해 보길 바란다. 스낵바 만들기 Snackbar.make([표시되는 위치],[표시되는 문자], [표시되는 길이]) 액션 버튼 만들기 .setAction([액션 버튼에 표시되는 문자]){ [버튼을 눌렀을... 안드로이드SnackBarKotlin Kotlin > Ktor > Auto Reload 사용 다음과 같은 느낌으로 소스 변경에 Auto Reload가 걸릴 수 있습니다. application.conf에 다음을 추가합니다. development: true 로 한다 watch: 모니터링 대상. 이 경우에는 /build/classes가 감시 대상이 된다. application.conf watch는 그 밖에도 다음과 같이 설정할 수 있는 모양 terminal에서 다음을 수행하여 소스가 변경... KtorKotlin Kotlin > ktlint 설정 ktlint 플러그인을 사용하는 경우 버전 맞추기 이번에는 플러그인에 맞추어 0.42.0을 넣습니다. ※ 그럼 플러그인으로의 사용을 추천 되고 있습니다만, 이번에는 ktlint의 버전을 명시적으로 지정하고 싶었기 때문에 ↓의 방법을 취하고 있습니다. build.gradle의 경우 build.gradle build.gradle build.gradle.kts의 경우 build.gradle.kts... Kotlinktlint Kotlin > Ktor > Docker에서 Hello world! Web Application을 Docker에서 작동하도록 합니다. (클라우드에서 배포하는 데 사용할 수 있습니다) 에서 새 프로젝트 만들기 ※ IntelliJ에서도 신규 프로젝트는 만들 수 있습니다만, obsolete(폐지)가 되어 있으므로 비추천입니다. 루트 폴더에 Dockerfile를 만듭니다. Dockerfile debug 시도로 시작합니다. 루트 폴더에 docker-compose.ym... 도커KtorKotlin Jetpack Compose for Web을 사용해 보았습니다. 사용법이나 감상을 써 갑니다. ↓는 샘플입니다. Reactive web UIs for Kotlin, based on Google's modern toolkit and brought to you by JetBrains Compose for Web simplifies and accelerates UI development for web applications, and aims to enable ... JetpackComposeKotlin Android: ActivityResultContract를 사용하여 이미지 선택 앱에서 이미지 선택 ActivityResultContract를 사용하여 외부 이미지 선택 앱을 시작하고 사용자가 이미지를 선택하게 합니다. Android 표준 이미지 선택 앱이 아닌 Google Photos 앱을 실행하여 이미지를 선택하려면 아래 도움말을 참조하세요. 여러 이미지 선택을 지원하려면 아래 문서를 참조하십시오. 외부 이미지 선택 앱에서 이미지를 선택하고 이미지를 읽으려면 READ_EXTERNAL_S... 안드로이드Kotlin 이전 기사 보기