Android 如何查看FrameLayout 是否已添加视图

Android how to check in FrameLayout already view add or not

在我的应用程序中,我使用了 Framelayout,并在 FrameLayout 中添加了贴纸视图。 在我添加贴纸视图之前如何检查 Framelayout 是否已添加视图。

在我的应用程序中显示如下错误

java.lang.IllegalStateException: The specified child already has a parent.

我已经在 RecyclerView 适配器 itemView OnClickListener 中添加了 StickerTextView,如下所示:

 itemView.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                tv_sticker.setText(""+ staticData.greetings);
                canvas.addView(tv_sticker);
           }
        });

您可以在添加视图之前使用它:

if(stickerView.getParent() instanceof ViewGroup) {
    ((ViewGroup)stickerView.getParent()).removeView(stickerView);
}
frameLayout.addView(stickerView);

我在添加视图之前使用 removeAllViews() 方法解决了错误,如下所示:

 itemView.setOnClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            tv_sticker.setText(""+ staticData.greetings);
            canvas.removeAllViews();
            canvas.addView(tv_sticker);
        }
    });