当前位置: 首页 > 知识库问答 >
问题:

视图添加到ViewGroup后不可见

沃侯林
2023-03-14

我正在以编程方式将视图添加到FrameLayout:

public class PixelGridView extends FrameLayout {
...
     public void addViewWithoutCoords(TableView view, int column, int row) {
            float x = column * mCellSideSize;
            float y = row * mCellSideSize;

            FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
                        ViewGroup.LayoutParams.WRAP_CONTENT);
                view.setLayoutParams(lp);

            view.setLeft(0);
            view.setTop(0);

            view.setX(x);
            view.setY(y);
            view.setVisibility(VISIBLE);
            addView(view);
        }
...
}

然而,它们都不知何故是看不见的。getChildCount()返回所有count。每个添加的视图的getvisibility()还返回visible

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" android:layout_height="match_parent">
    <ImageView
        android:id="@+id/ivTable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"/>
    <EditText
        android:id="@+id/ivTableName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@color/style_table_grey"
        android:textColor="@android:color/white"/>
</RelativeLayout>

即使我添加新的视图没有拖动,一切都变得可见。

共有1个答案

张心水
2023-03-14

FrameLayoutRelativeLayout的项视图可以重叠。如果两个项视图位于FrameLayout的相同位置,则第一个加载的项将被后面的项覆盖。

 类似资料:
  • 我想添加一个headerview,当用户向下滚动时隐藏,当用户向上滚动时再次显示。 例子:https://imgur.com/a/tTq70B0 正如你在链接中看到的“你写的是……”pharase仅在用户滚动到顶部时显示。Android sdk中有类似的东西吗? 我怎样才能做到同样的事?

  • 若要添加一个新的视图,点击工具栏的 按钮,并点击画布的任意位置。你可以从浏览器的模型选项卡添加一个现有的视图,简单地从模型选项卡拖放视图到画布。 【注意】如果你右击视图连接器,你可以选择添加或删除顶点,以及更改它的颜色,或者前往源视图和目标表。 在画布中视图对象的弹出式菜单选项包括: 选项 描述 设计视图 在视图设计器中编辑视图结构。设计器内的选项卡和选项是根据你所选择的图表数据库类型而有所不同。

  • 若要添加一个新的视图,点击工具栏的 按钮,并点击画布的任意位置。你可以从浏览器的模型选项卡添加一个现有的视图,简单地从模型选项卡拖放视图到画布。 【注意】如果你按住 Control 键并点按视图连接器,你可以选择添加或删除顶点,以及更改它的颜色,或者前往源视图和目标表。 在画布中视图对象的弹出式菜单选项包括: 选项 描述 设计视图 在视图设计器中编辑视图结构。设计器内的选项卡和选项是根据你所选择的

  • 若要添加一个新的视图,点击工具栏的 按钮,并点击画布的任意位置。你可以从浏览器的模型选项卡添加一个现有的视图,简单地从模型选项卡拖放视图到画布。 【注意】如果你右击视图连接器,你可以选择添加或删除顶点,以及更改它的颜色,或者前往源视图和目标表。 在画布中视图对象的弹出式菜单选项包括: 选项 描述 设计视图 在视图设计器中编辑视图结构。设计器内的选项卡和选项是根据你所选择的图表数据库类型而有所不同。

  • 此字段已被删除。若要使用或保存此已保存视图,必须删除该字段。 错误的图像。 编辑: 在遵循跟踪建议后,我能够在错误日志中生成此内容。

  • 英文原文:http://emberjs.com/guides/views/adding-layouts-to-views/ 视图可以拥有一个次模板来包裹其主模板。如同模板一样,布局是可以插入到视图标签下的Handlebars模板。 通过设置layoutName属性来配置视图的布局模板。 而布局模板通过Handlebars的{{yield}}助手来指定在哪里插入主模板。视图渲染后的template的