반응형

분류 전체보기 492

Kotlin # Android 전체에서 context에 접근할 수 있도록 만들기

Android에서는 drawable.xml나 string.xml의 리소스를 가지고 오려면 반드시 context를 거쳐야만 해당 리소스들을 가져올 수 있는 귀찮은 점이 있다. 이는 MVVM패턴 속에 context를 인자로 넘겨주지 않기 때문이다. 따라서 매번 context를 가져오기 귀찮으니, Application에서 context를 가져올 수 있도록 구현해두고 필요할 때 마다 context에 접근할 수 있도록 만들자. 즉, 앱 전체에서 사용할 수 있는 context를 만들어주는 것이다. ※ 참고 Context에 접근하여 String을 가져온다 == values파일의 strings.xml에 쓰여진 name을 가져온다 그런데 여기서 name값은 내부적으로 int값으로 인식되기 때문에 int형으로 받아와 st..

Kotlin # Context

🎈 Context Context - 앱의 흐름 Application Context - 하나만 존재 - 앱 전반에 걸친 정보와 환경 - Application lifecycle에 영향을 받음 Activity Context - Activity마다 존재 - Activity lifecyce에 영향을 받음 - Context를 구현하고 기능을 추가한게 Activity 책(Application Context) Chapter1(Activity Context) chapter1-1 chapter1-2 Chapter2(Activity Context) chapter2-1 Chapter3(Activity Context) chapter3-1 chapter3-2 chapter3-3

Kotlin # Intent

🎈 Intent Intent - 의도, 의사 - A야 B좀 해줘 - B좀 해줘 - A야 (이 데이터를 사용해서) B좀 해줘 그리고 다하면 알려줘 -> 결과가 필요한 경우 - 의도를 전달할 때 '데이터'를 같이 전달할 수 있다 -> 이 번호로 전화걸어줘 1. 명시적 Explicit Intent * 호출될 대상을 직접 명시하는 경우 - "누구야 뭐좀 해줘" 2. 암시적 Implicit Intent * 호출될 대상을 명시하지 않는 경우 -> 공유하기를 클릭하면 공유할 수 있는 목록을 쫙 보여주는 것 - "뭐좀 해줘" * 인텐트 필터(Intent-filter) - 암시적 인텐트를 보낸 경우, 인텐트가 처리할 수 있는지 확인할 때 사용 * 해달라고 한 기능이 가능한 애들 만으로 리스트를 거를 때 - Manifes..

DB # not like 여러 번 사용하기 / is not null 적용 안될 때

show databases; use -; show tables; select * from -; 🎈 not like 여러번 사용하기 select name, email from - where (name not like '%test%' and name not like '%테스%' and name not like '%개발%') and (email not like '%test%' and email not like '%이메일%' and email not like '%Email%' and email like '%_%' and email like '%.com'); 🎈 is not null 적용되지 않을 때 그냥 email 컬럼이 공백이 아니면 반환하게끔 email like '%_%'을 사용했다. (위 코드 참고)

기타/🚪 DB 2022.07.22

Kotlin # 계산기 만들기

🎈 xml로 화면 그리기 우선 화면을 아래와 같이 만든다. activity_homework1.xml drawable/number_bg.xml 🎈 Activity로 기능 구현하기 Homework_1.kt package org.techtown.kotlin import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.view.View import android.widget.TextView import org.w3c.dom.Text class Homework_1 : AppCompatActivity() { lateinit var one: TextView lateinit var two: TextView lateinit ..

Android Studio # Error running 'app': The activity must be exported or contain an intent-filter

🎈 문제 발생 MainActivity를 실행시키기 위해 다음과 같이 Manifest.xml의 launcher activity란에 설정해주고 Run해주었다. 그러나 에뮬레이터에 아무것도 뜨지 않았고, Event Log에 뜬 Error메세지는 다음과 같았다. Error running 'app': The activity must be exported or contain an intent-filter 🎈 해결 [Run] - [Edit Configurations] [Launch Options] - [Launch] - [Specified Activity] 클릭 - [Activity]에서 내가 돌리고싶은 xml파일 선택!! 혹은, 그냥 Default Activity로 설정

기타/🚨 에러 2022.07.19

Kotlin # Activity / ViewControl

🎈 Activity Activity - 화면을 구성하는 가장 기본이 되는 요소 - 자동으로 activity와 매칭되는 xml을 생성해주고 자동으로 manifest(설계도)에 등록된다. - 화면을 그리는 기능 + 화면에서 발생할 수 있는 일을 처리할 수 있는 기능이 내장 - 특수한 activity * 런처 activity, main activity - 앱이 실행될 때 최초로 실행되는 activity - 생명주기가 있다. -> 이해하는 것이 중요 - 안드로이드 OS가 activity를 직접 종료 시키는 일은 없다. - 다만 프로세스 종료는 가능 * onCreate() - 필수적으로 구현해야한다 - 생명주기 중에서 단 한번만 발생한다 * 즉, 단 한번만 실행하면 되는 일들를 여기서 구현. - 화면 그리기(필수..

XML # Shape Drawable 요소 정리

🎈 파일 위치 res/drawable/filename.xml 🎈 구문 🎈 요소 셰이프 드로어블 루트 요소이다. rectangle 포함하는 뷰를 채우는 사각형. 이는 기본 셰이프입니다. oval 포함하는 뷰의 치수에 맞는 타원형 셰이프. line 포함하는 뷰의 너비에 걸쳐 있는 가로선. 이 셰이프를 사용하려면 요소를 통해 선의 너비를 정의해야 합니다. ring 고리형 셰이프. 셰이프에 대해 둥근 모서리를 생성 셰이프가 사각형인 경우에만 적용됨 - android:radius 모든 모서리의 반경 셰이프에 대한 그라데이션 색상을 지정 포함하는 뷰 요소에 적용할 패딩 셰이프의 크기 셰이프를 채울 단색 - android:color 셰이프에 적용할 색상 셰이프에 대한 스트로크 선 - android:color 선의 색..

Android Studio with Kotlin # Button을 이미지를 사용해 만들고 싶지만 보라색으로만 나올 때

📌 소스 🎈 MainActivity.kt package org.techtown.kotlin import androidx.appcompat.app.AppCompatActivity import android.os.Bundle class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.drawable) } } 🎈 layout폴더의 drawable.xml 🎈 drawable폴더의 drawable_test.xml 🎈 drawable폴더의 handmade_ovalshap.xml 🎈 drawable폴더..

기타/🚨 에러 2022.07.13
반응형