当我迁移到Androidx
时遇到错误ConstraintLayout
的所有子代都必须具有ID以使用`ConstraintSet,但是在以前的targetversion 26中工作,当我将目标版本更改为28时,我得到了错误像这样
我尝试了任何解决方案,但对我而言无济于事,请任何人提供解决方案。
ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(mBinding.childConstraint);
if (tripType == TripType.ONE_WAY) {
mBinding.btnRoundTrip.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnOneWay.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, R.drawable.button_footer);
mBinding.btnMulticities.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnRoundTrip.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
mBinding.btnOneWay.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_home));
mBinding.btnMulticities.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
constraintSet.connect(R.id.depLayout, ConstraintSet.END, R.id.endBorder, ConstraintSet.START, 0);
constraintSet.setVisibility(R.id.retLayout, View.GONE);
} else if (tripType == TripType.ROUND_TRIP) {
mBinding.retLayout.setVisibility(View.VISIBLE);
mBinding.btnOneWay.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnRoundTrip.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, R.drawable.button_footer);
mBinding.btnMulticities.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnRoundTrip.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_home));
mBinding.btnOneWay.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
mBinding.btnMulticities.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
constraintSet.connect(R.id.depLayout, ConstraintSet.END, R.id.centerDivider, ConstraintSet.START, itemMargin);
constraintSet.connect(R.id.retLayout, ConstraintSet.START, R.id.centerDivider, ConstraintSet.END, itemMargin);
constraintSet.setVisibility(R.id.retLayout, View.VISIBLE);
} else {
mBinding.btnOneWay.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnMulticities.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, R.drawable.button_footer);
mBinding.btnRoundTrip.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
mBinding.btnRoundTrip.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
mBinding.btnOneWay.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_hint));
mBinding.btnMulticities.setTextColor(ContextCompat.getColor(getActivity(), R.color.text_color_home));
}
constraintSet.applyTo(mBinding.childConstraint);
TransitionManager.beginDelayedTransition(mBinding.childConstraint);
请快速提供解决方案
答案 0 :(得分:0)
将ID添加到相应xml文件中的所有视图