首页 文章

布局上的点击次数过多

提问于
浏览
0

我的布局包含一些按钮 . 如果我非常快地点按按钮(就像疯了一样)

我有这个错误:编舞:跳过X帧!应用程序可能在其主线程上做了太多工作 .

这些按钮没有特定的背景或点击/点击监听器 .

我认为这些按钮的onDraw方法会中断主线程太长时间 .

我可以使用旗帜或其他东西来阻止这种情况吗?所以我想向Choreographer / Looper发送一条消息,跳过所有事件而不仅仅是一些框架 .

如果我使用具有复杂层次结构的布局,我点击带有监听器的按钮,应用程序会冻结 . 加载屏幕/对话框它不是我的选择...任何想法?

这是我片段的布局:(它在FrameLayout中)

<LinearLayout
    android:id="@+id/second_line"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="96dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_weight="1"
    android:weightSum="6"
    android:padding="0dp"
    android:layout_marginLeft="0dip"
    android:layout_marginRight="0dip"
    android:layout_marginTop="0dip"
    android:layout_marginBottom="0dip">
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator3"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY"/>
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator4"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY" />
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator5"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY"/>
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator6"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY" />
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator7"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY"/>
    <Button
        android:layout_width="161dp"
        android:layout_height="96dp"
        android:id="@+id/indicator8"
        android:padding="0dp"
        android:layout_marginLeft="0dip"
        android:layout_marginRight="0dip"
        android:layout_marginTop="0dip"
        android:layout_marginBottom="0dip"
        android:scaleType="fitXY"/>
</LinearLayout>

1 回答

  • 0

    最后,我找到了解决方案 . 它通过这篇文章禁用了通知栏:11131010

    每次单击都会触发一个事件,以向窗口添加视图 . 所以我检查视图是否已添加到窗口中 . 它解决了我的问题 .

相关问题