안드로이드 백과사전

컴공 복학생Young이·2021년 6월 16일

E

ELVIS 연산자

data?.getBooleanExtra(EXTRA_ANSWER_SHOWN, false) ?: false

data?.getBooleanExtra(EXTRA_ANSWER_SHOWN, false)!= null 이면
이 값은 true (특정상황임) null이면 false

cf) 퀴즈 앱 부가 설명 => 값을 잘 전달 받았다 ( 컨닝 버튼을 누를 경우 답을MainActivity에서 받아서
답을 알려주고 상태 값을 true로 변경후 값을 잘 받았다고 전달 => true인 상황!
[2021-06-17]

T

1.Toast Message

=>다른위치에 띄우고 싶을때

val toast = Toast.makeText(this, getString(R.string.correct_toast), Toast.LENGTH_SHORT)

toast.setGravity(Gravity.TOP, 0, 300) ex)(Gravity.START or Gravity.END, 0, 0) =>XoffSet,YoffSet

toast.show()

Tip:문자열을 따로 보관했다, toast를 변수로 설정후 각각 method를 붙여서 실행한다
[2021-06-17]

V

1.ViewModel
데이터 클래스(형태)를 따로 설정한 후 그것에 맞는 데이터 클래스를 "컨트롤러와 분리" 시켜 모델을 만드는 작업**

장점 => 화면 전환시 모델이 초기화 되지 않고 유지되는 장점이 생김

의존성 추가 => implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'

컨트롤러와 모델을 연결 시켜주는 작업이다
private val quizViewModel: QuizViewModel by lazy {
ViewModelProvider(this).get(QuizViewModel::class.java)
}

이를 통해 quizViewModel.currentQuestionText 하여 모델을 부를 수있고 설정 할 수 있다(게터)
[2021-06-17]

W

1.When문

when(parmeter) :파라미터있는경우
when {}: 파라미터 없는 경우

=> 쉽게 생각하자
when{ 조건1 -> a 조건2 -> b .....라 했을때}
조건1이 true이면 a 실행한다
즉, 파라미터의 유무가 중요한것이 아니라 조건의 식이 True or False이냐가 핵심

[2021-06-17]

xml

L
1.layout_gravity는 view 내부에서 위치를 결정하는것이고, gravity는 view를 상위 계층에 맞춰서 위치를 이동하는 것 이다
[2021-06-17]


1차update [2021-06-17]: "기말 끝 이제 안드로이드에 빠져보자"

profile
반드시 해낸다

0개의 댓글