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

时间:2016-06-16 05:33:08

标签: java android xml android-custom-view

我的按钮组件占用了我的自定义视图类的空间,如果我放更多它占用更多空间,任何原因是为什么

我的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>
这些是屏幕截图 enter image description here enter image description here

另外,无论如何都要设置我的自定义视图的重力。

1 个答案:

答案 0 :(得分:0)

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

<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>