변수와 상수

변수(Variable) : 가변값

상수(Value) : 고정값

 

조건문과 반복문

for문이 C++과 좀 다르다. 

 

결과 로그

 

로그 ${변수}와 $변수 차이 : 띄어쓰기 적용

 

 

//자료형 생략가능
var strName = "홍길동"
Log.d(TAG,"strName : $strName")
var strName2:String = "변학도"
Log.d(TAG,"strName2 : $strName2")
var strName3:String
strName3 = "성춘향"
Log.d(TAG,"strName3 : $strName3")


//== Kotlin 자료형
//실수형
var doubleValue:Double = 12.3
var floatValue:Float = 45.6F
Log.d(TAG,"doubleValue : $doubleValue")
Log.d(TAG,"floatValue : $floatValue")

//정수형
var intValue:Int = 123
var longValue:Long = 2147483647
var shortValue:Short = 456
var byteValue:Byte = 127
Log.d(TAG,"intValue : $intValue")
Log.d(TAG,"longValue : $longValue")
Log.d(TAG,"shortValue : $shortValue")
Log.d(TAG,"byteValue : $byteValue")

//문자형
var charValue:Char = 'a'
var strValue:String = "TEST 大韓民國"
Log.d(TAG,"charValue : $charValue")
Log.d(TAG,"strValue : $strValue")

//Boolean
var booleanValue:Boolean = true
Log.d(TAG,"booleanValue : $booleanValue")

//상수(대문자로 작성, 그냥 약속)
val VALUE:Boolean = false
Log.d(TAG,"VALUE : $VALUE")

val helloWorld = "Camel Case :: 카멜케이스 :: 낙타표기법"
val HelloWorld = "Pascal Case :: 파스칼케이스 :: 쌍봉낙타표기법"
val hello_world = "Snake Case :: 스네이크케이스 :: 뱀 표기법"
val strHelloWorld = "Hungarian Notation :: 헝가리안 표기법(사용안함)"

 

when문 ==> switch문과 같음

 

'Development > Android' 카테고리의 다른 글

Kotlin #003 log  (0) 2021.07.14
Kotlin #002 kotlin android extension  (0) 2021.07.14
Kotlin #001 New Project  (0) 2020.11.16
191126 Android Studio : NDK  (0) 2019.11.26
190423 오타 오류  (0) 2019.04.23
블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

 

변수로 테그 선언

 

Mesage

 

import

 

logcat에서 TAG로 필터

'Development > Android' 카테고리의 다른 글

Kotlin #004 변수,상수,조건문,반복문  (0) 2021.07.14
Kotlin #002 kotlin android extension  (0) 2021.07.14
Kotlin #001 New Project  (0) 2020.11.16
191126 Android Studio : NDK  (0) 2019.11.26
190423 오타 오류  (0) 2019.04.23
블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

kotlin extension이 구글 정책(잦은 오류)으로 제외 되었고 계속 사용하려면

id 'kotlin-android-extensions' 

을 추가해줘야함.

추가하고 "Sync Now"로 동기화
동기화 이후 Import

 

위 방법은 잦은 오류로 인해 사용하지 않고 구글에서 추천하는 ViewBinding 방법을 사용하도록 한다.

 

1. build.gradle(:app) 에 추가
buildFeatures{
     viewBinding true
 }

2. try sync
MainActivity에 자동 Import : import com.dudongmuni.sayhello.databinding.ActivityMainBinding

3. MainActivity
val binding by lazy { ActivityMainBinding.inflate(layoutInflater) }

4. acitvity 변경
setContentView(R.layout.activity_main) ==> setContentView(binding.root)

5. control 변경( root 사용 )
binding.btnSay.setOnClickListener{

'Development > Android' 카테고리의 다른 글

Kotlin #004 변수,상수,조건문,반복문  (0) 2021.07.14
Kotlin #003 log  (0) 2021.07.14
Kotlin #001 New Project  (0) 2020.11.16
191126 Android Studio : NDK  (0) 2019.11.26
190423 오타 오류  (0) 2019.04.23
블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

Empty Activity

language : Kotlin

 

기본 코드
AVD 실행

 

블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

1. 프로젝트 생성

SDK Manager 설정하기

- Configure - SDK Manager를 선택하여 설치사항을 점검한다. 

Android SDK 버전별 설치

- Android SDK를 보면 설치된 SDK를 확인할 수 있다.

NDK 설치 확인 - 없으면 설치

- SDK Tools 탭을 보면 설치된 툴들을 확인할 수 있다.

- NDK가 설치되어 있어가 이 프로젝트를 수행할 수 있다. 

Start a new Android Studio Project

- Start a new Android Studio Project를 실행하여 프로젝트를 생성한다.

Empty Activity

-스크롤하면 여러 종류의 Template이 있으며 원하는 프로잭트를 만들 수 있다. 일단은 empty activity로 생성한다.

Name : JniTest

Name, Package name, Save Location을 지정해 준다. Language는 Java로 수행한다. Kotlin은 아직 해보지 않았다. 오라클의 자바 라이선스로 구글과 마찰이 있어 구글에서는 Kotlin(코틀린)으로 진행중이다. 그러나 아직 Java코드가 많아 Java가 편하다. 언젠가는 코틀린으로 가겠지...

 

2. 코딩

TextView 추가

- 결과값을 나타내는 TextView를 생성한다.

TextView의 ID부여

- TextView의 ID를 부여한다.

- activity_main.xml에 [Text]에서 직접 작성해도 되고, Design에서 디자인으로 작성해도 된다.

MainActivity.Java

- MainActivity.Java를 편집한다.

코딩

- 1 : TextView 선언

- 2 : Jni 관련 코드

- 3 : Jni 실행 코드

블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

오류 발생
findViewByID 오류

오타오류 findViewById인데 findViewByID 라고 씀(Id ->ID라고 잘못씀)

 

 

블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

오류 발생
Infet Constrainsts

Design모드에서 Infer Constraints를 실행하면 해결.

 

 

Build Output

폰트크기를 임의대로 20이라고 입력했더니 단위가 빠져서 오류.

'Development > Android' 카테고리의 다른 글

Kotlin #001 New Project  (0) 2020.11.16
191126 Android Studio : NDK  (0) 2019.11.26
190423 오타 오류  (0) 2019.04.23
190419 Intent keeps stopping  (0) 2019.04.19
190418 안드로이드의 시작  (0) 2019.04.18
블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

Intent keeps stopping

순서대로 따라했는데 에러가 발생한다. 검색결과 오류 부분은 Android Studio코드에서 회색으로 나타난단다.

OnClick_01 이 회색으로 나타남
수정후 onClick_01

수정한 내용은 없지만 content_main.xml 에서 onClick_01을 다시 써 줬다

블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,

안드로이드 스튜디오 설치 : https://developer.android.com/studio/index.html?hl=ko

 

Download Android Studio and SDK tools

developer.android.com

기존에 이클립스에서 사용하던 SDK가 있고, JDK도 버전별로 설치된 상태라서 충돌가능성 있음

설치 완료

 

블로그 이미지

반전반핵

언제라도 힘들고 지쳤을 때 내게 전화를 하라고 내손에 꼭 쥐어준 너의 전화카드 한장을 물끄러미 바라보다 나는 눈시울이 붉어지고 고맙다는말 그말 한마디 다 못하고 돌아섰네.

,