按钮组件切断了我的自定义视图

Button Component Cuts off my custom View

我的按钮组件占据了我的自定义视图 space class,如果我放的越多,它占用的空间就越大 space,这是什么原因

我的 oncreate 方法:

  @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_control);



    MyCustomPanel view = new MyCustomPanel(this);
    DisplayMetrics metrics;
    metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    int height = getDPI(500, metrics);
    int width = getDPI(800,metrics);
    layout = (LinearLayout) findViewById(R.id.r2) ;
    layout1 = (LinearLayout) findViewById(R.id.l2);

    ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(width,
            height);
    layout.addView(view,params);
    }

这是我的 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/r2"
android:gravity="bottom|start"
android:layout_gravity="bottom|start"
tools:context="company.ciso.com.wheelchair.Control">

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="50dp"
    android:gravity="top|end"
    android:layout_gravity="top|end"
    android:id="@+id/l2"
    >
   <Button
       style="?android:attr/buttonStyleSmall"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:id="@+id/b1"
       android:text="S1" />

</LinearLayout>

</LinearLayout>

这些是屏幕截图

此外,是否可以设置我的自定义视图的引力。??

使用此代码更新您的布局。

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/l2"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:layout_gravity="top|end"
        android:gravity="top|end"
        android:orientation="horizontal">

        <Button
            android:id="@+id/b1"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="S1" />

    </LinearLayout>

    <LinearLayout
        android:id="@+id/r2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:orientation="horizontal"></LinearLayout>
</RelativeLayout>