2015-02-09 58 views
0

我正在创建一个自定义图像视图,并且正在尝试查找父视图的高度。我知道关于父母的唯一细节是它可能会滚动。我需要父母身高的原因是因为我试图弄清楚imageview在屏幕上的位置。我已经创建了一个用于准确计算其位置的方程,但只有在手动输入父母身高时才有效。有没有什么方法可以检索这些信息,或者有什么方法可以让我的图像视图在屏幕上的位置发生变化?查找父视图的高度

回答

2

尝试这种方式

public class MyImageView extends ImageView { 


    int parentHeight; 
    int parentWidth; 

    public MyImageView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    public MyImageView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public MyImageView(Context context) { 
     super(context); 
    } 





    @Override 
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 

     if(((View)this.getParent()).getMeasuredWidth()!=0){ 
      parentHeight = ((View)this.getParent()).getMeasuredHeight(); 
      parentWidth = ((View)this.getParent()).getMeasuredWidth(); 
     } 

    } 
} 
+0

这看起来是工作,我怎么能确认其返回正确的价值? – Android 2015-02-09 21:00:32