getTop для пользовательского представления всегда возвращает ноль - PullRequest
0 голосов
/ 11 января 2019

Я создал собственный вид, в котором, когда пользователь нажимает на вид, он расширяется. Перед расширением я вызываю getTop (), чтобы получить текущую координату Y, однако она всегда возвращает ноль. Я вызываю getTop () из пользовательского класса представления. Вызов getTop () из класса, реализующего представление, не разрешен?

public void expand(float targetHeight) { //This custom view extends FrameLayout

    int top = getTop(); // returns zero
    rootLayout.setLayoutParams(new FrameLayout.LayoutParams(widthPixels, dpToPx((int) targetHeight)));
    webView.setLayoutParams(new FrameLayout.LayoutParams(widthPixels, dpToPx((int) targetHeight)));
}

1 Ответ

0 голосов
/ 11 января 2019

Метод getTop () возвращает верхнюю позицию представления относительно его родителя. Так что, возможно, находится в положении 0 своего родителя.

Не могли бы вы поделиться своим XML, чтобы я мог лучше понять макет?

...