2017-08-07 180 views
0

我正在嘗試編程導航抽屜面板,但我不知道爲什麼漢堡符號不顯示。我已經在這裏看過很多類似的帖子,但我找不到解決方案。 我的代碼是:Android:導航不顯示抽屜符號

public class MainActivity extends AppCompatActivity 
     implements NavigationView.OnNavigationItemSelectedListener { 

     @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_main); 

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 


    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    toggle = new ActionBarDrawerToggle(
      this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 
    drawer.addDrawerListener(toggle); 
    toggle.syncState(); 

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); 
    navigationView.setNavigationItemSelectedListener(this); 
(...) 

和我做了以下的進口:

import android.support.v4.view.GravityCompat; 
import android.support.v4.widget.DrawerLayout; 
import android.support.v7.app.ActionBarDrawerToggle; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.support.design.widget.NavigationView; 

你能幫幫我嗎?

+0

試試這個toolbar.setNavigationIcon(R.drawable.ic_hamburger); –

+0

@ConstantinCerberus,沒有工作.. – porthfind

回答

0

其實我在我的工作是我刪除了導致與你的相同的情況下,這是失蹤的漢堡包圖標的動作欄。
如果採取積極的態度,這導致了一種更好的方式來自定義圖標,如你所願。只需在app_bar_home中使用ImageView即可。

<ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/toggle"       
     android:contentDescription="@string/image_for_toolbar" 
     android:id="@+id/iV1"    
     /> 

,並在您MainActivity.java/ NavigationDrawer.java

final ImageView imageView = (ImageView) findViewById(R.id.iV1); 
imageView.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       drawer.openDrawer(GravityCompat.START); 

      } 
     }); 

現在複製此,這種觀點將作爲一個導航欄切換。
最好的事情是你可以使用自定義的圖標或從互聯網上獲取圖標。
順便說一句,不要忘了調整ImageView將它放在你想要的地方。

0

我面臨類似於您的問題。在我的情況下,我簡單地添加這行代碼:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

希望解決您的問題。