Приложение для Android в Eclipse: редактировать текст, не отображаемый в графическом макете

#java #android #eclipse #text #android-edittext

#ява #Android #затмение #текст #android-edittext #java #eclipse

Вопрос:

Я пытаюсь добавить текстовое поле в свое приложение для Android в Eclipse, но затем я перетаскиваю Plain text опцию в графический макет, появляется сообщение внизу. Он читает, Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V
Exception details are logged in Window > Show View > Error Log
даже когда я захожу в Window > Show View , там нет опции журнала ошибок. Весь конструктор теперь бесполезен, потому что я больше не могу его использовать, пока не удалю EditText непосредственно из xml. Что является причиной этой ошибки и как мне это исправить? Я использую последнюю версию (на сегодняшний день, 6-30-14) и Windows 8 Pro x64.

Вот мой полный код макета:

 <RelativeLayout 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"
tools:context="${relativePackage}.${activityClass}" >

<TextView
    android:id="@ id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="18dp"
    android:text="@string/welcome_text" />

<EditText
    android:id="@ id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:ems="10"
    android:inputType="text">

    <requestFocus />
</EditText>

</RelativeLayout>
  

Комментарии:

1. Опубликуйте свой полный макет. Также попробуйте «Alt Shift Q, L», чтобы получить журнал ошибок. Вы должны научиться использовать вкладку xml. Он намного гибче и проще в использовании, чем графический интерфейс.

2. Чего вы пытаетесь достичь? Ваш макет выглядит так, как вы хотите, или вы ничего не видите? Кажется, это работает для меня, поэтому единственное, что я мог видеть без дополнительной информации, — это если у вас нет строки в вашем strings.xml с welcome_type_in_a_new_or_existing_note_name . Которое, кстати, является излишне длинным именем.

3. Я ничего не вижу в окне дизайна. Он просто выделен серым цветом с ошибкой «Исключение, возникшее во время рендеринга: java.lang. System.arraycopy([CI[CII)V» Кроме того, я изменил длинное имя на «welcome_text»

4. Что происходит при запуске приложения? Нам действительно нужно знать, с какой ошибкой вы сталкиваетесь, чтобы помочь. Как я уже сказал, ваш XML отлично работает для меня. Вы пробовали комбинацию клавиш, которую я предложил, чтобы получить журнал ошибок?

5. Почему так много голосов за ответ и так мало за вопрос?

Ответ №1:

Проверьте «Версию Android для использования при рендеринге макетов» и убедитесь, что вы не используете версию, которая заканчивается на «W» для Android Wear (например, API 20: Android 4.4W). Я не верю, что Wear поддерживает EditText .

Как в Android Studio, так и в Eclipse, это выпадающий список с зеленым Android на панели инструментов предварительного просмотра макета. Возможно, вы захотите установить его явно и не разрешать IDE автоматически выбирать версию Android.

Ответ №2:

В среде разработки Eclipse просто измените версию API для предварительного просмотра, как показано на скриншоте ниже. Вместо «Автоматически выбирать лучшее» вручную выберите тот, который подходит вам (API 17 работал для меня).

введите описание изображения здесь

Ответ №3:

Я изменил свою версию Android на Android 4.2, но у меня все еще не работает. Я пробовал разные решения, обнаружившие, что это работает только путем удаления пакета Android 4.4W.

Окно> Android SDK Manager > проверьте Android 4.4W (API 20), если он был установлен > Удалить пакет

Комментарии:

1. вы уверены, что это сработает, удалив пакет API20, поскольку я сталкиваюсь с той же проблемой, и я пытаюсь загрузить другие API

Ответ №4:

Если вы столкнулись с этим в Android Studio, следуйте инструкциям

1) Удалите Android 4.4W (API 20) из менеджера SDK

2) Убедитесь, что у вас установлены инструменты сборки Android SDK 19.1 из SDK Manager.

3) Отредактируйте build.gradle в папке вашего приложения. Установите следующие два значения, как показано ниже

 compileSdkVersion 19
buildToolsVersion "19.1"
  

4) IDE предложит вам синхронизировать файл Gradle с вашим проектом, нажмите Да.

5) Откройте файл activity и затем измените «версию Android для использования при рендеринге макетов в IDE» на «API 19». Это Android-бот зеленого цвета справа в окне предварительного просмотра

Ответ №5:

Я удалил 4.4w из моей папки установки sdk, которая, должно быть, проскользнула мимо меня в прошлый раз, когда я устанавливал sdk. Как только я удалил его, он больше не был опцией and, и eclipse выбрал SDK, который у меня был, который не был W, и он работал.

Ответ №6:

W в Android 4.4W предлагает носимые устройства. Android Wear — это наручные часы, и вы не можете ничего вводить в них, поэтому вы не можете использовать EditText на 4.4W. Измените API на 19 или меньше или измените его на 4.4L

Проверьте это @ https://developer.android.com/design/wear/index.html

Вы можете изменить версию своего предварительного просмотра API, как предложил Джим, если вы не хотите разрабатывать приложения для носимых устройств.