2016-07-04 9 views
0

저는 this library을 사용하고 있으며, 다음 내용을 따르고 있습니다.Android에서 DatePickerDialog를 구현할 수 없습니다.

implements com.wdullaer.materialdatetimepicker.date.DatePickerDialog.OnDateSetListener

그리고이 방법 :

나는 내 수업이 구현을 추가 한

@Override 
public void onDateSet(DatePickerDialog view, int year, int monthOfYear, int dayOfMonth) { 
    String date = "You picked the following date: "+dayOfMonth+"/"+(monthOfYear+1)+"/"+year; 
} 

그러나 어떤 이유로 나는 오류 얻을 :

Class 'xxxx' must be either declared abstract or implement abstract method 'onDateSet(..)

을 나는 샘플을 보았고, 나는 그곳에서했던 것과 똑같은 일을했다.

+1

당신의'onDateSet()'메소드에 대한'DatePickerDialog' 매개 변수 타입이 틀렸다고 생각합니다. 아마도 'android.app.DatePickerDialog'가 아닌'com.wdullaer.materialdatetimepicker.date.DatePickerDialog'이어야합니다. 아마도 당신이 가져온 것일 것입니다. 거기에 정규화 된 클래스 이름을 사용하거나'import' 문을 변경할 수 있습니다. –

+1

@MikeM. 너는 전설이야. 나는 이것을 표시하고 미래의 독자들을 도울 수 있도록 대답으로 게시하십시오. –

답변

1

그런 오류 메시지가 표시되지만 주어진 이름의 메서드가 이미 있으면 대개 서명이 잘못되었음을 나타냅니다. 이 경우 의 첫 번째 매개 변수 유형이 잘못된 것입니다. int은 모두 int입니다.

IDE가 DatePickerDialog 클래스를 자동으로 가져온 경우 android.app.DatePickerDialog을 선택했을 수 있습니다. 그러나이 인터페이스는 com.wdullaer.materialdatetimepicker.date.DatePickerDialog을 기다리고 있습니다. 메서드 서명에 정규화 된 클래스 이름을 사용하거나 올바른 클래스를 가리 키도록 import 문을 변경하면됩니다.