如何使我的textview成为动态添加的布局的中心

时间:2014-05-29 06:12:06

标签: android android-layout

以下是我的布局代码。我必须在我的Java代码中动态地将TextView添加到ID为“lay_content”的FrameLayout。我的要求是将TextView置于此布局中心。我尝试了很多使用像gravity和centerInParent这样的属性,但我无法让它出现在中心。请帮帮我。提前谢谢!

<CustomLayout
    android:id="@+id/root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <RelativeLayout
        android:id="@+id/lay_title"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true" >

        <ImageView
            android:id="@+id/window_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_margin="5dip"
            android:src="@drawable/logo" />

        <Button
            android:id="@+id/close"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_margin="5dip"
            android:background="@drawable/blue_black_selector"
            android:text="@string/close_x"
            android:textColor="@android:color/white"
            android:textSize="20sp"
            android:textStyle="bold" />

    </RelativeLayout>

    <FrameLayout
        android:id="@+id/divider"
        android:layout_width="match_parent"
        android:layout_height="1dip"
        android:layout_below="@id/lay_title"
        android:background="@android:color/holo_blue_bright" />

    <FrameLayout
        android:id="@+id/lay_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@id/divider"
        android:layout_margin="10dip">
    </FrameLayout>    
</CustomLayout>

1 个答案:

答案 0 :(得分:0)

您需要在文本视图中设置布局参数,同时在框架布局中添加它。以下是该示例代码.-

FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);   layoutParams.gravity = Gravity.CENTER;
textView.setLayoutParams(layoutParams);

FrameLayout framlayout = (FrameLayout)rootView.findViewById(R.id.lay_content);
framlayout.addView(textView);

希望它有所帮助。 :)