Android не может получить доступ к компоненту textView из активности - PullRequest
1 голос
/ 29 сентября 2011

У меня есть следующий actvity.

package org.dewsworld.ui;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class DetailList extends Activity {

    TextView title = (TextView) findViewById(R.id.title) ;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);

        setContentView(R.layout.detail_list);

        title.setText("hello world"); 
    }

}

, который манипулирует detail_list.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent" android:weightSum="1">
    <TextView android:id="@+id/title" android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_height="wrap_content" android:layout_width="match_parent"
        android:text="@string/headline" />
    <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="match_parent"></ListView>

</LinearLayout>

Но, когда я запускаю это, я получаю ошибку во время выполнения.LogCat есть,

enter image description here

Ответы [ 2 ]

3 голосов
/ 29 сентября 2011

попробуй вот так

public class DetailList extends Activity {
TextView title;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.detail_list);

    title = (TextView) findViewById(R.id.title) ;
    title.setText("hello world"); 
  }
}
2 голосов
/ 29 сентября 2011
package org.dewsworld.ui;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class DetailList extends Activity {

    TextView title;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);

        setContentView(R.layout.detail_list);
        title = (TextView) findViewById(R.id.title) ;;
        title.setText("hello world"); 
    }

}

жаловаться, потому что вы пытаетесь получить значение textView, используя метод Activity, который еще не создан (поскольку его Oncreate () еще не запущен)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...