Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

华为p20 pro 手机报错 #28

Open
prospernew opened this issue Sep 25, 2018 · 1 comment
Open

华为p20 pro 手机报错 #28

prospernew opened this issue Sep 25, 2018 · 1 comment

Comments

@prospernew
Copy link

1 java.util.ArrayList.get(ArrayList.java:437)

2 com.parkingwang.keyboard.engine.NeighborLayoutTransformer.transformLayout(NeighborLayoutTransformer.java:33)
3 com.parkingwang.keyboard.engine.LayoutMixer.transform(LayoutMixer.java:38)
4 com.parkingwang.keyboard.engine.KeyboardEngine.update(KeyboardEngine.java:80)
5 com.parkingwang.keyboard.view.KeyboardView.update(KeyboardView.java:122)
6 com.parkingwang.keyboard.KeyboardInputController$1.onSelectedAt(KeyboardInputController.java:56)
7 com.parkingwang.keyboard.view.InputView$1.onClick(InputView.java:61)
8 android.view.View.performClick(View.java:6329)
9 android.view.View$PerformClick.run(View.java:24996)
10 android.os.Handler.handleCallback(Handler.java:809)
11 android.os.Handler.dispatchMessage(Handler.java:102)
12 android.os.Looper.loop(Looper.java:166)
13 android.app.ActivityThread.main(ActivityThread.java:7377)
14 java.lang.reflect.Method.invoke(Native Method)
15 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:469)
16 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:963)

@asiontang
Copy link

从你的崩溃堆栈上来看,和我碰的问题类似,你可以参考参考.
当前省份=蒙的时候,provinces.size=12,而firstRow.size()=10,则会崩溃:

      java.lang.IndexOutOfBoundsException: Index: 10, Size: 10
   	at java.util.ArrayList.get(ArrayList.java:411)
        	at com.parkingwang.keyboard.engine.NeighborLayoutTransformer.transformLayout(NeighborLayoutTransformer.java:38)

修复方式我简单的修改了
for (int headIdx = 0; headIdx < provinces.size(); headIdx++)
改为
for (int headIdx = 0; headIdx < Math.min(provinces.size(), firstRow.size()); headIdx++)
即可解决此崩溃问题.

完整Commit: Fork/vehicle-keyboard-android@979c57d

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants