首页 > 解决方案 > ContextThemeWrapper 不能在 AppCompatActivity 中强制转换

问题描述

无法解决为:: java.lang.ClassCastException: android.view.ContextThemeWrapper 无法强制转换为 androidx.appcompat.app.AppCompatActivity。
浏览了各个站点,但无法解决我的问题。

holder.ivPlace.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                AppCompatActivity activity = (AppCompatActivity) v.getContext();
                Fragment myFragment = new BookingDetailsFragment();
                activity.getSupportFragmentManager().beginTransaction().replace(R.id.bookingFragment, myFragment)
                        .addToBackStack(null).commit();



            }
        });

布局以这种方式膨胀::

@NonNull
    @Override
    public BookingActivityAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.activity_booking_data, parent, false);
        ViewHolder viewHolder = new ViewHolder(view);
        return viewHolder;

    }

标签: androidfragmentadapter

解决方案


我知道已经晚了,但我通过传递MyActivity.this而不是thisor来解决它getApplicationContext()


推荐阅读