2014-07-23 78 views

回答

0

不知道(順便說一句,後退按鈕應該從活動返回你回到主屏幕)的是它有多好,卻得到了一個解決方案終於來了!

可以使用操作欄的自定義佈局完成此操作。示例代碼在這裏。

//mActionbarView is the custom view to be used for action bar 
    View mActionBarView = getLayoutInflater().inflate(
      R.layout.custom_action_bar, null); 

    Button navDrawer = (Button) mActionBarView.findViewById(R.id.navDrawer); 
    Button appIcon = (Button) mActionBarView.findViewById(R.id.appIcon); 

    navDrawer.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      Toast.makeText(BaseActivty.this, "Drawer", Toast.LENGTH_LONG) 
        .show(); 

      mDrawerLayout.openDrawer(Gravity.LEFT); 
     } 
    }); 

    appIcon.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      Toast.makeText(BaseActivty.this, "Home", Toast.LENGTH_LONG) 
        .show(); 
     } 
    }); 

    getActionBar().setCustomView(mActionBarView); 
    getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 

custom_action_bar.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 
    <Button 
    android:id="@+id/navDrawer" 
    android:layout_width="30dp" 
    android:layout_height="30dp" 
    android:background="@drawable/ic_drawer" 
    android:padding="5dp" /> 

    <Button 
    android:id="@+id/appIcon" 
    android:layout_width="40dp" 
    android:layout_height="40dp" 
    android:background="@drawable/ic_launcher" /> 
</LinearLayout> 
2

你叫什麼NavigationDrawer圖標並不是真正的圖標,它是附加指標(其放在ActionBarDrawerToggle)表示,如果Navidation抽屜被打開/關閉,所以只有一個點擊時調用clickListener該地區。

即使可能,由於圖標很小且彼此接近,用戶會感到非常困惑。

考慮在這種情況下,重新設計你的導航流

相關問題