在片段 activity 上创建按钮
Create a Button over a fragment activity
是否可以在片段上创建按钮 activity?
我试着把它拖到屏幕上,但他不让我这样做,这样,还有其他选择吗?
有什么方法可以从 XML?
您可以为此使用 ViewStub:ViewStub 是一个延迟膨胀的视图。
您可以像这样在 XML 文件中声明一个 ViewStub:
<ViewStub android:id="@+id/stub"
android:inflatedId="@+id/subTree"
android:layout="@layout/mySubTree"
android:layout_width="120dip"
android:layout_height="40dip" />
android:layout 属性是对将在调用 inflate()
后膨胀的视图的引用。所以
ViewStub stub = (ViewStub) findViewById(R.id.stub);
View inflated = stub.inflate();
当调用方法 inflate()
时,ViewStub 会从其父视图中移除并替换为正确的视图(mySubTree 布局的根视图)。
如果你想务实地做到这一点,那么你的代码应该是这样的:
ViewStub stub = new ViewStub(this);
stub.setLayoutResource(R.layout.mySubTree);
stub.inflate();
这里的 mySubtree 是你想要在膨胀 Activity
或 Fragment
后显示的布局。
是否可以在片段上创建按钮 activity?
我试着把它拖到屏幕上,但他不让我这样做,这样,还有其他选择吗?
有什么方法可以从 XML?
您可以为此使用 ViewStub:ViewStub 是一个延迟膨胀的视图。
您可以像这样在 XML 文件中声明一个 ViewStub:
<ViewStub android:id="@+id/stub"
android:inflatedId="@+id/subTree"
android:layout="@layout/mySubTree"
android:layout_width="120dip"
android:layout_height="40dip" />
android:layout 属性是对将在调用 inflate()
后膨胀的视图的引用。所以
ViewStub stub = (ViewStub) findViewById(R.id.stub);
View inflated = stub.inflate();
当调用方法 inflate()
时,ViewStub 会从其父视图中移除并替换为正确的视图(mySubTree 布局的根视图)。
如果你想务实地做到这一点,那么你的代码应该是这样的:
ViewStub stub = new ViewStub(this);
stub.setLayoutResource(R.layout.mySubTree);
stub.inflate();
这里的 mySubtree 是你想要在膨胀 Activity
或 Fragment
后显示的布局。