Доступ к TextView из файла ресурса - PullRequest
0 голосов
/ 19 марта 2011

Позвольте мне сначала объяснить, из чего состоит мое приложение Androïd: - класс, расширенный из Деятельности. В OnCreate члене моего класса я пытаюсь получить доступ к TextView, описанному в моем main.xml файле, используя

"MyTextView=(TextView)findViewById(R.id.myTextView);".

- XML-файл, в котором TextView описывается следующим образом:
<TextView android:name="@+id/myTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/another TextView"/> В файле R.java я вижу, что мой TextView зарегистрирован.

Моя проблема в том, что когда я пытаюсь получить дескриптор TextView с помощью функции findViewById, я получаю нулевой указатель.

Мне кажется загадкой, потому что я написал другое приложение, в котором мне удалось получить доступ к TextViews. И я не вижу никакой разницы между обоими приложениями !!!

Здравствуйте,

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

<TextView
    android:name="@+id/Titre"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Application GPS :"/>

<TextView
    android:name="@+id/NombreMaxSatellites"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"/>

<TextView
    android:name="@+id/NombreSatellites"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello Android from NetBeans"/>

<TextView
    android:name="@+id/TempsAcquisition"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello Android from NetBeans"/>

<EditText
    android:name="@+id/Texte"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Le texte"/>

<Button android:id="@+id/BoutonTexte"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="130dip"
android:layout_marginTop="10dip"
android:text="Terminer"/>

Я могу получить доступ к Button, но ни TextView, ни EditText.

Есть идеи?

Ответы [ 4 ]

0 голосов
/ 14 июля 2012

Проблема в том, что идентификатору присвоено имя android:name="@+id/Titre", оно должно быть android:id="@+id/Titre".

0 голосов
/ 19 марта 2011

Убедитесь, что любые вызовы findViewById() происходят после установки макета с помощью setContentView().

Хорошей практикой является вызов setContentView() в качестве первой строки в вашем onCreate() методе.

0 голосов
/ 19 марта 2011

Я уверен, что в макете есть ошибки, из-за которых ваши изменения макета не были сохранены. И тогда это не отражается в R.Java. Ищите любые красные метки в вашем макете. Устраните ошибки, прежде чем продолжить, тогда все должно работать нормально. Разместите свой полный файл макета.

0 голосов
/ 19 марта 2011

Убедитесь, что примерно 2 вещи

  1. идентификатор вашего текстового просмотра не повторяется в том же макете
  2. убедитесь, что вы устанавливаете представление контента (setContentView()) вправильное расположение.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...