Java 以编程方式设置FrameLayout的布局重力';谁的孩子?

Java 以编程方式设置FrameLayout的布局重力';谁的孩子?,java,android,Java,Android,这看起来应该很简单,但我不知道如何为FrameLayout的子级编程设置布局重力 有很多类似的问题,但在尝试了10个之后,setGravity、new FrameLayout.LayoutParams等解决方案似乎都不起作用 下面是我试图实现的一个简化版本 <FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextureView

这看起来应该很简单,但我不知道如何为FrameLayout的子级编程设置布局重力

有很多类似的问题,但在尝试了10个之后,setGravity、new FrameLayout.LayoutParams等解决方案似乎都不起作用

下面是我试图实现的一个简化版本

<FrameLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

    <TextureView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"/>
</FrameLayout>
当我试图在mCameraPreview上设置布局重力时,它只给了我一个重力选项,这是我不想要的


这里缺少什么吗?

布局属性位于
FrameLayout.LayoutParams
上,而不是视图本身。您将需要以下内容:

mCameraPreview=新的CameraPreview(这是recordMode);
FrameLayout preview=(FrameLayout)findViewById(R.id.camera\u preview\u包装器);
FrameLayout.LayoutParams params=新建FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_父级,
FrameLayout.LayoutParams.MATCH_父级,
重力(底部);
preview.addView(mCameraPreview,params);
你试过这个吗
mCameraPreview = new CameraPreview(this, recordMode);
FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview_wrapper);
preview.addView(mCameraPreview);