Definir o TouchListener para a exibição de raiz sem substituir os toques de visão infantil?
Minha atividade consiste em um Framelayout (chamado fragment_content) onde eu substituo / adiciono fragmentos diferentes. Agora eu configurei um TouchListener para este fragment_content para implementar um "Two-Finger-Swipe" (-> apenas um movimento de furto com dois dedos).
O problema que tenho é que assim que meu Fragmento se estender de um ListFragment, o TouchListener de fragment_content será ignorado. Eu sei que posso definir um listener de toque para o listview, mas que eu tenho que implementar as configurações de listview (-> rolagem, listItemClick).
Existe uma maneira de definir um Touchlistener para a minha visão de raiz (-> FrameLayout) sem substituir as configurações da minha visão infantil (-> ListFragment)?
EDITAR
Eu escrevi uma classe MyTouchController que se estende desde FrameLayout. Nesta classe eu sobrescrevo o método onterceptTouch ().
Na minha atividade que contentView é main.xml, eu inicio o Framelayout:
FrameLayout v = (FrameLayout) findViewById(R.id.main_fragment);
Agora, eu tenho o seguinte problema: como substituir o onInterceptTouchMethod deste main_fragment (-> FrameLayout)?
MyTouchController v = (MyTouchController) findViewById(R.id.main_fragment);
está lançando um ClassCastEsception: android.widget.FrameLayout não pode ser convertido em MyMenuController (mesmo se eu declarar MyTouchController no layout xml).
main.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout
android:id="@+id/main_fragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<FrameLayout
android:id="@+id/main_menu"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</FrameLayout>
EDIT 2 (solução)
main.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<"pkg-name".MyTouchController
android:id="@+id/main_fragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<FrameLayout
android:id="@+id/main_menu"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</FrameLayout>
inflar o layout no código:
MyTouchController v = (MyTouchController) findViewById(R.id.main_fragment);