Dinamik olarak kod kullanarak RelativeLayout
'dan eklenen ve kaldırılan bazı parçalarım var. Fragment'lerden biri ListFragment
'dur ve Close and Save Düğmelerine sahip diğer parçalarımın aksine, bu sadece bir liste içerir.Dışa tıklayarak/öğesine dokunarak Parçayı Kaldırma:
Amacım, bu parçayı etkinlikteki herhangi bir yerde dışına tıklayarak kapatmak/kaldırmaktır.
Aşağıdaki kodu bulduk:
@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);
}
bunun dışında tıklandığında bir değil tam ekran aktivitesini kapatır, ancak ben sadece benim parçası dikdörtgen bulurum anlamak görünmüyor.
Bazı yardımcı olabilir ve bana doğru yönde işaret edebilir mi? Herhangi bir yardım takdir edilecektir.
Teşekkürler.
gerçekten benim sorum sonuna kadar okudum, cevabınızı anlaşılmadı mı? –