我有一个自定义课程。哪个效果很好。
public class FocusGameView extends SurfaceView implements Runnable
在活动本身,我想把'FocusGameView'放在我已经在xml文件上创建的视图上。
所以我试着像这样使用'inflate':
public class FocusGame extends Activity {
FocusGameView fgv;
View v;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
fgv= new FocusGameView(this);
v=(View) findViewById(R.id.frame_focus_game);
LayoutInflater mInflater;
mInflater = LayoutInflater.from(fgv.getContext());
v = mInflater.inflate(R.layout.activity_focus_game, null);
setContentView(R.layout.activity_focus_game);
}
此代码的结果是打开活动并设置布局。不将自定义视图放在视图本身上。
我真的希望你能帮助我。
提前致谢;
的Yaniv。
答案 0 :(得分:1)
您只能将视图添加到视图组而不是视图,所以让我们将View v视为RelativeLayout:
公共类FocusGame扩展了Activity {
FocusGameView fgv;
RelativeLayout v;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_focus_game);
v=(View)findViewById(R.id.frame_focus_game);
fgv= new FocusGameView(this);
v.addView(fgv); //You only need to add the view to a parent to make it appear
}