마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

AlertDialog 질문드립니다.

0 추천
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(login_activity.this);
                alertDialogBuilder.setTitle("로그인 오류");

                alertDialogBuilder
                   .setMessage("ID 또는 Password를 확인하세요.")
                   .setNegativeButton("확인", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                   finish();
                 }
               });

new DialogInterface.OnClickListener() 부분에서 건너 뛰어버립니다 ..글자색깔도 연한 회색으로 변해버리구요 ..

마우스 오버해서 내용을 보면 Anonymous new Dialoginterface.OnClickListener() can be replaced with lambda 

this inspection reports all anonymous classes which can be replaced with lambda expressions Lambda syntax is not supported under Java 1.7 or earlier JVNs.

이렇게 나오는데요 .. 자바 버전때문에 그런건가요 ..

 

https://stackoverflow.com/questions/30752547/listener-can-be-replaced-with-lambda?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

 

해당 링크에서 비슷한 문제를 확인하긴 했는데 위 코드에서 어떤식으로 수정을 해야할지 모르겠습니다..

죄송합니다.. 제가 많이 초보라서요 ..

자바는 1.8 버전을 사용하고 있는데요 ... 왜그런건가요 .. 도와주세요 ..

파워코딩 (960 포인트) 님이 2018년 5월 25일 질문

1개의 답변

+1 추천
 
채택된 답변
자바 1.8 버전이라서 회색으로 표시되는것 맞는데 그건 실행되는거랑은 상관없어요.
회색인 부분에 커서 가져다 놓고 알트 엔터인가 누르면 람다식 코드로 자동으로 바꿀 수 있을거에요.

건너뛴다는게 무슨말인지 모르겟는데, 뒤에 show()는 하신건가요?

new AlertDialog.Builder(login_activity.this)
         .setTitle("로그인 오류")
         .setMessage("ID 또는 Password를 확인하세요.")
         .setNegativeButton("확인", new DialogInterface.OnClickListener() {
               @Override
               public void onClick(DialogInterface dialog, int which) {
                        login_activity.this.finish();
               }
          })
          .show();
버닝 (4,880 포인트) 님이 2018년 5월 25일 답변
파워코딩님이 2018년 5월 25일 채택됨
거니바니님 정말 감사합니다!
알트엔터를 이런식으로도 사용이 가능한지 몰랐습니다 .. 정말 감사합니다
아그리고 show();는 했습니다!
...