OnClickListener auf scrollView

Ich habe eine ScrollView mit vielen Elementen

ScrollView scroller = (ScrollView)findViewById(R.id.scrollView); 

Ich muss einen OnClickListener an die Scrollview anschließen, also mach ich

  • Anzahl der Downloads in Google Play
  • Um zu überprüfen, ob alle EditText leer sind
  • Technologie, um iPhone, BlackBerry und Android-Handy zur gleichen Zeit zu schreiben?
  • Dateiname nach filerader asynchron geladene Datei abrufen
  • Get und Parse CSV-Datei in Android
  • Wie kann man die Google Play-Service-Version überprüfen?
  •  scroller.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // This is all you need to do to 3D flip AnimationFactory.flipTransition(viewAnimator, FlipDirection.LEFT_RIGHT); } }); 

    Aber das wird nicht ausgelöst, wenn ich mich berühre. Irgendwelche Ideen?

  • Wie benutzt man layout_aspectRatio im PercentRelativeLayout?
  • Fragment Lebenszyklus - welche Methode wird aufgerufen / verstecken?
  • Zeigen und verstecken Sie eine Ansicht mit einer Folie nach oben / unten Animation
  • So legen Sie Text von TextView fest?
  • Menschlich lesbare DhcpInfo.ipAdresse?
  • Android XXHDPI Ressourcen
  • 3 Solutions collect form web for “OnClickListener auf scrollView”

    Es liegt daran, dass das Kind der ScrollView das Berührungsereignis des Benutzers und nicht das ScrollView . Sie müssen das clickable = false Attribut für jedes Kind des ScrollView für das onClickListener , um auf ScrollView zu arbeiten.

    Oder der Wechsel könnte sein, um den onClickListener auf jedem der ScrollView-Kinder zu setzen und damit umzugehen.

    Die beste Lösung scheint LinearLayout in ScrollView zu ScrollView und den setOnClickListener darauf zu setzen.

     <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/myLayout" android:clickable="true" android:orientation="vertical"> <!-- content here --> </LinearLayout> </ScrollView> 

    In der Aktivität:

     LinearLayout lin = (LinearLayout) fragment.rootView.findViewById(R.id.myLayout); lin.setOnTouchListener(new setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Whatever } }); 

    Sie müssen den setOnClickListener direkt auf das Kind des ScrollView setzen .

    Da ein ScrollView nur ein Kind haben kann, kannst du diesen Ansatz einfach nutzen:

     ScrollView scrollView = //... View.OnClickListener mOnClickListener = new View.OnClickListener() { @Override public void onClick(View view) { // ... } //Set the onClickListener directly on the ScrollView's child scrollView.getChildAt(0).setOnClickListener(mOnClickListener); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.