У меня есть Activity, макет xml которого содержит макет Constraint и Linearlayout, RecyclerView в качестве дочерних макетов.
У меня есть кнопка, привязанная к прослушивателю onCLick на адаптере, каждый раз, когда выполняется щелчок. Приложение аварийно завершает работу и регистрирует эту ошибку.
2019-09-11 09:52:19.713 22060-22060/com.myapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.myapp PID: 22060
java.lang.ClassCastException: a n d r o i d x . r e c y c l e r v i e w . w i d g e t . R e c y c l e r V i e w $ L a y o u t P a r a m s c a n n o t b e c a s t t o a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t $ L a y o u t P a r a m s < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . g e t T a r g e t W i d g e t ( C o n s t r a i n t L a y o u t . j a v a : 1 1 4 4 ) < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . s e t C h i l d r e n C o n s t r a i n t s ( C o n s t r a i n t L a y o u t . j a v a : 1 0 2 8 ) < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . u p d a t e H i e r a r c h y ( C o n s t r a i n t L a y o u t . j a v a : 8 0 3 ) < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . o n M e a s u r e ( C o n s t r a i n t L a y o u t . j a v a : 1 5 6 1 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . i n t e r n a l M e a s u r e C h i l d r e n ( C o n s t r a i n t L a y o u t . j a v a : 1 2 2 7 ) < b r / > a t a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t . o n M e a s u r e ( C o n s t r a i n t L a y o u t . j a v a : 1 5 7 2 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w G r o u p . m e a s u r e C h i l d W i t h M a r g i n s ( V i e w G r o u p . j a v a : 6 6 0 2 ) < b r / > a t a n d r o i d . w i d g e t . F r a m e L a y o u t . o n M e a s u r e ( F r a m e L a y o u t . j a v a : 1 8 5 ) < b r / > a t a n d r o i d x . a p p c o m p a t . w i d g e t . C o n t e n t F r a m e L a y o u t . o n M e a s u r e ( C o n t e n t F r a m e L a y o u t . j a v a : 1 4 3 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w G r o u p . m e a s u r e C h i l d W i t h M a r g i n s ( V i e w G r o u p . j a v a : 6 6 0 2 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . m e a s u r e C h i l d B e f o r e L a y o u t ( L i n e a r L a y o u t . j a v a : 1 5 1 4 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . m e a s u r e V e r t i c a l ( L i n e a r L a y o u t . j a v a : 8 0 6 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . o n M e a s u r e ( L i n e a r L a y o u t . j a v a : 6 8 5 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w G r o u p . m e a s u r e C h i l d W i t h M a r g i n s ( V i e w G r o u p . j a v a : 6 6 0 2 ) < b r / > a t a n d r o i d . w i d g e t . F r a m e L a y o u t . o n M e a s u r e ( F r a m e L a y o u t . j a v a : 1 8 5 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w G r o u p . m e a s u r e C h i l d W i t h M a r g i n s ( V i e w G r o u p . j a v a : 6 6 0 2 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . m e a s u r e C h i l d B e f o r e L a y o u t ( L i n e a r L a y o u t . j a v a : 1 5 1 4 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . m e a s u r e V e r t i c a l ( L i n e a r L a y o u t . j a v a : 8 0 6 ) < b r / > a t a n d r o i d . w i d g e t . L i n e a r L a y o u t . o n M e a s u r e ( L i n e a r L a y o u t . j a v a : 6 8 5 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w G r o u p . m e a s u r e C h i l d W i t h M a r g i n s ( V i e w G r o u p . j a v a : 6 6 0 2 ) < b r / > a t a n d r o i d . w i d g e t . F r a m e L a y o u t . o n M e a s u r e ( F r a m e L a y o u t . j a v a : 1 8 5 ) < b r / > a t c o m . a n d r o i d . i n t e r n a l . p o l i c y . D e c o r V i e w . o n M e a s u r e ( D e c o r V i e w . j a v a : 7 2 4 ) < b r / > a t a n d r o i d . v i e w . V i e w . m e a s u r e ( V i e w . j a v a : 2 2 0 7 1 ) < b r / > a t a n d r o i d . v i e w . V i e w R o o t I m p l . p e r f o r m M e a s u r e ( V i e w R o o t I m p l . j a v a : 2 4 2 2 ) < b r / > a t a n d r o i d . v i e w . V i e w R o o t I m p l . m e a s u r e H i e r a r c h y ( V i e w R o o t I m p l . j a v a : 1 5 0 4 ) < b r / > a t a n d r o i d . v i e w . V i e w R o o t I m p l . p e r f o r m T r a v e r s a l s ( V i e w R o o t I m p l . j a v a : 1 7 6 1 ) < b r / > a t a n d r o i d . v i e w . V i e w R o o t I m p l . d o T r a v e r s a l ( V i e w R o o t I m p l . j a v a : 1 3 9 2 ) < b r / > a t a n d r o i d . v i e w . V i e w R o o t I m p l $ T r a v e r s a l R u n n a b l e . r u n ( V i e w R o o t I m p l . j a v a : 6 7 5 2 ) < b r / > a t a n d r o i d . v i e w . C h o r e o g r a p h e r $ C a l l b a c k R e c o r d . r u n ( C h o r e o g r a p h e r . j a v a : 9 1 1 ) < b r / > a t a n d r o i d . v i e w . C h o r e o g r a p h e r . d o C a l l b a c k s ( C h o r e o g r a p h e r . j a v a : 7 2 3 ) < b r / > a t a n d r o i d . v i e w . C h o r e o g r a p h e r . d o F r a m e ( C h o r e o g r a p h e r . j a v a : 6 5 8 ) < b r / > a t a n d r o i d . v i e w . C h o r e o g r a p h e r $ F r a m e D i s p l a y E v e n t R e c e i v e r . r u n ( C h o r e o g r a p h e r . j a v a : 8 9 7 ) < b r / > a t a n d r o i d . o s . H a n d l e r . h a n d l e C a l l b a c k ( H a n d l e r . j a v a : 7 9 0 ) < b r / > a t a n d r o i d . o s . H a n d l e r . d i s p a t c h M e s s a g e ( H a n d l e r . j a v a : 9 9 ) < b r / > a t a n d r o i d . o s . L o o p e r . l o o p ( L o o p e r . j a v a : 1 6 4 ) < b r / > a t a n d r o i d . a p p . A c t i v i t y T h r e a d . m a i n ( A c t i v i t y T h r e a d . j a v a : 6 4 9 4 ) < b r / > a t j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( N a t i v e M e t h o d ) < b r / > a t c o m . a n d r o i d . i n t e r n a l . o s . R u n t i m e I n i t $ M e t h o d A n d A r g s C a l l e r . r u n ( R u n t i m e I n i t . j a v a : 4 3 8 ) < b r / > a t c o m . a n d r o i d . i n t e r n a l . o s . Z y g o t e I n i t . m a i n ( Z y g o t e I n i t . j a v a : 8 0 7 ) < b r / > < / к о д > < b r / > < b r / > Э т о с х е м а м о е й а к т и в н о с т и н и ж е : < / p > < b r / > < b r / > < c o d e > & l t ; ? x m l v e r s i o n = " 1 . 0 " e n c o d i n g = " u t f - 8 " ? & g t ; < b r / > & l t ; a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t < b r / > x m l n s : a n d r o i d = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s / a n d r o i d " < b r / > x m l n s : a p p = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s - a u t o " < b r / > x m l n s : t o o l s = " h t t p : / / s c h e m a s . a n d r o i d . c o m / t o o l s " < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ m a r g i n = " 8 d p " < b r / > a n d r o i d : e l e v a t i o n = " 2 d p " < b r / > a n d r o i d : b a c k g r o u n d = " @ d r a w a b l e / b i l l _ b o r d e r " < b r / > t o o l s : c o n t e x t = " . u i . M y B i l l s A c t i v i t y " & g t ; < b r / > < b r / > & l t ; a n d r o i d x . c o n s t r a i n t l a y o u t . w i d g e t . C o n s t r a i n t L a y o u t < b r / > a n d r o i d : i d = " @ + i d / c o n t a i n e r " < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r " < b r / > a n d r o i d : p a d d i n g B o t t o m = " 6 0 d p " < b r / > a p p : l a y o u t _ c o n s t r a i n t L e f t _ t o L e f t O f = " p a r e n t " < b r / > a p p : l a y o u t _ c o n s t r a i n t R i g h t _ t o R i g h t O f = " p a r e n t " < b r / > a p p : l a y o u t _ c o n s t r a i n t T o p _ t o B o t t o m O f = " p a r e n t " & g t ; < b r / > < b r / > & l t ; a n d r o i d x . a p p c o m p a t . w i d g e t . A p p C o m p a t T e x t V i e w < b r / > a n d r o i d : i d = " @ + i d / n u m b e r _ o f _ p a r t s " < b r / > a n d r o i d : l a y o u t _ w i d t h = " w r a p _ c o n t e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : t e x t = " @ s t r i n g / p a r t s " < b r / > android:textColor="@color/colorPrimary"
android:gravity="center"
android:padding="20dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
Это мой класс ADAPTER ниже:
public class MysBillAdapter extends RecyclerView.Adapter {
private String[] mDataset;
public static class MyBillViewHolder extends RecyclerView.ViewHolder {
private final AppCompatButton hideShow;
private final LinearLayout percentageLayout;
private final LinearLayout dueDateLayout;
public View view;
public MyBillViewHolder(View v) {
super(v);
hideShow = v.findViewById(R.id.hide_show);
percentageLayout = v.findViewById(R.id.percentage_layout);
dueDateLayout = v.findViewById(R.id.due_date_layout);
}
}
// Provide a suitable constructor (depends on the kind of dataset)
public MysBillAdapter(String[] myDataset) {
mDataset = myDataset;
}
// Create new views (invoked by the layout manager)
@Override
public MysBillAdapter.MyBillViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
// create a new view
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_bills, parent, false);
return new MyBillViewHolder(v);
}
// Replace the contents of a view (invoked by the layout manager)
@Override
public void onBindViewHolder(@NonNull final MyBillViewHolder holder, final int position) {
holder.hideShow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
holder.percentageLayout.setVisibility(View.GONE); // This throws an exception
}
});
}
// Return the size of your dataset (invoked by the layout manager)
@Override
public int getItemCount() {
return mDataset.length;
}
}
Мой xml-файл макета
Класс «Моя активность»
public class MyBillActivity extends AppCompatActivity {
private RecyclerView recyclerView;
private RecyclerView.Adapter mAdapter;
private RecyclerView.LayoutManager layoutManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_bill);
recyclerView = (RecyclerView) findViewById(R.id.recycler);
recyclerView.setHasFixedSize(true);
layoutManager = new LinearLayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
// specify an adapter (see also next example)
mAdapter = new MyBillAdapter(new String[]{"", "", "", ""});
recyclerView.setAdapter(mAdapter);
}
}
Подробнее здесь: https://stackoverflow.com/questions/578 ... to-android
Androidx.recyclerview.widget.RecyclerView$LayoutParams не может быть преобразован в androidx.constraintlayout.widget.Con ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Android: Constraintlayout.widget.ConstraintLayout нельзя привести к android.widget.TextView
Anonymous » » в форуме JAVA - 0 Ответы
- 89 Просмотры
-
Последнее сообщение Anonymous
-