Как получить доступ к методу другим методом? - PullRequest
1 голос
/ 05 марта 2012

Я смотрел учебники по Android для тогдашнего Бостона, и я заблудился в этой строке кода:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

Я думаю, getWindow() и setFlags() - это метод, но почему к ним так можно получить доступ? Я всегда вижу ClassObject.Method, но на этот раз Method.Method.

Ответы [ 3 ]

3 голосов
/ 05 марта 2012

getWindow () возвращает объект типа Window , для которого можно использовать метод setFlags ()

Так что этов основном вызывающий способ написания

Window a = getWindow();
a.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
2 голосов
/ 05 марта 2012

Потому что getWindows() - это метод из класса Activity.И он возвращает объект из класса Window, который представляет ваше действительное экранное окно.
Таким образом, setFlags() фактически вызывается из оконного класса.

1 голос
/ 05 марта 2012

Это работает, потому что первый метод (из действия) возвращает объект (Window), для которого вы можете вызвать второй метод.Вы можете сделать:

Window obj = getWindow();
obj.setFlags();

, если это имеет больше смысла для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...