2013-04-10 3 views
0

Итак, у меня есть приложение для Android, чтобы закончить создание проекта, то же самое, что я задавал вопросы здесь раньше, но на этот раз у меня возникают проблемы с совершенно другим аспектом. Поскольку приложение относится к Pokémon, в одном действии у меня есть TextViews, EditTexts и кнопка, настроенная для создания IV калькулятора. Если вам любопытно и не знаю, что такое «IV» в Pokémon, конечно, google. Во всяком случае, вернуться на путь ... это изображение здесь я собрал основные моменты моя проблемаНеобычные исключения, брошенные в андроидную деятельность

enter image description here

Над коробочной линии вы видите есть ClassCastException выброшен говоря не отлиты из типа TextView в EditText ... Я знаю, что это значит в общем смысле, но я не могу понять, почему это происходит здесь, потому что, как вы можете видеть в соответствующей строке кода (который я вставил в изображение), часть этой строки, которая включает в себя кастинг, вызывается из представления (return тип findViewById) в EditText. Аргед R.id.EditText06 ссылается на EditText в моей деятельности, поэтому я не вижу, где предположительно происходит попытка плохого каста. Просто для небольшого разъяснения контекста этого, это часть материала, закодированного в OnClickListener кнопки.

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

EDIT: вот мой xml-файл для рассматриваемой деятельности. http://pastebin.com/g5B8d393

EDIT2: ОК теперь это ухудшается :(Моя текущая настройка заключается в том, что у меня есть своеобразное фиктивное основное действие с помощью всего лишь кнопки для запуска активности. Во время тестирования я изменил, какой из них должен был запускаться по желанию. ..На какое-то время прошлой ночью (и я действительно не понимаю, что могло начаться с этой проблемы), он отлично работал с моим IVCalculatorActvity, когда я работал полностью и правильно, и с другим действием. Но теперь он просто падает когда я нажимаю кнопку в основном действии ... Я просто собираюсь загрузить проект где-нибудь. (http://www.filehosting[DOT]org/file/details/429262/PokeUtility.zip) Grrr ... проклинаю это ограничение репутации при размещении ссылок>.> Я понимаю рассуждения, но meh .. .

EDIT3: извинения за такое внезапное редактирование, но я только что видел вас в последнем выпуске HalR. Тестирование приложения atm.

ответ

0

findViewById не возвращает объект класса View, а относится к классу, указанному в вашем XML-файле. Что бы вы ни думали, что описываете свой EditText06, как в своем XML, он считает его TextView вместо EditText. Двойная проверка и убедитесь, что вы не определяете id="EditText06" в нескольких местах.

Если вы показываете свой xml, то, вероятно, будет проще кому-то указать конкретную проблему в вашем XML-файле.

Для каждого ярлыка необходимо использовать формат «@ + id/...», при первом его появлении (либо в качестве ссылки, либо как идентификатор). В противном случае вы создаете несколько ярлыков. файл так, как я считаю, что нужно

<?xml version="1.0" encoding="utf-8"?> 
<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" 
       android:paddingBottom="@dimen/activity_vertical_margin" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingTop="@dimen/activity_vertical_margin" 
       tools:context=".IVCalculatorActivity" > 

    <Button 
      android:id="@+id/button3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_alignParentLeft="true" 
      android:text="@string/calculate" /> 

    <EditText 
      android:id="@+id/EditText01" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/textViewD" 
      android:layout_alignBottom="@id/textViewD" 
      android:layout_alignLeft="@+id/EditText05" 
      android:ems="10" /> 

    <EditText 
      android:id="@+id/EditText03" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/textView5" 
      android:layout_alignBottom="@id/textView5" 
      android:layout_alignLeft="@+id/EditText02" 
      android:ems="10" /> 

    <EditText 
      android:id="@+id/EditText04" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@+id/textView6" 
      android:layout_alignBottom="@id/textView6" 
      android:layout_alignLeft="@+id/EditText03" 
      android:ems="10" /> 

    <TextView 
      android:id="@+id/textViewA" 
      android:layout_width="400dp" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/textViewC" 
      android:layout_alignParentTop="true" 
      android:text="@string/IVcalcHeader" /> 

    <TextView 
      android:id="@id/textViewC" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@id/textViewD" 
      android:layout_below="@id/textViewA" 
      android:layout_marginTop="26dp" 
      android:text="Stat" /> 

    <EditText 
      android:id="@id/EditText05" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@id/textViewC" 
      android:layout_alignBottom="@id/textViewC" 
      android:layout_alignRight="@id/textViewA" 
      android:ems="10" /> 

    <TextView 
      android:id="@id/textViewD" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@+id/textViewB" 
      android:layout_below="@id/EditText05" 
      android:layout_marginTop="27dp" 
      android:text="Stat value" /> 

    <EditText 
      android:id="@+id/EditText02" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@id/textViewB" 
      android:layout_alignBottom="@id/textViewB" 
      android:layout_alignLeft="@id/EditText01" 
      android:ems="10" /> 

    <TextView 
      android:id="@id/textViewB" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@id/textView5" 
      android:layout_below="@id/EditText01" 
      android:layout_marginTop="28dp" 
      android:text="Level" /> 

    <TextView 
      android:id="@id/textView5" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@id/textView6" 
      android:layout_centerVertical="true" 
      android:text="EV count" /> 

    <TextView 
      android:id="@id/textView6" 
      android:layout_width="100dp" 
      android:layout_height="30dp" 
      android:layout_alignRight="@id/button3" 
      android:layout_below="@+id/EditText03" 
      android:layout_marginTop="29dp" 
      android:text="Base Stat" /> 

    <TextView 
      android:id="@+id/textViewE" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@id/textView6" 
      android:layout_below="@id/textView6" 
      android:layout_marginTop="40dp" 
      android:text="Nature" /> 

    <TextView 
      android:id="@+id/textView7" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignLeft="@id/EditText04" 
      android:layout_alignTop="@id/button3" 
      android:text="  " /> 

    <EditText 
      android:id="@+id/EditText06" 
      android:layout_width="140dp" 
      android:layout_height="wrap_content" 
      android:layout_alignBaseline="@id/textViewE" 
      android:layout_alignBottom="@id/textViewE" 
      android:layout_alignLeft="@id/textView7" 
      android:ems="10" /> 

</RelativeLayout> 
+0

Тьфу ... желающий теперь я вспомнил, чтобы загрузить свои вещи в онлайн-хранилище прошлой ночью.:/И да, я понимаю, что это не совсем возвращать что-то типа View, я просто означало, что как ** тип возвращаемого ** метода - это View, поскольку TextView и т. д. являются подклассами View и могут рассматриваться как объект View, следовательно, требование о том, чтобы вернуть то, что возвращается из 'findViewById' –

+0

Я был бы счастлив чтобы посмотреть на ваши вещи, если это где-то там. – HalR

+0

Только что отредактирован, чтобы добавить ссылку на XML –

Смежные вопросы