Ошибка при раздувании класса TouchImageView

Я пытаюсь улучшить свою деятельность по просмотру изображений, преобразовав ImageView в TouchImageView, согласно ответу здесь: Как получить функциональность масштабирования для изображений?

Однако я получаю сообщение об ошибке, когда моя активность пытается загрузить:

Строка двоичного XML-файла № 15: ошибка при раздувании класса TouchImageView

Вот мой image_viewer.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" 
    android:gravity="center" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <!-- 
    <WebView 
        android:id="@+id/webView1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" />
    -->

    <TouchImageView 
        android:id="@+id/imageView1"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" />  

</RelativeLayout>

И мой код внутри onCreate ImageViewer.java (хотя я почти уверен, что выполнение никогда не зайдет так далеко):

    if(filepath != null && filepath.length() > 0 && new  File(filepath).exists())
    {
        Bitmap myBitmap = BitmapFactory.decodeFile(filepath);

        TouchImageView imgView = (TouchImageView) findViewById(R.id.imageView1); 
        imgView.setImageBitmap(myBitmap);
    }

Любые идеи относительно того, почему или что вызывает эту ошибку? То, что я увидел, было самым внутренним исключением/причиной. Не уверен, как я могу получить более подробную информацию об ошибке.

Заранее спасибо.

ОБНОВЛЕНИЕ:

Исключение возникает при выполнении этой строки:

setContentView(R.layout.image_viewer);

Более подробная информация об ошибке:

java.lang.ClassNotFoundException: android.view.TouchImageView в загрузчике dalvik.system.PathClassLoader@44bfde70


person Kon    schedule 27.07.2011    source источник
comment
это весь ваш XML-файл? там написано строка 15, но там меньше строк. Кроме того, попробуйте перейти в режим отладки в eclipse, если можете, и установите точку останова в начале вашего onCreate, а затем выполните шаг и посмотрите, как далеко вы продвинулись.   -  person Martyn    schedule 27.07.2011
comment
Я удалил закомментированный код. Вставлю обратно для точности. :)   -  person Kon    schedule 27.07.2011
comment
И добавлена ​​обновленная информация об ошибке.   -  person Kon    schedule 27.07.2011


Ответы (2)


Вам необходимо иметь полное имя для любых пользовательских классов представлений. например:

<com.kon.thing.TouchImageView ... />

JVM не может найти ваш класс.

person dmon    schedule 27.07.2011

убедитесь, что вы ввели правильное имя пакета в xml, например..

<com.gallery.TouchImageView
        android:id="@+id/imgDisplay"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:scaleType="fitCenter" />
person DjP    schedule 13.11.2013