Android get layout parent id

前端 未结 4 977
粉色の甜心
粉色の甜心 2021-01-02 10:52

I would like to know what is the difference between View and ViewParent ? I am trying to get the Id of the parent of an ImageView but this I can\'t do :

4条回答
  •  清歌不尽
    2021-01-02 11:20

    I would like to know what is the difference between View and ViewParent ?

    A View is a class and a ViewParent is an interface.

    Although many of the common layout classes implement the ViewParent interface it isn't guaranteed.

    The problem you're having is that the myImageView.getParent() is returning a ViewParent which doesn't directly expose a getId() method.

    As others have said, casting the ViewParent to a View using...

    ((View) myImageView.getParent()).getId();
    

    ...should work at compile time but be aware of the following...

    1. If the parent View doesn't implement the ViewParent interface then the cast will fail.
    2. The parent View must have a resource id defined in the layout file as (for example) android:id=@+id/myParentViewId or the call to getId will return null

提交回复
热议问题