Я пытаюсь открыть Навигационный ящик, но ящик слишком запаздывает.Однако я открываю Google Play Store нормально.Как я могу улучшить это?
Это мой макет:
<LinearLayout
android:background="@drawable/hhome1"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
</FrameLayout>
</LinearLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
app:headerLayout="@layout/header"
android:layout_width="wrap_content"
android:layout_height="match_parent"
app:menu="@menu/drawermunu"
android:layout_gravity="start">
</android.support.design.widget.NavigationView>
</android.support.v4.widget.DrawerLayout>
Это мой код, я думаю, что это вызывает задержку в этой части
public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener{
private DrawerLayout mDrawerlayout;
private ActionBarDrawerToggle mToggle;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mDrawerlayout = (DrawerLayout) findViewById(R.id.drawer);
mToggle = new ActionBarDrawerToggle(this,mDrawerlayout,R.string.open,R.string.close);
mDrawerlayout.addDrawerListener(mToggle);
mToggle.syncState();
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
Я пыталсяупростить это getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new HomeFrament()).commit();
, но я не знаю, почему это не работает
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
if (mDrawerlayout.isDrawerOpen(GravityCompat.START)) {
mDrawerlayout.closeDrawers();
}
switch (item.getItemId()){
case R.id.nav_home:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new HomeFrament()).commit();
break;
case R.id.nav_control:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new ControlFrament()).commit();
break;
case R.id.nav_settings:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new SettingsFrament()).commit();
break;
case R.id.nav_tandh:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new TandHFrament()).commit();
break;
case R.id.nav_logout:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
new LogoutFrament()).commit();
break;
}
}
Есть ли способ избежать этого лага?