Ошибка, ссылающаяся на внутреннее представление класса в layout/main.xml

Grrr...

Я создаю подкласс представления как внутренний класс в моем Действии. Прежде чем я просто связался с этим представлением от своего действия с:

setContentView(new CustomView(this));

без проблем.

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

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.grafightscratch.ochemmer/com.grafightscratch.ochemmer.MoleculeTablet}: android.view.InflateException: Binary XML file line #4: Error inflating class com.grafightscratch.ochemmer.MoleculeTablet.MoleculeTabletView
...
Caused by: android.view.InflateException: Binary XML file line #4: Error inflating class com.grafightscratch.ochemmer.MoleculeTablet.MoleculeTabletView
...
Caused by: java.lang.ClassNotFoundException: com.grafightscratch.ochemmer.MoleculeTablet.MoleculeTabletView in loader dalvik.system.PathClassLoader@43b74a28

Таким образом - это представление работало, прежде, когда я связался с ним непосредственно, но когда я пытался добавить его в файле main.xml как часть framelayout, я получил вышеупомянутую ошибку. Я также пытался поместить в расположение с только этим отображаемый через:

<com.grafightscratch.ochemmer.MoleculeTablet.MoleculeTabletView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/molecule_tablet_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

Ничто не работает. Я продолжаю получать ошибки InflateException/ClassNotFoundException. Это жалуется на "строку № 3" в двоичном XML-файле, и если это говорит о main.xml, который является объявлением пакета, которое я трижды проверил.

ОТРЕДАКТИРУЙТЕ я пытался делать это представление отдельным классом (т.е. - не внутренний класс), и оно работает. После некоторого поиска вокруг я нашел некоторые сообщения, говоря, что тег XML должен быть похожим на это:

<com.grafightscratch.ochemmer.MoleculeTablet$MoleculeTabletView ...>

Т.е., знак доллара должен использоваться для разделения innerclass от основного класса. Однако Eclipse блюет на этом, называет это ошибкой и отказывается позволять мне создать или развернуться с тем символом там. Таким образом, теперь вопрос становится: как делает одну ссылку Представление, которое является внутренним классом?

56
задан IcedDante 20 January 2010 в 08:07
поделиться

2 ответа

Сначала загрузите модуль PECL с веб-сайта php.

Затем распакуйте его и скопируйте php_http.dll файла в папку расширения PHP. Затем отредактируйте файл php.ini (c :\WINDOWS\php.ini) и активируйте модуль

extension=php_http.dll
-121--3329804-

Хороший вопрос.

Не кажется, что в Интернете об этом, но я нашел Native File Storage Types (вторая таблица вниз), который показывает каждый собственный тип места хранения файлов и то, что он записан в соответствующий тип данных файла хоста.

например. float = SQLFLT8
real = SQLFLT4
money = SQLMONEY
numeric = SQLNUMERIC

Приносите извинения, если вы уже столкнулись с этим списком.

-121--1918130-

Для внутренних классов синтаксис становится следующим:

<view class="com.grafightscratch.ochemmer.MoleculeTablet$MoleculeTabletView" />

Причина в том, что $ является недопустимым символом в тегах XML.

152
ответ дан 26 November 2019 в 17:00
поделиться

Вам необходимо указать полностью квалифицированное имя вашего класса View В XML для инфляции к работе и просмотру класса будет найден системой выполнения.
Поскольку вы объявили ваше представление как внутренний класс вашей деятельности, полностью квалифицированное имя будет: .outerclassname.innerclassname

Вы уверены com.grafightscratch.ochemmer.CustomView Полностью квалифицированное имя вашего класса?

Править: Спасибо, что напомнили мне об этом. Когда представления объявлены как вложенные классы, есть небольшая аберрация, см. Используйте пользовательский компонент этого документа.

0
ответ дан 26 November 2019 в 17:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: