2016-04-18 6 views
0

私は2つの断片XとYを横に並べて配置し、1つを隠したナビゲーション引き出しの断片があるとしましょう。フラグメントX上のボタンをクリックするたびに、ナビゲーション・ドロワー・フラグメントが右からスライドし、Yフラグメントの上で実行されます。透明にしたので、ユーザーは横向きに横に置かれたナビゲーションドロワの断片と共にXの断片を見ることができるようになりました。しかし、このナビゲーション・ドロワー・フラグメントは、実際にアクティビティーをオーバーレイするときにXフラグメントを使用不可にします。ナビゲーションドロワーが開いているときに、どのようにアクティビティの遷移を維持できますか?Navigation Drawerが自分の活動を無効にするのを止めるには?

+1

なぜあなたはシステムと戦いたいのですか?アクティビティがアクティブである必要がある場合は、ナビゲーションドロワーを使用しないでください。 – Henry

+0

私はヘンリーに同意しますが、これは前にここで答えています:http://stackoverflow.com/questions/18743124/make-main-content-area-active-in-drawerlayout –

+0

ヘンリー、私は状態を保存する必要がありますフラグメントYを毎回状態に置き換えます。それで、私はナビゲーションドロワについて考えていたのです。 マイク、私の問題は似ていますが、私は見てみましょう。私はstackoverflowに関する質問を見つけることができませんでした。提案していただきありがとうございます。 – Aveek

答えて

0

、私は同じ質問を持っていたあなたのNavigartion引き出し

public class CustomDrawer extends DrawerLayout { 

public CustomDrawer(Context context) { 
    super(context); 
} 

public CustomDrawer(Context context, AttributeSet attrs) { 
    super(context, attrs); 
} 

public CustomDrawer(Context context, AttributeSet attrs, int defStyle) { 
    super(context, attrs, defStyle); 
} 

@Override 
public boolean onInterceptTouchEvent(MotionEvent ev) { 
    View drawer = getChildAt(1); 

    if (getDrawerLockMode(drawer) == LOCK_MODE_LOCKED_OPEN && ev.getRawX() > drawer.getWidth()) { 
     return false; 
    } else { 
     return super.onInterceptTouchEvent(ev); 
    } 
} 
} 

用のカスタムクラスを作成します。このコードはここからですMake fragment clickable when navigation drawer is opened

+0

ありがとう!これは私の問題を解決:) :) – Aveek

関連する問題