【问题标题】:Android - Removing an ImageView from a RelativeLayoutAndroid - 从 RelativeLayout 中删除 ImageView
【发布时间】:2014-10-20 16:30:30
【问题描述】:

如何从 RelativeLayout 中删除 ImageView?出于某种原因RelativeLayout.removeView(iv); 不起作用。我正在像这样以编程方式创建 ImageView:

final ImageView iv = new ImageView(MainActivity.this); 但这不起作用。

我不想使用iv.setVisibility(View.GONE);,因为这并没有真正删除图像,它只是设置了可见性。

为什么这不起作用?有没有其他选择?

【问题讨论】:

  • 在布局中添加图像视图时添加标签并从布局中删除该特定标签
  • @DIVA 如何添加标签?可以举个例子吗?
  • 为什么在RelativeLayout 上调用removeView 不起作用?顺便说一句,您应该使用this 而不是MainActivity.this 来创建视图,因为构造函数接受Context
  • @suitianshi 此代码在 OnClickListener 中,this 不起作用。
  • 首先将 Tag 分配给您的视图,如 iv.setTag("tag1"),然后使用 tagName 从布局中删除子项。

标签: java android xml android-layout uiimageview


【解决方案1】:

下面的代码片段可以帮助您了解动态标签的工作原理:

   addBtn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                LayoutInflater layoutInflater = (LayoutInflater) getBaseContext()
                        .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                final View addView = layoutInflater.inflate(R.layout.row, null);
                Button buttonRemove = (Button) addView
                        .findViewById(R.id.remove);
                addView.setTag(tag);
                buttonRemove.setTag(tag);
                dynamicLayoutsTags.add(tag);
                Container.addView(addView);
                tag++;
                buttonRemove.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        // ((LinearLayout) addView.getParent())
                        // .removeView(addView);
                        Integer removeTag = (Integer) v.getTag();
                        View deleteView = Container.findViewWithTag(removeTag);
                        Container.removeView(deleteView);
                        dynamicLayoutsTags.remove(removeTag);
                    }
                });

            }
        });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-02
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多