私はアンドロイド開発で初心者です。私はJavaをよく使っていますが、Android APIはありません。これは就職のためのテストプログラムですので、私は問題解決のための助けが必要です。私はボタンを押すことによって呼び出されるダイアログボックスを作ったが、ダイアログのtextview(私はそれに到達しようとするとアプリケーションがクラッシュする - NullPointerException)に達することができない。Eclipse IDEでも問題は見つからない。私は今あなたが検索している(ダイアログレイアウトでAndroid:ダイアログにアクセスできないTextView
custom_dialog.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_root"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
>
<TextView android:id="@+id/dlgText"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:textColor="#FFF"
/>
</LinearLayout>
BalticAmadeusActivity.java
public class BalticAmadeusActivity extends Activity{
/** Called when the activity is first created. */
Button btnApie;
Button btnForma;
Dialog dlgApie;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnApie = (Button) findViewById(R.id.btnApie);
btnForma = (Button) findViewById(R.id.btnForma);
btnApie.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (v.equals(btnForma)) {
btnForma();
} else if (v.equals(btnApie)) {
btnApie();
}
return false;
}
});
dlgApie = new Dialog(this.getApplicationContext(), android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
dlgApie.setContentView(R.layout.custom_dialog);
TextView dlgText = (TextView) findViewById(R.id.dlgText);
dlgText.setText("Gera uzduotis"); //at this line, app crashes
//dlgText.setText("U\u017Eduotis s\u0117kmingai \u012Fgyvendinta");
}
private void btnApie() {
// TODO Auto-generated method stub
dlgApie.show();
}
private void btnForma() {
// TODO Auto-generated method stub
}
}
main.xmlの外観はどうなっていますか? – Phil