我有一个奇怪的问题。
我定义了一个垂直方向的LinearLayout。
我定义了一个ImageView和另一个自定义视图。
如果我添加自定义图像然后添加图像,一切都很好,我看到了它们。
如果我先添加图像,我只会看到图像。
我尝试使用LayoutParams的任何变体,但没有任何效果。
我在这里做错了什么?
编辑 - 我甚至尝试了一些默认按钮来检查它不是导致此内容的自定义视图
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
layout = new LinearLayout(getApplicationContext());
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
ImageView image = new ImageView(getApplicationContext());
image.setImageDrawable(getResources().getDrawable(R.drawable.image_strip));
Button button = new Button(getApplicationContext());
button.setText("test");
layout.addView(image, new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
layout.addView(button, new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
setContentView(layout);
}
我找到了一种方法,但它仍有问题。
我使用了RelativeLayout,并将按钮对齐到父级的底部(布局),并将图像设置在按钮上方。
现在我看到了他们两个,但现在的问题是图像宽度也缩小了
答案 0 :(得分:0)
你的形象有多大?如果它比视图区域大,它将按下按钮关闭屏幕。如果按钮是第一个,你会看到它。如果按钮位于图像之后,则不会。这将是我的第一个猜测。您可以在ScrollView中包装整个事物(父LinearLayout)以查看它是否正在执行此操作。如果是这样,你需要以某种方式剪辑图像。
如果图像大于屏幕尺寸,请尝试以下操作。创建父LL,然后创建一个ScrollView并在其中添加图像。将ScrollView的layout_weight设置为1(或其他),并且不要设置按钮的layout_weight。这应该强制ScrollView占用尽可能多的空间,但为按钮留出空间,并允许您滚动查看图像。
我在代码中没有很好的代码。我在XML中做了大部分布局(而不是教化,但我建议你这样做;)
答案 1 :(得分:0)
<ProgressBar
android:layout_height="50dp"
android:layout_width="50dp"
android:id="@+id/myprogress"
android:layout_gravity="center_horizontal"
android:visibility="gone"
style="@android:style/Widget.Holo.Light.ProgressBar.Small"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_below="@+id/title" />
<ImageView
android:layout_height="165dp"
android:id="@+id/imageView1"
android:layout_width="125dp"
android:scaleType="fitXY"
android:visibility="invisible"
android:layout_marginTop="-30dp"
android:layout_gravity="center_horizontal"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"/>
检查进度条和imageview的上述布局。我想要的是将imageview与进度条重叠,我通过设置android:layout_marginTop =&#34; -30dp&#34;来实现同样的目标。到imageview