簡體   English   中英

無法在屏幕右側實現導航抽屜-Android / Java

[英]Unable to Implement a Navigation Drawer on the Right Side of The Screen - Android / Java

我已經實現了Navigation Drawer,它當前顯示在屏幕的左側-但是我希望它顯示在屏幕的右側(圖標也位於屏幕的右上角-目前位於左上方)。 我找到了以下SO文章,該文章解釋了如何操作:

http://stackoverflow.com/questions/18547277/how-to-set-navigation-drawer-to-be-opened-from-right-to-left/19358114#19358114

但是,當我嘗試實現代碼時,導航抽屜仍會出現在左側。

來源(摘要):

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ss_home);

...

     mDrawerList = (ListView) findViewById(R.id.drawer_list);
     mDrawer = ( LinearLayout) findViewById(R.id.drawer);

     mDrawerLayout = (DrawerLayout)findViewById(R.id.drawer_layout);

      mAdapter = new SimpleAdapter(this, mList, R.layout.drawer_layout, from, to);
     mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.drawable.icon_list_top_right , R.string.drawer_open){

         @Override
            public boolean onOptionsItemSelected(MenuItem item) {
                if (item != null && item.getItemId() == android.R.id.home) {
                    if (mDrawerLayout.isDrawerOpen(Gravity.RIGHT)) {
                        mDrawerLayout.closeDrawer(Gravity.RIGHT);
                    } else {
                        mDrawerLayout.openDrawer(Gravity.RIGHT);
                    }

                }
                return false;
            }

XML布局文件/源:

http://pastebin.com/NhskGCCB

如果有任何其他必要的信息,我將非常樂意提供(我只是為為什么導航欄未出現在屏幕右側而感到困惑)

LinearLayout id =“ drawer android:layout_gravity="start"上的android:layout_gravity="start"應該設置為android:layout_gravity="end"

旁注:此XML結構的構造不正確,為什么ViewGroups的id =“ drawer”和id =“ left_drawer”的兄弟姐妹-不嵌套? 為什么FrameLayout id =“ content_frame”為空?

實際上,您的布局中有左右導航抽屜(id:抽屜,id:left_drawer)。 我剛剛對其進行了測試,並且它們在左右滑動時均能很好地加載。

如果要在右側顯示漢堡圖標,請隱藏現有圖標,然后將另一個圖標作為圖像視圖添加到工具欄。 之后,您可以單擊綁定並以編程方式打開導航抽屜。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM