我有一个包含多个的应用程序,fragments
我想知道如何为每个应用程序添加不同的背景fragment
。我正在使用的布局具有可滚动的选项卡,它们都使用相同的 xml 文件。我也有一个MainActivity
设置视图和一个adapter
为每个fragment
。我知道您可以使用 xml 文件android:background
或类似的东西添加背景,并将其设置为主要活动中的视图,但我不知道如何对每个选项卡执行此操作。感谢您的任何帮助!
问问题
12453 次
2 回答
7
要将背景添加到片段,您必须将其包装在某个容器中
<LinearLayout
android:id="@+id/linearlayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ccc"
android:layout_weight="1"
android:orientation="vertical">
<fragment android:name="com.example.simplefragmentexample.LayOutOne"
android:id="@+id/frag_1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
如果您希望使用相同的 xml 文件,您应该以编程方式设置图像
LinearLayout l = (LinearLayout) findViewById(R.id.linearlayout01);
l.setBackground(Image);
或使用多个带有android:background
.
于 2013-07-17T12:13:48.210 回答
0
您可以使用 Fragment getView()方法获取片段的根视图。然后,您可以使用 View 的setBackground()方法之一设置 View 的背景。例如为每个片段设置随机背景颜色:
for ( Fragment f : fragments ) {
f.getView().setBackgroundColor ( (new Random()).nextInt() );
}
PS:我从未使用过碎片,因此我的回答可能是错误的。
于 2013-07-17T08:26:43.767 回答