android - ScrollView 上的 OnClickListener

标签 android

我有一个包含很多元素的 ScrollView

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

我需要将 onClickListener 附加到 ScrollView ,所以我这样做

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); 
            }

        });

但是当我触摸时这不会被触发。有什么想法吗?

最佳答案

最好的解决方案似乎是将 LinearLayout 放入 ScrollView 中,并在其上设置 setOnClickListener

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/myLayout"
        android:clickable="true"
        android:orientation="vertical">

       <!-- content here -->
   </LinearLayout>
</ScrollView>

在 Activity 中:

LinearLayout lin = (LinearLayout) fragment.rootView.findViewById(R.id.myLayout);

lin.setOnTouchListener(new setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            // Whatever
        }
});

关于android - ScrollView 上的 OnClickListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16776687/

相关文章:

java - Canvas.clipRegion(区域区域)已弃用

android - Android中 "@id/"和 "@+id/"的区别

android - GLSL 着色器不会从统一变量渲染颜色

android - 为什么 notifyItemChanged 不起作用

java - Google SafetyNet API JwsResult 是一个散列字符串而不是 JSON

Android版本发布警告消息: This App Bundle contains Java/Kotlin code,可能被混淆

android - 哪些版本的 Android 支持 Material 3 (MD3)

Android:键盘弹出时背景图像调整大小

android - 如何设置安卓背景音乐只播放一次

android - RecyclerView - 如何平滑滚动到某个位置的项目顶部?