2013-05-14 58 views
2

我正在實施滑動菜單。JFEinstien滑動菜單無法設置後視圖的寬度

我想將活動菜單的寬度設置爲屏幕寬度的2/3。

這裏是我的MainActivity

public class MainActivity extends SlidingActivity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    getSupportActionBar().setHomeButtonEnabled(true); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

    setBehindContentView(R.layout.slidemenu_layout); 

    setSlidingActionBarEnabled(false); 

    SlidingMenu menu = new SlidingMenu(this); 
    menu.setMode(SlidingMenu.LEFT); 
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); 
    menu.setShadowWidthRes(R.dimen.shadow_width); 
    menu.setShadowDrawable(R.drawable.shadow); 
    menu.setFadeDegree(0.35f); 
    menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); 

    DisplayMetrics displaymetrics = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 

    menu.setBehindWidth((2*displaymetrics.widthPixels)/3); 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getSupportMenuInflater().inflate(R.menu.main, menu); 
    return super.onCreateOptionsMenu(menu); 
} 
@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case android.R.id.home: 
     toggle(); 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

}

* 注: *我最初做MainActivity擴展活動,它工作正常那裏。 我不得不搬到SlidingActivity實施操作欄福爾摩斯

編輯:我換成SlidingActivity與SherlockActivity並刪除了setBehindContentView(..)和on.But不知道爲什麼第一次一個沒有工作開展。

回答

0

您可以嘗試使用setBehindOffsetRes設置背後寬度,並從資源XML中傳遞一個ID,如this answer

+1

'setBehindOffsetRes' does not work – ARB

3

您是否嘗試過使用setBehindWidthRes而不是setBehindOffsetRes