У меня есть случай, когда я передавал свой View
на новый метод, чтобы манипулировать несколькими вещами.здесь я приведу пример.Итак, в основном я использую RecyclerView
и я inflating
представление, когда recylerview
создает view
Так что теперь у меня есть раздутый объект View
, теперь я просто передаю его своемуметод для манипулирования им.
manipulateView(view)
manipulateView
устанавливает цвет и атрибуты для view children
и которые раньше работали и все.но теперь я перехожу на ViewBinding
, теперь у меня есть ViewStub
для того, где мне нужно inflate
мой customView
, как показано здесь код
ViewDataBinding viewDataBinding = DataBindingUtil.inflate(layoutInflater, getLayoutResource(), viewGroup, false);
ViewStub viewStub = (ViewStub) viewDataBinding.getRoot().findViewById(R.id.stub);
и затем я установил макет для viewStub
здесь
viewStub.setLayoutResource(getLayoutResource());
сейчас setLayoutResource
ожидает значение int
с id
из layout
теперь мой вопроскак я могу позвонить manipulateView
на getLayoutResource()
, если я просто передам viewStub
и затем позвоню viewStub.getRootView()
и Manipulate
этому представлению?
Было бы лучше, если бы я смог manipulate
ViewDataBinding
возразить сам, я должен просто манипулировать ViewDataBinding::getRoot
?