Aplikacja na Androida w Eclipse: Edytuj tekst, który nie jest wyświetlany w układzie graficznym

105

Próbuję dodać pole tekstowe do mojej aplikacji na Androida w Eclipse, ale potem przeciągam Plain textopcję na układ graficzny, pojawia się komunikat na dole. Czyta Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V Exception details are logged in Window > Show View > Error Log Nawet kiedy idę do, Window > Show Viewnie ma opcji dziennika błędów. Cały projektant jest teraz bezużyteczny, ponieważ nie mogę go już używać, dopóki nie usunę go EditTextbezpośrednio z xml. Co powoduje ten błąd i jak go naprawić? Używam najnowszej wersji (na dziś 6-30-14) i Windows 8 Pro x64.

Oto mój pełny kod układu:

<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>
AJDev
źródło
Opublikuj swój pełny układ. Spróbuj także „Alt + Shift + Q, L”, aby uzyskać dziennik błędów. Powinieneś nauczyć się korzystać z zakładki xml. Jest znacznie bardziej elastyczny i łatwiejszy w użyciu niż GUI.
codeMagic
Co próbujesz osiągnąć? Czy Twój układ wygląda tak, jak chcesz, czy nic nie widzisz? Wydaje się, że działa dla mnie, więc jedyną rzeczą, którą widzę bez dodatkowych informacji, jest to, że nie masz ciągu w swoim pliku strings.xml z welcome_type_in_a_new_or_existing_note_name. Co, nawiasem mówiąc, jest niepotrzebnie długą nazwą.
codeMagic
Nie widzę nic w oknie projektu. Po prostu jest wyszarzona z błędem „Wyjątek zgłoszony podczas renderowania: java.lang.System.arraycopy ([CI [CII) V”] Ponadto zmieniłem również długą nazwę na „welcome_text”
AJDev
Co się dzieje, gdy uruchamiasz aplikację? Naprawdę musimy wiedzieć, jaki błąd otrzymujesz, aby Ci pomóc. Jak powiedziałem, Twój xml działa dobrze dla mnie. Czy wypróbowałeś kombinację klawiszy, którą zasugerowałem, aby uzyskać dziennik błędów?
codeMagic
1
Dlaczego tak dużo głosów na odpowiedź, a tak mało na pytanie?
kasiomolina

Odpowiedzi:

301

Sprawdź „Wersja Androida do użycia podczas renderowania układów” i upewnij się, że nie używasz wersji kończącej się na „W” na Android Wear ( np. API 20: Android 4.4 W). Nie wierzę, że Wear obsługuje EditText.

Zarówno w Android Studio, jak i Eclipse jest to lista rozwijana z zielonym androidem na pasku narzędzi podglądu układu. Możesz ustawić to jawnie i nie zezwalać IDE na automatyczne wybieranie wersji Androida.

fabiański
źródło
106

Z Eclipse IDE, po prostu zmień wersję API, aby używać jej do podglądu, jak pokazano na poniższym zrzucie ekranu. Zamiast „Automatycznie wybieraj najlepsze”, ręcznie wybierz ten, który Ci odpowiada (zadziałało API 17).

wprowadź opis obrazu tutaj

Jim C
źródło
9

Zmieniłem wersję Androida na Androida 4.2, ale nadal nie działa. Wypróbowałem różne rozwiązania i okazało się, że działa to tylko po usunięciu pakietu Androida 4.4W.

Okno> Android SDK Manager> sprawdź system Android 4.4W (API 20), jeśli został zainstalowany> Usuń pakiet

user3168958
źródło
czy na pewno to zadziała, usuwając pakiet API20, ponieważ mam ten sam problem i próbuję pobrać również inne interfejsy API
Sunishtha Singh
2

Jeśli masz do czynienia z tym problemem w Android Studio, postępuj zgodnie z instrukcjami

1) Odinstaluj system Android 4.4W (API 20) z Menedżera SDK

2) Upewnij się, że masz zainstalowane narzędzia Android SDK Build Tools 19.1 z Menedżera SDK.

3) Edytuj plik build.gradle w folderze aplikacji. Ustaw następujące dwie wartości, jak poniżej

compileSdkVersion 19
buildToolsVersion "19.1"

4) IDE wyświetli monit o zsynchronizowanie pliku Gradle z projektem, kliknij Tak.

5) Otwórz plik aktywności, a następnie zmień „Wersję Androida używaną podczas renderowania układów w IDE” na „API 19”. To jest zielony bot Androida po prawej stronie okna podglądu

Akshay Agarwal
źródło
0

Usunąłem 4.4w ze stosu instalacyjnego zestawu SDK, który musiał mijać, gdy ostatni raz instalowałem pakiet SDK. Kiedy go usunąłem, nie było już i opcja, a eclipse wybrało SDK, który miałem, ale nie było W i zadziałało.

stu
źródło
0

Symbol W w systemie Android 4.4W sugeruje urządzenia do noszenia. Android Wear to zegarek na rękę i nie możesz w nim nic wpisywać, więc nie możesz używać EditText na 4,4 W. Zmień API na 19 lub mniej lub zmień na 4,4L

Sprawdź to @ https://developer.android.com/design/wear/index.html

Możesz zmienić wersję podglądu API zgodnie z sugestią Jima, jeśli nie chcesz tworzyć aplikacji na urządzenia do noszenia.

Harshil
źródło