gpt4 book ai didi

android - 如果在自定义软键盘上快速键入,LinearLayout 会导致延迟

转载 作者:行者123 更新时间:2023-12-03 17:39:46 25 4
gpt4 key购买 nike

我一直在尝试解决我正在处理的 SoftKeyboard 项目的一个神秘问题。我所做的所有研究的问题根源可能与我创建的布局文件有关。 Lint 提示超过 80 的 View 太多,而且它的类型对我的速度来说很好,但我事后对此做出了行动响应,无法弄清楚滞后的根源在哪里。

我已经完成了我能找到的所有 Android Manifest 技巧和 XML 技巧,尝试转换为新的约束布局相对布局使情况变得更糟。我不知道如何在 Android Studio 2.2RC Build 中使用 Trace View,所以不确定线程​​是否是问题所在。但是我的问题是如何使这个文件更有效地改善滞后。

此外,有时当我按下一个键时它会触发,而其他键则会错过,但是如果我随机在键盘 Canvas 区域上超快速地切换所有手指,例如超快速地敲击我的手指,输入似乎跟上我的输入事件,但输出轨迹落后很慢,比如落后 4-6 秒,这很烦人。对于 Play 上的所有键盘,我发现它们都没有这个问题,因为我可以输入超快,当我停止输入时,输出同时停止。

所以我看到有很多人知道如何构建一个性能出色的键盘,但是这个键盘在尝试快速打字时非常慢。此外,如果我输入大量数据,比如 SMS 消息,它会使键盘崩溃,而另一部分真的让我很烦,就像这段代码有缓冲区限制一样。

这里的限制是 30000 我只能粘贴部分布局文件,由于我没有足够的声誉,我无法回复..

这里的任何键盘大师都可以告诉我我缺少什么吗?

            

<?xml version="1.0" encoding="utf-8"?>
<!--suppress ALL -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:clickable="false"
android:focusableInTouchMode="false"
android:gravity="bottom">

<LinearLayout
android:id="@+id/num_keyLay"
android:layout_width="match_parent"
android:layout_height="54.2dp"
android:orientation="horizontal"
android:weightSum="10"
android:baselineAligned="false">

<LinearLayout
android:id="@+id/ksOne_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksOne_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@drawable/key_drwable_selector"
android:text="1"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/kstwo_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/kstwo_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="2"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksthree_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksthree_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="3"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksFour_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksFour_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="4"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksFive_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksFive_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="5"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksSix_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksSix_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="6"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksSeven_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksSeven_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="7"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksEight_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksEight_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="8"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksNine_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksNine_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="9"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/ksZero_btn_LiLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/ksZero_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="0"
android:textSize="25sp"
android:textColor="@android:color/white"
android:textStyle="bold"
tools:ignore="ContentDescription" />

</LinearLayout>
</LinearLayout>

<LinearLayout
android:id="@+id/line_firstLay"
android:layout_width="match_parent"
android:layout_height="54.2dp"
android:orientation="horizontal"
android:weightSum="10"
tools:ignore="DisableBaselineAlignment">

<LinearLayout
android:id="@+id/q_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/q_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="q"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/Q_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="Q"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/w_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/w_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="w"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/W_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="W"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/e_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/e_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="e"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/E_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="E"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/r_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/r_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="r"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/R_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="R"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/t_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/t_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="t"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/T_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="T"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/y_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/y_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="y"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/Y_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="Y"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/u_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/u_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="u"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/U_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="U"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/i_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

<Button
android:id="@+id/i_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="i"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
tools:ignore="ContentDescription" />

<Button
android:id="@+id/I_btn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/key_drwable_selector"
android:text="I"
android:textColor="@color/white"
android:textSize="25sp"
android:textStyle="bold"
android:textAllCaps="false"
android:visibility="gone"
tools:ignore="ContentDescription" />

</LinearLayout>

<LinearLayout
android:id="@+id/o_btn_ReLay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/backgroud_black"
android:orientation="horizontal" >

最佳答案

我有类似的问题,事实证明,当你快速打字时,你的触摸屏上会有两个指针,你必须处理这个问题,当你使用 onClickListener s 出现问题是因为单击仅在 MotionEvent.ACTION_UP 时才被注册。发生,因此如果您按一个键,然后按另一个键而不按第一个键,则会产生问题,请尝试使用 onTouchListener而是覆盖 MotionEvent.ACTION_DOWN并实现committext那里。

关于android - 如果在自定义软键盘上快速键入,LinearLayout 会导致延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39313576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com