App노자
[Android] ScrollView 본문
1. ScrollView란?
https://developer.android.com/reference/android/widget/ScrollView
ScrollView | Android Developers
developer.android.com
\
//getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
//getActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
View Binding을 사용하면 뷰와 상호작용하는 코드를 쉽게 작성할 수 있습니다. 모듈에서 사용 설정된 뷰 결합은 모듈에 있는 각 XML 레이아웃 파일의 결합 클래스를 생성합니다. 바인딩 클래스의 인스턴스에는 상응하는 레이아웃에 ID가 있는 모든 뷰의 직접 참조가 포함됩니다.
https://developer.android.com/topic/libraries/view-binding
뷰 결합 | Android 개발자 | Android Developers
뷰 결합 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 뷰 결합 기능을 사용하면 뷰와 상호작용하는 코드를 쉽게 작성할 수 있습니다. 모듈에서 사용 설정
developer.android.com
1. XML
fun main() {
var number1 = 2022
var number2 : Int = 2022
// 변수를 선언할 때 : var + 변수명
val String1 = "2022"
val String2 : String = "2022"
// 상수를 선언할 때: val + 상수명
}
View Binding을 사용하기 위해서는 "build.gradle (Module: HelloKotlin.app)" 파일에 다음 내용을 추가 합니다.
Kotlin에서 변수는 val와 var라는 키워드로 선언을 한다
var로 선언을 할 경우 처음에 지정한 변수를 나중에 바꿀 수 있고
val로 선언을 할 경우 초깃값이 할당되면 나중에 바꿀 수 없는 읽기 전용 변수가 된다
추가로 알 수 있는 특성은 Kotlin은 Java와 달리 구문 끝의 세미클론의 생략이 가능하다는 점이다
2. Type inference (타입추론)
fun main() {
val number1 = 2022
val number2 : Int = 2022
val String1 = "2022"
val String2 : String = "2022"
// 상수를 선언할 때: val + 상수명
}
변수나 상수를 선언할 때 위에 있는 특정 타입을 명시하지 않아도 컴파일러가 할당된 값을 기준으로 타입을 결정해주는 기능인 타입추론을 지원한다
추론할 값을 지정하지 않으면 자료형을 추론할 수 없다
나름 편리한 기능이지만 협업이나 유지보수를 위해 개인적으로 사용은 하지 않고 있다
3. 자료형 검사하기
fun main() {
var num: Int = 1
var isbool: Boolean = true
isbool = num is Int
println(isbool)
if (num is Int) {
println("Int")
} else if (num !is Int) {
println("Int가 아니다")
}
}
자료형을 검사할때는 is 키워드를 사용한다
왼쪽이 오른쪽과 같으면 true 아니면 false를 반환한다
4. as cast operator
fun main() {
var num: Int? = null
// var str: String = num as String
// val str: String? = num as String?
val str: String? = num as? String
}
as를 이용해 지정한 타입으로 형 변환이 가능하지만 as는 형 변환이 가능하지 않으면 예외를 발생 시킨다
예외 발생을 피하기 위해서 as?를 사용하는것이 좋다 as?는 예외 발생시 null을 반환한다
5. Any형
fun main() {
var any: Any = 1
println(any)
any = "Any Test"
println(any)
}
Any형은 자료형이 특별히 정해지지 않은 경우에 사용한다
코틀린에서 최상위 클래스인 Any는 다른 모든 클래스의 부모클래스이며 어떤 자료형으로 변환이 가능하다
5. 타입 별칭
fun main() {
}
typealias TagetAction = (target: Any, action: Selector) -> Unit
typealias MyInt = Int
기본으로 제공하는 데이터 타입이나 개발자가 임의로 데이터 타입을 지정해 별칭을 부여하여 선언한 후 계속해서 사용할 수 있다
'Android > AndroidStudio' 카테고리의 다른 글
[Android] ActionBar(액션바) 제거하는 방법 (0) | 2022.12.31 |
---|---|
[Android Studio] Soft Keyboard 내리는 방법 (0) | 2022.12.30 |
[Android] API 레벨 호환성 (0) | 2022.12.18 |
[Android] build.gradle (그래들 빌드 설정 파일) (1) | 2022.08.21 |
[Android] Manifest (매니페스트) (0) | 2022.07.31 |