gpt4 book ai didi

android - 何时使用 setX 和 setY

转载 作者:行者123 更新时间:2023-11-30 01:57:48 28 4
gpt4 key购买 nike

我正在使用 setX 和 setY 来移动屏幕上的 View 。但是,我读到 android 首先需要计算 View 位置,否则它会给出 NullPointerException(对我来说是什么)。我需要知道何时使用它以避免异常。直到现在我在 onCreate() 中使用它。谢谢,祝你有美好的一天

最佳答案

您绝对不能在 onResume() 之前或期间使用它。您需要设置一个全局布局监听器,并且只要布局了 View ,您就会移动 View 。但是,这不是一个好主意,如果您希望在用户第一次看到应用程序时将 View 设置在某个位置,最好直接通过 xml 来完成。

如果您希望 View 在应用运行时四处移动,请查看 Android 动画类。

public class YourClass extends Activity implements ViewTreeObserver.OnGlobalLayoutListener {
View myView;
@Override
onGlobalLayout() {
myView.setx(100);
myView.sety(100);

}

@Override
onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(layout);

myView = findViewById(R.id.myView);
myView.getViewTreeObserver().addOnGlobalLayoutListener(this);
}
}

关于android - 何时使用 setX 和 setY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31952032/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com