Я хочу переместить кнопку из верхнего угла в нижний правый угол (от одного макета к другому), переход работает отлично, когда я использую только один макет, то есть относительный макет , Логика такова: когда я нажимаю на верхний линейный макет, кнопка должна перейти на 2-ю (нижнюю) линейную компоновку. Но я перед этой ошибки:Исключение класса cast, проблема с анимацией кнопки с одного макета на другой
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams
мой Java-код:
private void MoveBTN() {
//transition
TransitionManager.beginDelayedTransition(myLayout);
// View myBtn=findViewById(R.id.btn1);
//moveing button
RelativeLayout.LayoutParams LP=new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT);
LP.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
LP.addRule(RelativeLayout.ALIGN_PARENT_RIGHT,RelativeLayout.TRUE);
myButton1.setLayoutParams(LP);
//resizing button
ViewGroup.LayoutParams size=myButton1.getLayoutParams();
size.height=71;
size.width=65;
myButton1.setLayoutParams(size);
}
мой макет дается в картине my Layout
невозможно перемещать объект viewItem из одного вида в другой. Вы можете переместить это в том же виде –
, так что делать, если он должен переместиться с одного макета на другой? есть ли какой-нибудь другой метод ??? –
создать два вида и сделать один видимый и невидимый друг, когда требуется –