在API 11之前,Android等效解决了View.getX()的问题?

我在视图上使用getX()和getY()方法来获取一些特殊的拖动逻辑(不是animation,即我从不使用setX / Y方法,我只需要getter来检查)。

但是,我已经意识到这些仅在API 11之后可用。

getX()的文档说是添加了’left’属性和’translationX’属性。 一切都很好,除了get / setTranslationX()以及API 11之后。

我想知道是否有任何关于这种方法在幕后返回的知识,所以我可以提出一个解决方法。

  • 使用View.BaseSavedState覆盖View.onSaveInstanceState()和View.onRestoreInstanceState()?
  • java.lang.StackOverFlow错误。 怀疑太多意见?
  • Android windowSoftInputMode =“adjustPan”滚动一些
  • Android的 - 试图调用虚拟方法“无效android.view.View.getBoundsOnScreen(android.graphics.Rect)”对空对象引用
  • 如何区分孩子和家长观点组触摸事件
  • 版本2.3.3和4+之间的android布局devise差异
  • 什么是Android DecorView?
  • 什么时候需要在View上执行invalidate()?
  • getLeft()和getTop()怎么样? 在我看来,只要视图尚未翻译(setTranslationX()和setTranslationY()),它们就是有效的,这些视图在旧API中也无效。

    在项目中使用nineOldAndroid.jar文件并使用这种方式

     import com.nineoldandroids.view.ViewHelper; ViewHelper.setTranslationX(myView, translation); ViewHelper.getX(myView); 

    使用android.support.v4.view.ViewCompat解决方案是:

     ViewCompat.getY(mView); 

    这与旧的Android设备兼容。

    我认为它不再相关,但以防万一有人在寻找它: http : //nineoldandroids.com/