コードを使用してRelativeLayout
から追加または削除されたフラグメントがあります。フラグメントの1つはListFragment
であり、クローズと保存ボタンを持つ他のフラグメントとは反対に、これにはリストのみが含まれています。フラグメントを外して削除する:
私の目標は、このフラグメントをアクティビティの任意の場所でクリックして閉じる/削除することです。
私は、次のコードを発見した:
@Override
public boolean onTouchEvent(MotionEvent event) {
// I only care if the event is an UP action
if (event.getAction() == MotionEvent.ACTION_UP) {
// create a rect for storing the window rect
Rect r = new Rect(0, 0, 0, 0);
// retrieve the windows rect
this.getWindow().getDecorView().getHitRect(r);
// check if the event position is inside the window rect
boolean intersects = r.contains((int) event.getX(), (int) event.getY());
// if the event is not inside then we can close the activity
if (!intersects) {
// close the activity
this.finish();
// notify that we consumed this event
return true;
}
}
// let the system handle the event
return super.onTouchEvent(event);
}
それの外側をクリックしたときではないフルスクリーンアクティビティを閉じますが、私はちょうど私が私のフラグメント矩形を見つけるのですかどのように理解していないようです。
一部の人が私を助けて正しい方向に向けることができますか?どんな助けもありがとう。
ありがとうございました。
は本当にあなたが私の質問は最後まで読んだことが、あなたの答えを理解していませんでしたか? –