findResourceById () возвращает ноль - PullRequest
0 голосов
/ 31 января 2012

Я прочитал несколько вопросов и ответов по этой теме, но ни один из них не относится к моей проблеме.

Моя проблема в следующем коде:

 public class Activity2 extends Activity {

@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.alt);

}


public void buttonPress(View v){
    TextView tv1 = (TextView) findViewById(R.id.text1);
    TextView tv2 = (TextView) findViewById(R.id.text2);
    Button b1 = (Button) findViewById(R.id.button1);
    if((tv1 != null) & (tv2 != null) & (b1 != null)){
        tv1.setText(R.string.changed);
        tv2.setText(R.string.changed);
        b1.setText(R.string.changed);
    }
    else
        Toast.makeText(getApplicationContext(), "VIEW ELEMENTS ARE NOT BEING ASSIGNED", Toast.LENGTH_SHORT).show();
}

alt.xml выглядит следующим образом

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
    android:name="@+id/text1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/stuff" />

<TextView
    android:name="@+id/text2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/stuff2" />

<Button
    android:name="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/buttonText"
    android:onClick="buttonPress" />        

Идентификаторы создаются в R.id, но они не присваиваются моим двум элементам TextView и моему одному элементу Button.(Я вижу всплывающее окно с тостами каждый раз)

У кого-нибудь есть идеи?

Ответы [ 2 ]

7 голосов
/ 31 января 2012

Вместо android:name="..." используйте android:id="@+id/..."

1 голос
/ 31 января 2012

Попробуйте заменить

android:name="@+id/text1"

на

android:id="@+id/text1"
...