Clipped-Taste erhält keine Touch-Eingabe

Ich habe eine FAB, die zwischen zwei Layouts wohnt. Mit negativem Rand neben android:clipChildren und android:clipToPadding beide auf false gesetzt Ich bin in der Lage, diese angenehm platzierte kleine Taste zu produzieren:

Bildbeschreibung hier eingeben

  • Pause CountDownTimer in Android, wenn Aktivität nicht vorne ist
  • Wie ändere ich die Schriftstile und das Gesicht in Android?
  • WebView Rendering Problem in Android KitKat
  • Root-Berechtigungen für eine Android-Anwendung (Komplette App nicht nur wenige Befehle)
  • Erkennung von Auswahländerungen in WebView
  • Fragment isVisible () true, wenn nicht
  • Nun ist das Problem, dass die untere Hälfte des FAB keine Berührungseingabe oder sonstiges Wort erhält: nicht anklickbar. Ich habe versucht, mit android:elevation , die sicherstellt, dass es im höchsten Z-Wert sitzt, aber das Problem bleibt. Die Top-Hälfte, mittlerweile, funktioniert ganz gut.

    Bildbeschreibung hier eingeben

    Ich bin irgendwie auf diesem, könnte jemand hier mir helfen, was zu tun? Unten ist mein XML für das Layout, falls Sie es brauchen.

     <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" android:id="@+id/rl_root" android:layout_width="match_parent" android:layout_height="match_parent" android:clipChildren="false" android:clipToPadding="false"> <id.ridsatrio.taggr.widgets.ObservableScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" android:id="@+id/sv_content" android:layout_width="match_parent" android:layout_height="match_parent" android:clipChildren="false" android:clipToPadding="false"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?android:attr/windowBackground" android:clipChildren="false" android:clipToPadding="false" android:focusable="true" android:focusableInTouchMode="true"> <id.ridsatrio.taggr.widgets.SquaredImageView android:id="@+id/iv_details_header" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:adjustViewBounds="true" android:background="?android:attr/selectableItemBackground" android:clickable="true" android:contentDescription="Album Art Image" android:elevation="@dimen/elevation_none" android:focusable="true" android:scaleType="centerCrop" android:src="@drawable/def_album_art" /> <View android:id="@+id/v_anchor" android:layout_width="match_parent" android:layout_height="@dimen/details_header_height" android:layout_below="@+id/iv_details_header" android:elevation="@dimen/elevation_low" /> <LinearLayout android:id="@+id/ll_track_fields" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/v_anchor" android:orientation="vertical"> ... </LinearLayout> <View android:id="@+id/v_divider" android:layout_width="match_parent" android:layout_height="@dimen/details_section_divider_height" android:layout_below="@id/ll_track_fields" android:layout_marginLeft="@dimen/details_section_divider_margin_start" android:layout_marginTop="@dimen/item_horizontal_margin_xlarge" android:background="@color/dividers_light" /> <LinearLayout android:id="@+id/ll_album_fields" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/v_divider" android:orientation="vertical"> ... </LinearLayout> <RelativeLayout android:id="@+id/rl_header" android:layout_width="match_parent" android:layout_height="@dimen/details_header_height" android:layout_gravity="center_horizontal" android:background="@color/primary" android:clipChildren="false" android:clipToPadding="false" android:elevation="@dimen/elevation_low"> ... <com.melnykov.fab.FloatingActionButton android:id="@+id/fab_details" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_marginBottom="@dimen/details_header_fab_margin_bottom" android:layout_marginLeft="@dimen/details_header_fab_margin_start" android:background="?android:attr/selectableItemBackground" android:elevation="@dimen/elevation_medium" android:src="@drawable/ic_action_down" fab:fab_colorNormal="@color/primary_dark" fab:fab_colorPressed="@color/primary" fab:fab_type="mini" /> </RelativeLayout> </RelativeLayout> </id.ridsatrio.taggr.widgets.ObservableScrollView> ... </RelativeLayout> 

    Jede Hilfe wäre sehr dankbar. Sollten Sie hier weitere Details benötigen, würde ich mich auch gerne weiterempfehlen.

    Danke im Voraus!


    Edit : Danke an MoshErsan , ich endlich in der Lage, diese Arbeit zu bekommen. Hier ist meine Arbeit XML in Fall jemand begegnen das gleiche Problem wie meine:

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" android:id="@+id/rl_root" android:layout_width="match_parent" android:layout_height="match_parent" android:clipChildren="false" android:clipToPadding="false"> <id.ridsatrio.taggr.widgets.ObservableScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" android:id="@+id/sv_content" android:layout_width="match_parent" android:layout_height="match_parent" android:clipChildren="false" android:clipToPadding="false"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?android:attr/windowBackground" android:clipChildren="false" android:clipToPadding="false" android:focusable="true" android:focusableInTouchMode="true"> <id.ridsatrio.taggr.widgets.SquaredImageView android:id="@+id/iv_details_header" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:adjustViewBounds="true" android:background="?android:attr/selectableItemBackground" android:clickable="true" android:contentDescription="Album Art Image" android:elevation="@dimen/elevation_none" android:focusable="true" android:scaleType="centerCrop" android:src="@drawable/def_album_art" /> <View android:id="@+id/v_anchor" android:layout_width="match_parent" android:layout_height="@dimen/details_header_height" android:layout_below="@+id/iv_details_header" android:elevation="@dimen/elevation_low" /> <LinearLayout android:id="@+id/ll_track_fields" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/v_anchor" android:orientation="vertical"> ... </LinearLayout> <View android:id="@+id/v_divider" android:layout_width="match_parent" android:layout_height="@dimen/details_section_divider_height" android:layout_below="@id/ll_track_fields" android:layout_marginLeft="@dimen/details_section_divider_margin_start" android:layout_marginTop="@dimen/item_horizontal_margin_xlarge" android:background="@color/dividers_light" /> <LinearLayout android:id="@+id/ll_album_fields" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/v_divider" android:orientation="vertical"> ... </LinearLayout> <RelativeLayout android:id="@+id/rl_header" android:layout_width="match_parent" android:layout_height="@dimen/details_header_height" android:layout_gravity="center_horizontal" android:background="@color/primary" android:clipChildren="false" android:clipToPadding="false" android:elevation="@dimen/elevation_low"> ... </RelativeLayout> <com.melnykov.fab.FloatingActionButton android:id="@+id/fab_details" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/rl_header" android:layout_alignLeft="@+id/rl_header" android:layout_marginBottom="@dimen/details_header_fab_margin_bottom" android:layout_marginLeft="@dimen/details_header_fab_margin_start" android:background="?android:attr/selectableItemBackground" android:elevation="@dimen/elevation_medium" android:src="@drawable/ic_action_down" fab:fab_colorNormal="@color/primary_dark" fab:fab_colorPressed="@color/primary" fab:fab_type="mini" /> </RelativeLayout> </id.ridsatrio.taggr.widgets.ObservableScrollView> ... </RelativeLayout> 

    Wenn es darum geht, von hier zu lernen, ist es das: Einstellen von android:clipChilden to false erlaubt es, die Ansicht zu zeichnen, da es sich um das übergeordnete Layout handelt. Aber irgendeine Berührungseingabe wäre immer noch auf die Grenzen des Elternteils beschränkt.

  • Gibt es einen Weg, um Runnables Run () eine Ausnahme zu machen?
  • Identifizieren Sie, ob der Sensor funktioniert, wenn der Bildschirm in android ausgeschaltet ist
  • Ändern Sie das Thema nach der Android-Version
  • Wie man einen Toast in AsyncTask anhebt, bin ich aufgefordert, den Looper zu benutzen
  • LoaderCallbacks.onLoadFinished nicht aufgerufen, wenn die Orientierungsänderung während des AsyncTaskLoader-Laufs auftritt
  • Gibt es einen guten Grund für einen ListView-Header, der eine Position einnimmt?
  • One Solution collect form web for “Clipped-Taste erhält keine Touch-Eingabe”

    Sie sollten Ihren FAB Z-Index in das Layout verschieben, um auf der Oberseite der anderen views auf dem Bildschirm zu sein. Wenn also das Berührungsereignis auftritt, sollte das FAB das Berührungsereignis vor einer anderen Ansicht empfangen.

    Und zu verstehen, warum es nicht Berührung Ereignisse im unteren Teil der FAB, dass, weil Sie verwendet haben, android:clipChildren="false" so tatsächlich die Elterngrenze ist kleiner als das, aber die Auslosung passiert aus der Seite, also wenn die Berührungsereignis wird dem Elternteil zuerst empfangen, dann versucht es, es an das gewünschte Kind abzulenken, und das Berührungsereignis muss innerhalb der Elterngrenzen sein, so dass der untere Teil von FAB außerhalb der Grenzen des Elternteils liegt und das Berührungsereignis nicht ist ihm.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.