-1
주십시오 만 API에 대한 작업을하다> = 17 내가 나타납니다 감지하고 17 다음 낮은 API에 AutoCompleteTextView에의 드롭 다운의 사라 수있는 방법AutoCompleteTextView에, 드롭 다운, setOnDismissListener, <</p> <p>setOnDismissListener 도움 17 API를
?
주십시오 만 API에 대한 작업을하다> = 17 내가 나타납니다 감지하고 17 다음 낮은 API에 AutoCompleteTextView에의 드롭 다운의 사라 수있는 방법AutoCompleteTextView에, 드롭 다운, setOnDismissListener, <</p> <p>setOnDismissListener 도움 17 API를
?
API 레벨 16 (잘 작동 함)에서 테스트를 마쳤습니다. 그러나 안드로이드 전문가에 대한 질문 : 나는 어쨌든 그리 적절한 방법이라고 생각하고 난 당신의 현명한 조언을 기대 :
이 public class CustomAutoCompleteTextView extends AutoCompleteTextView
같은 코드 모양을 무엇
public void setupActv() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss() {
Log.d("testThisShit", "on Dismiss");
}
});
} else {
try {
Field popup = AutoCompleteTextView.class.getDeclaredField("mPopup");
popup.setAccessible(true);
ListPopupWindow popupWindow = (ListPopupWindow) popup.get(this);
popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
Log.d("testThisShit", "on Dismiss < 17");
}
});
} catch (NoClassDefFoundError | ClassCastException | NoSuchFieldException | IllegalAccessException e) {
Log.d("testThisShit", e.getMessage());
}
}
}
에이 코드를 넣어? 너 뭐 해봤 니? 'setOnDismissListener'가 API> = 17에서 작동하지 않는다는 것을 어떻게 알 수 있습니까? 안드로이드 스튜디오 나에게 말했다 때문에 – SunSparc
는 : 전화는 API 레벨 17 (현재 분 15)가 필요합니다 android.widget.AutoCompleteTextView # setOnDismissListener 이하 (Ctrl 키 + F1) – Andreyua
mActvSearchWeb.setOnDismissListener (새 AutoCompleteTextView.OnDismissListener() { 를 @ 재정의 공개 무효 onDismiss() { } }); – Andreyua