2013-08-28 3 views
4

У меня есть некоторые проблемы с функцией autoLink = «телефон» TextView. Мой UI:Ошибка автозапуска Android auto

<?xml version="1.0" encoding="utf-8"?> 
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/TableLayout1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
     <TextView 
      android:id="@+id/personPhone" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:autoLink="phone" 
      android:text="test" /> 
</TableLayout> 

Когда я переключение на графический макет (в ADT) им получать следующее сообщение об ошибке: Исключение возникает при визуализации: ком/Android/i18n/номера телефонов/PhoneNumberUtil Сведения об исключении зарегистрированных в Window> Show View> Error Log следующие классы не могут быть найдены: - TextView (Изменения в android.widget.TextView, Fix Build Path, редактировать XML)

Ошибка в журнале:

java.lang.NoClassDefFoundError: com/android/i18n/phonenumbers/PhoneNumberUtil 
    at android.text.util.Linkify.gatherTelLinks(Linkify.java:451) 
    at android.text.util.Linkify.addLinks(Linkify.java:230) 
    at android.widget.TextView.setText(TextView.java:3700) 
    at android.widget.TextView.setText(TextView.java:3622) 
    at android.widget.TextView.<init>(TextView.java:1259) 
    at android.widget.TextView.<init>(TextView.java:607) 
    at sun.reflect.GeneratedConstructorAccessor16.newInstance(Unknown Source) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
    at java.lang.reflect.Constructor.newInstance(Unknown Source) 
    at android.view.LayoutInflater.createView(LayoutInflater.java:594) 
    at android.view.BridgeInflater.onCreateView(BridgeInflater.java:86) 
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694) 
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:131) 
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:755) 
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:727) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:373) 
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:385) 
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:332) 
    at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:325) 
    at com.android.ide.eclipse.adt.internal.editors.layout.gle2.RenderService.createRenderSession(RenderService.java:440) 
    at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.renderWithBridge(GraphicalEditorPart.java:1545) 
    at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1302) 
    at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.activated(GraphicalEditorPart.java:1059) 
    at com.android.ide.eclipse.adt.internal.editors.layout.LayoutEditorDelegate.delegatePageChange(LayoutEditorDelegate.java:686) 
    at com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.pageChange(CommonXmlEditor.java:360) 
    at org.eclipse.ui.part.MultiPageEditorPart$2.widgetSelected(MultiPageEditorPart.java:292) 
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248) 
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) 
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:774) 
    at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3028) 
    at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:1749) 
    at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:278) 
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) 
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169) 
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758) 
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053) 
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) 
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942) 
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86) 
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588) 
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) 
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543) 
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) 
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124) 
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629) 
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584) 
    at org.eclipse.equinox.launcher.Main.run(Main.java:1438) 
    at org.eclipse.equinox.launcher.Main.main(Main.java:1414) 

Если я удалить

android:autoLink="phone" 

ошибка исчезает.

Также, если я изменю «телефон» на «электронную почту», ошибок не будет, но «все» вызывают такую ​​же ошибку.

ответ

22

У меня такое же поведение, когда я использую API-уровень 18 для визуализации представления. Это не повлияет на вашу программу. В качестве обходного пути вы можете изменить «версию API для использования при рендеринге в Eclipse» до 16, а не 18 при работе с макетами, включающими автозапуск. Над графическим представлением находится кнопка с иконкой робота и номером, который вы можете использовать, чтобы изменить это.

Эта ошибка также встречается в Android Studio и отслеживается в трекере по проблеме Android на http://code.google.com/p/android/issues/detail?id=59497.

+0

yeap, я установил API 16 с SDK Manager, переключил API компоновки рендеринга и теперь хорошо работает, спасибо. –

+0

API 17 также работает. –

0

У меня есть простое решение. Вы можете использовать инструменты: имя пространства для переопределения андроида пространство имен, например, вы можете использовать в следующий пример кода

<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"> 

      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:autoLink="all" 
       tools:autoLink="none" 
       /> 

Вам нужно только что Xmlns: инструменты = "http://schemas.android. ком/инструменты» и инструменты: Автоссылка =„нет“ Это будет применено только для предварительного рендеринга, вы не можете обнаружили, что атрибуты выполнения

Также вы можете использовать это пространство имен для других атрибутов, напр. :

tools:text="Some text that visible only on preview" 
Смежные вопросы