Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ImageView活动启动的大小_Java_Android_Imageview - Fatal编程技术网

Java ImageView活动启动的大小

Java ImageView活动启动的大小,java,android,imageview,Java,Android,Imageview,我想从我的应用程序开始查找ImageView的大小 对于我的应用程序,我想做与谷歌地图相同的事情,即显示一幅图像,并在此图像上放置指向位置的指针。指针通过包含与图像相关的X%和Y%的XML文件恢复 要在图像上放置指针,我会执行以下操作: public void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); // more code... float maxX =

我想从我的应用程序开始查找
ImageView
的大小

对于我的应用程序,我想做与谷歌地图相同的事情,即显示一幅图像,并在此图像上放置指向位置的指针。指针通过包含与图像相关的
X%
Y%
的XML文件恢复

要在图像上放置指针,我会执行以下操作:

public void onCreate (Bundle savedInstanceState) {
    super.onCreate (savedInstanceState);

    // more code...

    float maxX = imageViewCarte.getWidth();
    maxY imageViewCarte.getHeight float = ();
}
问题是这些值​​应用程序开始时为
null
。因此,我尝试在
onStart()
onResume()中执行相同的操作,但没有效果,我总是得到
0
!但是,如果我在类似
onClick()
的事件中执行相同的操作,它将正确返回实际值


有什么方法可以在应用程序启动时获得此大小?

您应该将此方法添加到活动中

@Override 
public void onWindowFocusChanged(boolean hasFocus) 
{ 
     super.onWindowFocusChanged(hasFocus);
     Log.i("Height",imageViewCarte.getWidth ()+""); 
} 
在onCreate过程中,视图已充气,但尚未绘制。因此,此方法在绘图过程后被调用,因此您可以通过重写此方法来实现目标