Android:使用Object在布局中定义视图

时间:2014-07-12 20:33:34

标签: android xml layout view setcontentview

我的帖子基于之前的帖子并大大简化。

Android: Two Views On Top of Each Other Using XML

文件/对象DrawV用粉色圆圈填充屏幕,并允许人们触摸圆圈使其消失。在另一个文件中,私有DrawV drawView = new DrawV(this);这会填充屏幕但不参与布局。

setContentView(drawView)显示点,所以我知道它有效。我想使用名为setContentView(R.layout.activity_title)的布局;其中包括屏幕顶部的两个按钮和下方的点。换句话说,我想知道是否有一种方法可以将某些视图中显示的点放在同一布局中的按钮中。

有任何帮助吗?请?

告诉我你是否需要任何东西。

1 个答案:

答案 0 :(得分:0)

如果DrawV是Android视图(或扩展视图),则可以将其包含在常规xml布局文件中,然后将该布局文件与setContentView(int)一起使用。

要在布局中引用DrawV类,您需要使用完全限定名称(包含)。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent">

  <LinearLayout
    android:id="@+id/buttons"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <Button
      android:id="@+id/button_one"
      android:text="One"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:layout_weight="1.0" />

    <Button
      android:id="@+id/button_two"
      android:text="Two"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:layout_weight="1.0" />
  </LinearLayout>

  <com.example.views.DrawV
    android:layout_below="@id/buttons"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

</RelativeLayout>

上面,RelativeLayout是你的根视图。 LinearLayout buttons是一个ViewGroup,用于保存两个按钮并使它们保持相等的宽度(注意layout_width=0dp并且等于layout_weight)。您的DrawV视图将显示在buttons视图下方,然后将与父容器的宽度和高度匹配(填充它)。

如果您将其保存在src/main/res/layout/activity_circles.xml下,则可以在“活动”中使用setContentView(R.layout.activity_circles)来设置布局。