- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
GridLayout 似乎总是将其子项推送到与他们的需要相对应的布局。例如下面的声明:
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:columnCount="3"
android:orientation="vertical"
android:rowCount="4"
android:useDefaultMargins="true" >
...
<ImageView
android:id="@+id/main_image"
android:layout_column="1"
android:layout_columnSpan="2"
android:layout_row="3"
android:scaleType="fitStart" />
</GridLayout>
GridLayout 声明了 fill_parent,因此我希望它不会溢出。 GridLayout 应该采用父级的大小,在本例中是窗口(全高)。然而,在层次结构查看器中,GridLayout 被设置为垂直和水平的 Wrap_content。
因此 ImageView(这是一个大图像)或任何 TextView 将被推送以适应它们自己并因此溢出容器。
这可以在容器 GridView 适合父级的层次结构查看器中看到:
当 ImageView 溢出时
阅读文档,我明白需要设置重力。据我所知,我使用了各种重力选项和图像缩放选项,但效果不佳。使用 useDefaultMargins="false"
移除边距确实会改变布局溢出,从而导致问题转向 gridlayout。
我的问题如下:
最佳答案
其他布局的诀窍是给第一个元素一个 android:layout_weight="1.0"而对其他元素什么都不做。为什么它有效我不知道,但它确实如此。下面是一个简单的 XML,它显示了一个 ImageView、一个 TextView 和一个 Button。如果没有为 ImageView 分配 layout_weight 参数,文本和按钮会向下移动。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white"
android:orientation="vertical"
android:keepScreenOn = "true" >
<ImageView
android:id="@+id/imageView_surprise"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:scaleType="centerInside"
android:contentDescription="@string/accessibility_imageView_surprise"
android:layout_weight="1.0" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="bottom" >
<TextView
android:id="@+id/textView_message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="@color/black"
android:textSize="24sp"
android:gravity="center_horizontal" />
<Button
android:id="@+id/button_share"
style="@style/button_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
关于android - GridLayout 在给定 fill_parent 高度时下推其子项并溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9127965/
如果 fill_parent 已过期,为什么 android 创建项目,给一个带有 fill_parent 而不是 match_parent 的 main.xml? 我读过很多次,您应该使用 matc
我的父线性布局 所以我有这个类 GifWebView import android.content.Context; import java.io.InputStream; impo
引入 match_parent 和弃用 fill_parent 的原因是什么,因为两者意思相同。这种变化不会妨碍向后兼容吗? 最佳答案 使用 match_parent 而不是 fill_parent
你好。这是我的布局 当我运行它时, ListView 占据全屏。我想要的是 ListView 是全屏的,除了按钮区域,没有提到 dp。谢谢 最佳答案 @mnish 非常正确,除
我正在使用谷歌在 IO 上分发的新 10.1 galaxy tab。我是 android 布局的新手,但 eclipse 中的图形布局看起来不错,但我的应用程序未填充选项卡上的父项。 这是我的main
我的对话框布局包含: 对话框仍然与其内容一样小。 我必须做的: dialog.getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams
如果我使用的是 Dialog,那么 Dialog.getWindow().setLayout(LayoutParams.FILL_PARENT , LayoutParams.FILL_PARENT);
我想通过 layoutInflater 将一个布局放入另一个布局。 这是 main_layout.xml 文件: 这是 vitrin_layout.xml 文件: 最后是我主
首先不得不说this似乎与我的问题相同。但事实并非如此。 我有这个 HTML: .parent{ border: 1px solid gray; width: 70%; } .title{
我有一个自定义的 ViewGroup,它从 xml 布局扩展一个 ListView。列表项布局是从另一个 xml 文件扩展而来的。所有 View 都设置为 fill_parent。 ListView
我有一个简单的布局: 但我的 TextView 并没有占据所有的宽度,即使我做了 fill_parent。我怎样才能使它具有完整尺寸,而不仅仅是内容的尺寸? 最佳答案 使外部 LinearLay
这个问题在这里已经有了答案: What is the difference between match_parent and fill_parent? (17 个答案) 关闭 8 年前。 现在我在整
我正在尝试在 Android 中创建这个简单的布局。 A 应换行以适合其内容并left|center_vertical 对齐。 B 应尽可能扩展,填满所有空白区域。 C 应该是右对齐的,换行以填充它的
如何在 xml 中使用 LinearLayout height half fill_parent? 我想对高度做类似的事情。 最佳答案 我只想用 1 个 linearLayout 半
我有一个带有单行的简单 TextView。我想将高度设置为 match_parent/fill_parent,但 Android 的行为只是 wrap_content。 有没有办法强制 TextVie
Android 开发者指南 Creating a Custom Dialog指定开始的布局: 如果我使用这段代码,我会得到一个位于屏幕中央的对话框,每侧都有大约 40 像素的底层 View 可见。
首先,我是 Android 开发的新手,所以这可能是一个简单的问题,但我真的无法让它工作。 我有以下布局。
Android 中的可绘制形状使用 fill_parent 来确定其大小是否有效? 编辑 这用于 ImageButton View 的背景。我希望按钮的图标后面有一个圆圈,但我并不总是知道按钮
我试图让我的 TextView layout_width 填充父抛出代码。这是我的代码: TextView WatchMovieTitle; private void PrintTheMovieA
在对 SO 和谷歌进行了大量研究之后,我还没有看到任何人遇到与我遇到的问题完全相同的问题,所以这里是: 我最近重新设计了一个 Android 应用程序的整个 UI。在大多数情况下,我只对每个屏幕进行了
我是一名优秀的程序员,十分优秀!