2017-03-03 68 views
-3

我想添加列表到我的導航抽屜菜單項,但它不工作,請檢查我的腳本,也檢查此圖像[https://www.dropbox.com/s/imzufywwj5qyjlj/Nav_Menu.png?dl=0]謝謝。添加列表到導航抽屜,菜單項不起作用

ProfileActivity.java

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

 
     View headerView = navigationView.getHeaderView(0); 
 
     TextView prousername = (TextView) headerView.findViewById(R.id.pro_username); 
 
     TextView promail = (TextView) headerView.findViewById(R.id.pro_mail); 
 
     TextView prophone = (TextView) headerView.findViewById(R.id.pro_phone); 
 

 
     ProDrawareLayout = (DrawerLayout)findViewById(R.id.activity_profile); 
 
     ProToggle = new ActionBarDrawerToggle(this,ProDrawareLayout, R.string.open, R.string.close); 
 

 
     ProDrawareLayout.addDrawerListener(ProToggle); 
 
     ProToggle.syncState(); 
 

 
     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
 

 
     prousername.setText(SharedPrefManager.getInstance(this).getUsername()); 
 
     promail.setText(SharedPrefManager.getInstance(this).getUserEmail()); 
 
     prophone.setText(SharedPrefManager.getInstance(this).getUserPhone()); 
 

 
     navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { 
 
      @Override 
 
      public boolean onNavigationItemSelected(@NonNull MenuItem item) { 
 
       Switch(item.getItemId()){ 
 
        case R.id.nav_logout: 
 
         SharedPrefManager.getInstance(this).logOut(); 
 
         finish(); 
 
         startActivity(new Intent(this, MainActivity.class)); 
 
       }

Navigation_menu.xml

<group android:checkableBehavior="single"> 
 
     <item android:id="@+id/nav_account" 
 
      android:title="My account"/> 
 

 
     <item android:id="@+id/nav_settings" 
 
      android:title="Settings"/> 
 

 
     <item android:id="@+id/nav_logout" 
 
      android:title="Log Out"/> 
 
    </group> 
 

 
    <item android:title="Communicate"> 
 
     <menu> 
 
      <item 
 
       android:id="@+id/Rate_id" 
 
       android:title="@string/rate_us" 
 
       android:showAsAction="never"></item> 
 
      <item 
 
       android:id="@+id/Contact_id" 
 
       android:title="@string/contact_us" 
 
       android:showAsAction="never"></item> 
 
      <item 
 
       android:id="@+id/About_id" 
 
       android:title="@string/about_us" 
 
       android:showAsAction="never"></item> 
 
     </menu> 
 
    </item>

activity_profile.xml

<android.support.design.widget.NavigationView 
 
     android:layout_width="wrap_content" 
 
     android:layout_height="match_parent" 
 
     app:menu="@menu/navigation_menu" 
 
     android:layout_gravity="start" 
 
     android:background="@color/colorBG" 
 
     app:headerLayout="@layout/navigation_header" 
 
     android:id="@+id/nav_view" > 
 

 
    </android.support.design.widget.NavigationView>

+0

你解決了你的問題嗎? – Cochi

+0

您在switch case後缺少​​返回值case''return true;' –

回答

0

你的開關功能的情況下刪除大寫。

switch代替Switch

navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { 
      @Override 
      public boolean onNavigationItemSelected(@NonNull MenuItem item) { 
       Switch(item.getItemId()){ // the issue is here 
        case R.id.nav_logout: 
         SharedPrefManager.getInstance(this).logOut(); 
         finish(); 
         startActivity(new Intent(this, MainActivity.class)); 
       } 

編輯:

不能使用this喜歡的活動爲您的參考,因爲你是在這種情況下,一個OnNavigationItemSelectedListener

嘗試,而不是:

創建一個類字段private Context mContext。 Instanciate mContext on onCreate功能:mContext = this; 使用mContext

navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { 
       @Override 
       public boolean onNavigationItemSelected(@NonNull MenuItem item) { 
        Switch(item.getItemId()){ // the issue is here 
         case R.id.nav_logout: 
          SharedPrefManager.getInstance(mContext).logOut(); 
          finish(); 
          startActivity(new Intent(mContext, MainActivity.class)); 
        } 
+0

bro。仍然我得到錯誤在線「.getinstance(this)」和(this,MainActivity.class))請檢查此圖像[https://www.dropbox.com/s/u9cyxmvi9rmghyt/Nav_Menu2.png?dl=0] –

+0

看看我的編輯可以幫助你。 – Cochi

+0

非常感謝。我昨天剛剛生氣了。非常感謝。我能再問你一個問題嗎? –