찾다

 >  Q&A  >  본문

android - popupWindow.setElevation()怎样兼容到API21以下呢

项目里有个地方用到了PopupWindowsetElevation() 但是这个方法只支持API21以上,我看有个PopupWindowCompat,但是里面好像没有什么有用的方法,请问应该如何兼容API21以下的版本呢

黄舟黄舟2766일 전617

모든 응답(1)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-04-18 09:16:05

    일반적인 방법은 없지만 Java Reflection을 통해 구현할 수는 있지만 구현하더라도 승격 효과는 생성되지 않습니다. 첫 번째:

    으아악

    위의 코드를 보면 Reflection을 통해 mBackgroundView를 구한 뒤 ViewCompat.setElevation(View, float)만 호출하면 작업이 완료되는 것을 알 수 있다. 하지만 하위 버전에는 Elevation<🎜이 없기 때문이다. > 속성, 위 호출은 충돌이 발생하지 않도록 하기 위한 호환성 처리일 뿐입니다.

    또 다른 사고방식:

    1. 고도

      설정으로 높은 버전
    2. 하위 버전 통과

      Background Drawable

    p.s. 모두 사용하면 어떨까요

    Background Drawable

    회신하다
    0
  • 취소회신하다