我有两个xml文件:
separate.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/buttonLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center"> <Button android:id="@+id/myButton" android:layout_width="50dp" android:layout_height="50dp" android:background="@android:drawable/ic_input_add" android:elevation="0dp" android:onClick="onMyButtonClicked"/> </RelativeLayout>
现在,如果我想在主要活动的视图中添加此布局,我必须首先进行膨胀,然后在父布局中推送膨胀的视图。
View buttonLayout = getLayoutInflater().inflate(R.layout.separate, null);
parentLayout.addView(buttonLayout);
但我想做的是
parentLayout.addView(findViewById(R.id.buttonLayout));
我知道它几乎相同,但我希望能够为个人组织做到这一点。换句话说,是否可以在不同文件中分隔视图并在主活动中注册它们(使用其布局的ID),以便我们可以使用findViewById
访问它们?
ps:我试图使用context属性但没有改变。也许我们可以将视图放在activity_main中,并将其隐藏在屏幕上,仅用于此目的?