我在mail.xml布局中添加了一个文本框。我还有一个用于绘制游戏的表面视图。我正在尝试使用FrameView从SurfaceView上的Surface.xml覆盖到文本框,但我是一个null错误。
我的创作,一切正常,直到我调用“f.addView(text);”
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
iso = new Iso(30,30, this);
FrameLayout f = new FrameLayout(this);
f.addView(iso);
text = (EditText) findViewById(R.id.txt);
f.addView(text);
setContentView(f);
}
我的xml文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<EditText
android:id="@+id/txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:ems="10" >
<requestFocus />
</EditText>
我最终得到一个空指针异常,如果我拿出“f.addView(text)”这行就行了,请帮忙
答案 0 :(得分:0)
您忘记了扩充xml布局。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
iso = new Iso(30,30, this);
FrameLayout f = new FrameLayout(this);
f.addView(iso);
View rootView = LayoutInflater.from(this).inflate(R.layout.main, f);
text = (EditText) rootView.findViewById(R.id.txt);
f.addView(text);
setContentView(f);
}