大佬教程收集整理的这篇文章主要介绍了android-单击导航抽屉片段,然后单击主要内容片段,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
当我单击导航抽屉的TextView时,单击返回到后面的片段(主要内容片段)
请有人帮助我做错了什么.
布局代码
<LinearLayout xmlns:android="http://scheR_63_11845@as.android.com/apk/res/android"
xmlns:tools="http://scheR_63_11845@as.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!-- The toolbar -->
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:BACkground="?attr/colorPriMary"
android@R_758_6964@="@String/app_name" />
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:BACkground="@color/white">
<!-- The main content view -->
<LinearLayout xmlns:android="http://scheR_63_11845@as.android.com/apk/res/android"
xmlns:tools="http://scheR_63_11845@as.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/content_main" />
</LinearLayout>
<!-- The navigation drawer -->
<fragment
android:id="@+id/left_drawer"
android:name="app.compiler.fragment.FragmentDrawer"
android:layout_width="320dp"
android:layout_height="match_parent"
android:layout_gravity="start"
tools:layout="@layout/fragment_drawer"
/>
</android.support.v4.widget.DrawerLayout>
Java代码
public class Activitymain extends AppCompatActivity {
DrawerLayout mDrawerLayout;
ActionBarDrawerToggle mDrawerToggle;
@Override
protected void onCreate(Bundle savedInstanceStatE) {
super.onCreate(savedInstanceStatE);
setContentView(R.layout.activity_idE);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerToggle= new ActionBarDrawerToggle(this, mDrawerLayout,toolbar, R.String.app_name, R.String.app_Name)
{
/** Called when a drawer has settled in a completely open state. */
public void onDrawerOpened(View drawerView) {
}
/** Called when a drawer has settled in a completely closed state. */
public void onDrawerClosed(View view) {
}
};
mDrawerLayout.setDrawerListener(mDrawerTogglE);
if (savedInstanceState == null) {
FragmentMain fragmentMain = new FragmentMain();
Fragmenttransaction transaction = getSupportFragmentManager().begintransaction();
transaction.add(R.id.container, fragmentMain);
transaction.commit();
}
}
@Override
public Boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = new MenuInflater(this);
inflater.inflate(R.menu.menu_main,menu);
return true;
}
@Override
public Boolean onOptionsItemSELEcted(MenuItem item) {
if (mDrawerToggle.onOptionsItemSELEcted(item)) {
return true;
}
return super.onOptionsItemSELEcted(item);
}
@Override
protected void onPostCreate(Bundle savedInstanceStatE) {
super.onPostCreate(savedInstanceStatE);
mDrawerToggle.syncState();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
mDrawerToggle.onConfigurationChanged(newConfig);
}
@Override
public void onBACkPressed() {
if(mDrawerLayout.isDrawerOpen(Gravity.START | Gravity.LEFT)){
mDrawerLayout.closeDrawers();
return;
}
super.onBACkPressed();
}
}
解决方法:
确保左抽屉布局中的所有内容均可点击.否则,点击将被传递到基础视图,在这种情况下,将传递到您的主要内容.您可以通过将OnClickListener设置为FragmentDrawer的rootview来实现:
@H_454_10@myFragmenTinsideTheDrawer.getView().setOnClickListener(new OnClickListener() { @Override public void onClick(View pView) { // do nothing here, just intercept click-events } });
以上是大佬教程为你收集整理的android-单击导航抽屉片段,然后单击主要内容片段全部内容,希望文章能够帮你解决android-单击导航抽屉片段,然后单击主要内容片段所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。