Android:GridView右侧没有显示任何内容(包装内容不工作?)
我想在android中创建一个包含两个组件的DialogFragment: 左侧为带有图像的GridView,右侧为大图像(即GridView中所选图像的较大版本) 问题是我看不到自己的大形象。看起来GridView占据了所有的空间 这是我的XML:Android:GridView右侧没有显示任何内容(包装内容不工作?),android,android-layout,Android,Android Layout,我想在android中创建一个包含两个组件的DialogFragment: 左侧为带有图像的GridView,右侧为大图像(即GridView中所选图像的较大版本) 问题是我看不到自己的大形象。看起来GridView占据了所有的空间 这是我的XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and
<?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:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="horizontal"
android:background="#FFFFFF">
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/image_overview"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:columnWidth="50dp"
android:numColumns="1"
android:gravity="left"
android:background="#FFFFFF"
/>
<ImageView
android:id="@+id/main_image"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:background="#FFFFFF"
/>
</LinearLayout>
借
它按预期工作。
看起来包裹内容设置的宽度要大得多
这是创建我的topvew的代码(有些代码是注释,因为我尝试了一些东西来查看它是否有任何影响):
正如您所看到的,我还打印了父对象的宽度,这是一个非常大的数字。因为这里的视图是gridview中的单个项,所以我假设父视图是gridview?如果是这样的话,我不确定宽度大是否正常,因为它是在wrap_内容上配置的,但如果Android创建了一个特定大小的对话框,那么即使是wrap_内容也可能是正常的
有人知道我如何使用包装内容而不是固定大小吗 在GridView和ImageView中,使用:
android:layout_width="0dp"
android:layout_weight="1"
这应该可以解决它。如果希望一个视图比另一个视图占用更多的可用屏幕空间,可以尝试对每个视图使用不同的权重。首先,感谢Andy Harris&Dipak Kesharya的帮助。它并没有完全解决问题,但它帮助我理解了android:layout\u weight=“0”可能会导致问题 在我将答案发布到这里之前,我已经尝试配置
android:layout_weight="1"
android:layout_weight="1"
仅针对imageview,但这不起作用。
将两者都设置为1,确实会使ImageView可见,但是,它没有正确显示。imageview的大小似乎是正确的,但它以大的形式显示了部分图像(如此放大)
我尝试使用ImageView.ScaleType和AdjustViewBounds,但没有任何效果
如果我配置
android:layout_weight="1"
android:layout_weight="1"
仅对于GridView,它正确地显示了GridView和ImageView,但在这种情况下,GridView占据了所有相应的宽度,这使得对话框的宽度与平板电脑屏幕的宽度相同(更改parentview的宽度以匹配\u parent不会改变这一点)
因此,我现在将继续使用固定尺寸
谢谢你的帮助 您可以在sdk中使用hierarchyviewer,而不是记录布局属性。它为您的布局提供了各种图形表示——非常适合调试!
android:layout_weight="1"
android:layout_weight="1"