[Kotlin] 산술연산자, 비트연산자 코틀린에서는 특정 연산자의 역할을 함수로 정의할 수 있습니다. 이를 convention이라고 합니다.7.1.1 이항 산술 연산자 오버로딩 +, - 같은 연산자를 코틀린에서는 overloading해서 사용할 수 있습니다. 객체끼리 더하거나 뺄때 원하는 동작을 함수로 구현하면 연산자를 이용해 이를 표현할 수 있습니다. data class Point(val x: Int, val y: Int) operator fun Point.plus(other: Point): Point { return Point(x + other.x, y + other.y) } fun main(args: Array) { val p1 = Point(10, 20) val p2 = Point(30, 40) ..
아래와 같은 에러 문구가 발생 하는 이유와 해결 방법 Smart cast to 'abc' is impossible, because 'abc' is a mutable property that could have been changed by this time 사용한 변수가 Nullable 인경우 ? 을 입력하여 Nullable 상태를 확인한다. backToast = Toast.makeText(this, resources.getString(R.string.hello), Toast.LENGTH_SHORT) backToast.show() // Error Happen backToast = Toast.makeText(this, resources.getString(R.string.hello), Toast.LENGTH_..
코틀린의 특성 기존 JAVA를 사용하던 곳에서 코틀린을 사용하면, 더 적은 코드로 더 편하게 프로그래밍을 할 수 있습니다. 그리고, 자바뿐 아니라 자바 스크립트로도 코틀린을 컴파일 할 수 있습니다. 그래서 코틀린 코드를 웹 브라우저나 노드에서 실행 할 수 있습니다. 코틀린(Kotlin)은 인텔리제이(IntelliJ IDEA)라는 제품으로 유명한 젯브레인(JetBrains)에서 만든 언어 자바와 100% 호환되어 자바로 작성된 프로젝트에 코틀린 코드를 추가할 수도 있고 자바코드를 모두 코틀린으로 대체할 수도 있습니다. 특징 간결한 문법 문장 끝에 세미콜론(;)을 넣지 않아도 됩니다. new 키워드를 쓰지 않고 객체를 생성 합니다. 타입 추론을 지원하므로 일반적인 경우 타입을 적지 않아도 됩니다. 2. 널 ..
기본적인 Event 종류 앱을 사용할 때 사용자의 입력이 다양하게 들어오는데 이를 Event라고 한다. 개발자는 이렇게 Event를 통해 들어온 정보를 바탕으로 여러 가지 기능을 만들 수 있다. 그러기 위해서는 Event 발생 시 실행될 함수를 만들고 그 함수를 Listener에 넣어주어야 한다. 1. 화면을 Touch했을 때 2. 드래그, 더블탭, 핀치줌 등의 Gesture를 입력했을 때 3. 볼륨 키, 전원 키 와 같은 물리 키 를 입력했을 때 각각의 처리 방법을 알아보자. Touch Event 사용자가 특정한 View를 터치했을 때 어떤 action을 했는지 기록하는 기능을 만들어보자. View view1 = findViewById(R.id.view1); view1.setOnTouchListener..
프로그래밍적으로 키보드 숨김/감춤/보기. 액티비티 시작시 키보드 숨김/감춤/보기, EditText선택시 키보드 안뜨게하기 등 소프트 키보드 동작 관련 내용 1. 키보드 감추기 EditText editText = (EditText) findViewById(R.id.myEdit); InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(editText.getWindowToken(), 0); 2. 키보드 보여주기 EditText editText = (EditText) findViewById(R.id.myEdit); InputMethodManager i..