我有一个名为sample.xml的布局 `
<FrameLayout
android:id="@+id/actionbar"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</FrameLayout>
`
我有两节课 一个是tab.java 第二个是wallpaper.java
所以任何人都可以建议我如何在frame-layout
中显示wallpaper.java答案 0 :(得分:2)
答案 1 :(得分:2)
使用Fragment
是实现目标的最佳选择。
但是如果您不想这样做,您可以将welcome.java
作为普通文件(而不是活动),并将您的布局作为该文件的视图返回。
然后,您可以直接将此返回的视图添加到FrameLayout
。
修改强>
1)从班级中删除extends Activity
。
2)从该课程中删除所有@Override
。
3)将onCreate
更改为: -
Activity activity;
View v;
public View onCreate(Activity activity)//change the name if you want
{
this.activity = activity;
Typeface rt=Typeface.createFromAsset(getAssets(),"font/Carleton.ttf");
//super.onCreate(savedInstanceState);
//setContentView(R.layout.wallpaper);
LayoutInflator li = activity.getLauoutInflator();
v = li.inflate(R.layout.wallpaper, null);
.
.
.
return v;
}
4)将所有findViewById
替换为v.findViewById
5)将所有getResources()
替换为activity.getResources()
6)然后在tab.java
onCreate
中添加welcome.java
FrameLayout
作为<{p}}
Welcome welcome = new Welcome();
frameLayout.addView(welcome.onCreate(this));