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

时间:2012-05-31 20:06:28

标签: android android-view

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

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

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

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

4 个答案:

答案 0 :(得分:16)

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

import com.nineoldandroids.view.ViewHelper;


ViewHelper.setTranslationX(myView, translation);

ViewHelper.getX(myView);

答案 1 :(得分:14)

getLeft()和getTop()怎么样?在我看来,只要视图尚未翻译(setTranslationX()和setTranslationY()),它们就是有效的,它们在旧API中也无效。

答案 2 :(得分:3)

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

ViewCompat.getY(mView);

与旧的Android设备兼容。

答案 3 :(得分:0)

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