TAE

[kotlin] android Kotlin과 java 사용(startActivity, setOnClickListener) 본문

Kotlin/개념

[kotlin] android Kotlin과 java 사용(startActivity, setOnClickListener)

tg-world 2021. 9. 9. 14:35
반응형

android startActiviy 방법

 

- java

 Intent intent = new Intent(this, 새로운 액티비티.class);
 startActivity(intent);

- kotlin

val intent = Intent(this,새로운액티비티::class.java) 
startActivity(intent)

 

android setOnClickListener

-java

   clickBT.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (editText.getText().toString().isEmpty()) {
                    Toast.makeText(MainActivity.this, "빈값입니다", Toast.LENGTH_SHORT).show();
                    return;
                }
                Toast.makeText(MainActivity.this, "click", Toast.LENGTH_SHORT).show();
            }
        });

implements 하기 귀찮을땐(물론 코딩에 귀찮으면 안되지만) 이방법으로 사용을 해왔었는데.. 노란줄이 떠서 봤더니..

anonymous new View.OnClickListener() can be replaced with lambda

람다식으로 바꿀수 있다고한다.. 코틀린에선 람다를 많이 사용하는데.. 기존 java에서도 람다를 쓰려니 좀 어색한 감이있다.. 람다형식으로 Replace with lambda 를 누르니

    barcode_text.setOnClickListener(v -> {
            if (editText.getText().toString().isEmpty()) {
                Toast.makeText(MainActivity.this, "빈값입니다", Toast.LENGTH_SHORT).show();
                return;
            }
            Toast.makeText(MainActivity.this, "click", Toast.LENGTH_SHORT).show();
        });

이렇게 람다식으로 바꿔준다.. 얼른 람다식에 익숙해 져야할것같다.

 

- kotiln

    clickBT.setOnClickListener {
            if (HeightEditText.text.toString().isEmpty() || WeightEditText.text.toString().isEmpty()) {
                Toast.makeText(this, "빈값입니다.", Toast.LENGTH_SHORT).show()
                return@setOnClickListener
            }
            Toast.makeText(this, "클릭", Toast.LENGTH_SHORT).show()
        }

 

 

반응형

'Kotlin > 개념' 카테고리의 다른 글

[kotlin] 반복문 for문  (0) 2021.09.09
[kotlin] 랜덤함수 Random() _ 중복제거  (0) 2021.09.09
Comments