Что-то, что может вам помочь (в зависимости от случая, от того, что вы хотите сделать, например, с вашим LinearLayout
), - объявить ваш Views
как можно более общим. Здесь, в вашем примере, вы можете оставить свои LinearLayout
как ViewGroup
, если вам не нужны никакие LinearLayout
специальные методы. Таким образом, если позже вы решите изменить это расположение в xml, RelativeLayout
или FrameLayout
и т. Д., У вас не возникнет проблем с приведением.
Вы можете использовать тот же подход для Buttons
или других Views
, в зависимости от того, какие методы вы используете для них. Например, если вы просто установили onClickListener
на своем Button
, вы можете оставить для него ссылку только на View
(например, View button=findViewById(R.id.button);
), а позже вы можете изменить его на ImageView
, может быть и до сих пор не имеет проблем с приведением, поскольку они оба расширены с View
.
Итак, решение в больших строках: используйте класс с самым высоким level
, как можете.