現在、私はそうのように、Linear Layout
内、ボタンを持っています。ボタンをクリックするとPopupWindowが表示されますか?</p> <p>私も(ボタンがクリックされたときに実際に実行しない)createPopup拡張子を持っている:
public void createPopup(View view) {
}
私はその中にTextView
とPopupWindow
を作成しようとしました。私はshowAtLocation(parent, gravity, x, y)
を呼び出しました。parent
はルートLinearLayout
です。 gravity
は,x
およびy
であり、いずれも10
であった。
ボタンをクリックすると、showAtLocation()
と表示されたIllegalStateException
エラーが発生しました。ここでcreatePopup()
機能は次のとおりです。
PopupWindow popUp;
LinearLayout layout;
LinearLayout main;
TextView value;
LayoutParams params;
boolean click = true;
public void createPopup(View view) {
popUp = new PopupWindow(this);
layout = new LinearLayout(this);
main = (LinearLayout) findViewById(R.id.parent);
value = new TextView(this);
if(click) {
popUp.showAtLocation(main, Gravity.BOTTOM, 10, 10);
popUp.update(50, 50, 300, 80);
click = false;
} else {
popUp.dismiss();
click = true;
}
params = new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
layout.setOrientation(LinearLayout.VERTICAL);
value.setText(R.string.message);
layout.addView(value, params);
popUp.setContentView(layout);
setContentView(main);
TextView status = (TextView) findViewById(R.id.status);
status.setTextSize(28);
status.setText("Status of Popup: Don't worry, you're never going to get this.");
}
私が知りたいのですがどのようなものです:
- そのエラーが何を意味するのでしょうか?
- なぜ表示されますか?
- どうすれば修正できますか?
- 私はボタンをクリックするだけで表示され、簡単なポップアップウィンドウをどのように作成するのですか?*
私はそれは次のようになり少なくとも1つのパラメータを(取る関数を作成できるようにしたいと思います* a String
)を作成してから、String
を含むポップアップウィンドウと、ポップアップウィンドウを閉じるボタンを作成します。
EDIT:これは、ポップアップの問題に接続されているかどうかわからないが、私はアプリを実行したとき、私はこのエラーを取得する:
07-13 19:51:48.448 133-133/? E/[EGL-ERROR]: egl_image* _egl_create_image_ANDROID_native_buffer(egl_display*, egl_context*, EGLClientBuffer, EGLint*, void*):593: CHUN try create image with crop 0,0,0,0
[ 07-13 19:51:48.448 133: 133 E/ ]
CHUN map external image rgb 1024 x 600
SECOND EDIT:私は上記の関連するコードを追加しました。
エラーの完全なスタックトレースを投稿してください。エラーメッセージも含めて、重要です。 – JoxTraex
私はそれを再現できるかどうかわかりませんが、試してみることができます。 –
何が起こっているかを理解するのに非常に役立つ、エラーを出すときには、5つの完全なスタックトレースを確認してください。 – JoxTraex