如何在Android的屏幕底部对齐addContentView

时间:2011-06-30 10:04:12

标签: android android-layout

我想问一下addContentView()命令。 我已经在垂直模式下创建了一个自定义视图LinearLayout(fill parent, wrap content)和一些按钮。

我的问题:是否可以使用addContentView()命令将自定义视图放在屏幕底部?

我现在使用addContentView(),但我的自定义视图位于屏幕顶部。 我已经尝试在填充父级中更改自定义视图的高度,但之后我有一个全屏自定义视图。

4 个答案:

答案 0 :(得分:14)

解决方案是将自定义视图包装在填充整个屏幕的RelativeLayout中,然后使用addContentView添加它。例如,要在屏幕底部添加自定义按钮:

// Fake empty container layout
RelativeLayout lContainerLayout = new RelativeLayout(this);
lContainerLayout.setLayoutParams(new RelativeLayout.LayoutParams( LayoutParams.FILL_PARENT , LayoutParams.FILL_PARENT ));

// Custom view
Button mCustomView = new Button(this);
mCustomView.setText("Test");
LayoutParams lButtonParams = new RelativeLayout.LayoutParams( LayoutParams.WRAP_CONTENT , LayoutParams.WRAP_CONTENT );
lButtonParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
mCustomView.setLayoutParams(lButtonParams);
lContainerLayout.addView(mCustomView);

// Adding full screen container
addContentView(lContainerLayout, new LayoutParams( LayoutParams.FILL_PARENT , LayoutParams.FILL_PARENT ) );

这应该是它

答案 1 :(得分:2)

尝试使用以下代码

LayoutParams lp =new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        lp.gravity=Gravity.BOTTOM;
        addContentView(b, lp); 

使用RelativeLayout也可以实现相同目的。您可以添加规则以设置父布局底部的视图。

由于

答案 2 :(得分:0)

您必须将LinearLayout包装在其他布局中。即一个RelativeLayout,并使用addContentView添加它。

    <?xml version="1.0" encoding="utf-8"?>        
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <LinearLayout
            android:id="@+id/yourLayout"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"/>

             <!-- Yout content -->

        </LinearLayout>
    </RelativeLayout>

答案 3 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:id="@+id/rl"
    android:layout_height="360dip">
        <WebView android:id="@+id/webviewHelp" android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
    <Button android:id="@+id/My_btn"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true" android:gravity="center"
        android:textSize="8px" android:text="Download this mp3 file"
        android:textColor="@color/white" android:layout_width="fill_parent"
        android:layout_height="27dip"  />
    <Button android:id="@+id/My_btn1"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true" android:text="this is button !"
        android:layout_width="0dip" android:layout_height="0dip"
        android:visibility="invisible" />
</RelativeLayout>