キャンバスにさまざまな色の円を描画するビュー クラスがあります。
円をクリックして円の色を表示したときに、円の近くにポップアップウィンドウを表示したい。現在、ポップアップウィンドウを作成しようとして問題に直面しています。
チュートリアルのほとんどは、アクティビティ クラスのポップアップ ウィンドウを実行するため、参照する例が見つかりませんでした。
私のコード:
@Override
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
x = event.getX();
y = event.getY();
// Open popup window
for(int i =0; i < circles.size(); i++){
if (buttonClick == true && circles.get(i).contains(x, y)) {
View view = inflate(getContext(),R.layout.popup_layout, null);
PopupWindow popup = new PopupWindow(view);
popup.showAtLocation(MainActivity.returnView(), Gravity.LEFT, (int)x, (int)y);
}
}
break;
}
ポップアップ ウィンドウ xml ファイル
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@android:color/background_light">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_margin="1dp"
android:background="@android:color/WHITE">
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_margin="20dp">
<TextView
android:id="@+id/ColorTV"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Insert Text here" />
<Button
android:id="@+id/dismissbtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Dismiss" />
</LinearLayout>
</LinearLayout>
</LinearLayout>