0

我在Main Activity中使用Snack Bar,它的XML是activity_main.xml及其導航Drawer Activity,並且我在content_main.xml上有協調器佈局,但當im在快餐欄中啓動它時,它顯示錯誤,我來了知道我coordinatorLayout爲空帶導航抽屜的小吃店活動不起作用?

coordinatorLayout = (CoordinatorLayout) findViewById(R.id.coordinatorMainActivity); 

if(coordinatorLayout != null) { 
      Snackbar snackbar = Snackbar 
        .make(coordinatorLayout, "Internet Connection Error", Snackbar.LENGTH_LONG); 

      snackbar.show(); 
     } 

我不知道爲什麼會無效,即時通訊也使用content_main.xml的其他內容MainActivity.java他們的工作,但協調佈局空

+0

你可以嘗試而不檢查它是否爲空?只是'SnakeBar'初始化?另外,你在哪裏嘗試這些代碼?它應該在'OnCreate'中,就像你知道的那樣。向我們展示你試圖展示SnakeBar的地方。 – Mohsen

回答

0

在這裏,我發現一個解決方案

只需要在activity_main.xml中創建一個簡單的<view/>。 別擔心,它不會干擾佈局設計。

<View 
    android:id="@+id/view_main" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

然後在onCreate()中初始化視圖。

view = findViewById(R.id.view_main);

然後顯示你Snackbar

Snackbar snackbar = Snackbar 
        .make(coordinatorLayout, "Internet Connection Error", Snackbar.LENGTH_LONG); 
snackbar.show(); 

編碼愉快!