2015-05-13 96 views
-3

我正在使用Android Studio創建默認導航抽屜活動。 而我只是做「setText」,我的應用程序總是崩潰。Android setText總是崩潰

這是我的代碼。

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mNavigationDrawerFragment = (NavigationDrawerFragment) 
      getSupportFragmentManager().findFragmentById(R.id.navigation_drawer); 
    mTitle = getTitle(); 

    // Set up the drawer. 
    mNavigationDrawerFragment.setUp(
      R.id.navigation_drawer, 
      (DrawerLayout) findViewById(R.id.drawer_layout)); 

    TextView t1=(TextView)findViewById(R.id.textView); 
    t1.setText("Test"); 
} 
+2

請給我看完整的堆棧跟蹤 – theapache64

+0

XML請謝謝! – alenz316

+0

@LittleTin提供堆棧跟蹤......它和代碼一樣重要(有時甚至在看不到代碼的情況下甚至是有用的)。 – mah

回答

1

您應該檢查是否有您的activity_main.xml任何R.id.textView。如果你的TextView被嵌套在另一個視圖中,你應該做這樣的事情:

TextView t1=(TextView) view.findViewById(R.id.textView); 

還有一種可能性,這TextView是您的片段裏面,當你正在努力尋找這TextView您的片段不存在由id。

+0

上設置另一個Textview。我明白了,這是一個愚蠢的錯誤。另一個新問題是如何在其他佈局上設置另一個Textview – LittleTin

+0

如果要在main_activity.xml佈局中設置TextView:TextView t1 =(TextView)findViewById(R.id.textView);是正確的,只需將此視圖添加到您的xml文件。但是如果你想在片段中做到這一點,你應該在OnViewCreated片段覆蓋方法中做到這一點。 – Wisnia

+0

你能給我一個示例代碼嗎?我從https://www.youtube.com/watch?v=zwqzhY5i2rc瞭解到更改片段。 – LittleTin