android – 三星设备崩溃包含链接的EditText

前端之家收集整理的这篇文章主要介绍了android – 三星设备崩溃包含链接的EditText前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,所以这个代码在任何其他设备上都能正常工作,但三星设备崩溃.我似乎不明白为什么真的,但我知道如果我使用一个TextView它不会崩溃.问题是,我需要这个字段的EditText,它可以包含多个链接.我过去一天在寻找解决方案无济于事,所以我以为我会在这里发贴:

注意:这似乎适用于我测试的Nexus和Motorola设备:
有没有一些解决方法,我可能会错过,因为我将要猜测三星扮演如何处理EditText框中的链接

  1. public class MainActivity extends Activity {
  2.  
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. super.onCreate(savedInstanceState);
  6. setContentView(R.layout.activity_main);
  7. EditText t3 = (EditText) findViewById(R.id.text3);
  8. t3.setText(
  9. Html.fromHtml(
  10. "<b>text3:</b> Text with a " +
  11. "<a href=\"http://www.google.com\">link</a> " +
  12. "created in the Java source code using HTML."));
  13. t3.setMovementMethod(LinkMovementMethod.getInstance());
  14.  
  15. }
  16.  
  17. @Override
  18. public boolean onCreateOptionsMenu(Menu menu) {
  19. // Inflate the menu; this adds items to the action bar if it is present.
  20. getMenuInflater().inflate(R.menu.main,menu);
  21. return true;
  22. }
  23.  
  24. }

这里有一个stacktrace,如果这有助于:

  1. 03-21 11:17:34.897: E/AndroidRuntime(1810): FATAL EXCEPTION: main
  2. 03-21 11:17:34.897: E/AndroidRuntime(1810): java.lang.NullPointerException
  3. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.widget.Editor.onTouchUpEvent(Editor.java:1927)
  4. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.widget.TextView.onTouchEvent(TextView.java:8865)
  5. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.View.dispatchTouchEvent(View.java:7817)
  6. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2441)
  7. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2174)
  8. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2441)
  9. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2174)
  10. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2441)
  11. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2174)
  12. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2441)
  13. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2174)
  14. 03-21 11:17:34.897: E/AndroidRuntime(1810): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2326)
  15. 03-21 11:17:34.897: E/AndroidRuntime(1810): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1612)
  16. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.app.Activity.dispatchTouchEvent(Activity.java:2494)
  17. 03-21 11:17:34.897: E/AndroidRuntime(1810): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2274)
  18. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.View.dispatchPointerEvent(View.java:8025)
  19. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4668)
  20. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4556)
  21. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
  22. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4207)
  23. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4176)
  24. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4261)
  25. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4184)
  26. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4318)
  27. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
  28. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4207)
  29. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4176)
  30. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4184)
  31. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
  32. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6302)
  33. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6240)
  34. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6211)
  35. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6382)
  36. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:188)
  37. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.os.MessageQueue.nativePollOnce(Native Method)
  38. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.os.MessageQueue.next(MessageQueue.java:132)
  39. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.os.Looper.loop(Looper.java:124)
  40. 03-21 11:17:34.897: E/AndroidRuntime(1810): at android.app.ActivityThread.main(ActivityThread.java:5455)
  41. 03-21 11:17:34.897: E/AndroidRuntime(1810): at java.lang.reflect.Method.invokeNative(Native Method)
  42. 03-21 11:17:34.897: E/AndroidRuntime(1810): at java.lang.reflect.Method.invoke(Method.java:525)
  43. 03-21 11:17:34.897: E/AndroidRuntime(1810): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1187)
  44. 03-21 11:17:34.897: E/AndroidRuntime(1810): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
  45. 03-21 11:17:34.897: E/AndroidRuntime(1810): at dalvik.system.NativeStart.main(Native Method)

解决方法

Clickable links and copy/paste menu in EditView in android

这个帖子帮助我,如果有人对答案感兴趣.

猜你在找的Android相关文章