https://soo0100.tistory.com/1877
안드로이드 버튼 이벤트 구현 4번째는 람다식을 이용해 본다.
람다식은 자바8부터 사용지원되며, 안드로이드에서도 자바8을 지원한다.
람다식은 이름이 없는 함수 이다. 그렇기에 여러곳에서 사용하기는 어렵고, 한곳에서만 사용되는 function 일 경우
간략함을 위해서 사용이 가능하다.
그렇기에 하나의 버튼 이벤트를 구현한다면 람다식을 사용할 수 있다.
지난시간과 같이 XML 로 버튼 하나를 구성한 화면이 있다는 가정아래,
자바 코드에서는 하기처럼 구현이 가능하다.
public class MainActivity extends AppCompatActivity {
Button textButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button10);
버튼을 불러오고,
람다식을 이용해서 해당 버튼 이벤트만 구현한다.
button.setOnClickListener(view->{
Toast.makeText(getApplicationContext(),"람다식 구현",Toast.LENGTH_LONG).show();
});
}
익명 클래스로 구현했다면 하기와 같은 모습일것 이다.
button.setOnClickListener(new View.OnClickListener() {
//인터페이스를 구현하는 클래스. 익명클래스.
@Override
public void onClick(View view) {
Toast.makeText(getApplicationContext(),"익명 클래스로 구현",Toast.LENGTH_LONG).show();
}
});
람다식의 포맷은 하기와 같다
(a,b, ...) ->{ ... }
a,b 등의 인자값만 받고 -> {} 괄호 안에 구현 문장을 적어준다.
이제 하기 코드를 보면 이해가 간다.
view 인자만 받고 -> 적고 { } 괄호 안에 구현한다. 토스트 박스를.
button.setOnClickListener(view->{
Toast.makeText(getApplicationContext(),"람다식 구현",Toast.LENGTH_LONG).show();
});
람다식은 하나의 기능만 사용하는 함수를 구현할 때
간결 함을 위해서 사용한다. 즉, 이름이 없는 함수 형식이다.
감사합니다.
반응형
'앱 만들기 > 안드로이드 study' 카테고리의 다른 글
이너클래스를 커스텀 뷰 로 사용하기 (6) | 2022.07.03 |
---|---|
안드로이드 스튜디오 프로젝트 여러창에서 열기 (6) | 2022.07.02 |
안드로이드 버튼 이벤트를 구현하는 방법 4가지 - 3 (4) | 2022.06.23 |
XML 과 커스텀 뷰 같이 사용하기 (8) | 2022.06.21 |
커스텀 뷰를 활용한 그리기 (10) | 2022.06.20 |
댓글