Tablet support

This commit is contained in:
Caesar2011
2019-02-07 23:36:48 +01:00
parent 041c46284b
commit 261878b6e3
4 changed files with 55 additions and 9 deletions

View File

@@ -95,11 +95,13 @@ public class MainActivity extends AppCompatActivity
private CustomAccountManager mAccountManager; private CustomAccountManager mAccountManager;
private boolean isPaused = false; private boolean isPaused = false;
private boolean isLoggedInBeforePause = false; private boolean isLoggedInBeforePause = false;
private boolean isDrawerFixed = false;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
mAccountManager = new CustomAccountManager(AccountManager.get(this), () -> MainActivity.this); mAccountManager = new CustomAccountManager(AccountManager.get(this), () -> MainActivity.this);
isDrawerFixed = getResources().getBoolean(R.bool.isDrawerFixed);
int desiredPage = getDefaultFragmentAfterLogin(); int desiredPage = getDefaultFragmentAfterLogin();
String desiredData = ""; String desiredData = "";
Intent intent = getIntent(); Intent intent = getIntent();
@@ -120,11 +122,13 @@ public class MainActivity extends AppCompatActivity
Toolbar toolbar = findViewById(R.id.toolbar); Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar); setSupportActionBar(toolbar);
DrawerLayout drawer = findViewById(R.id.drawer_layout); if (!isDrawerFixed) {
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle( DrawerLayout drawer = findViewById(R.id.drawer_layout);
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
drawer.addDrawerListener(toggle); this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
toggle.syncState(); drawer.addDrawerListener(toggle);
toggle.syncState();
}
mNavigationView = findViewById(R.id.nav_view); mNavigationView = findViewById(R.id.nav_view);
mNavigationView.setNavigationItemSelectedListener(this); mNavigationView.setNavigationItemSelectedListener(this);
@@ -210,7 +214,7 @@ public class MainActivity extends AppCompatActivity
} }
DrawerLayout drawer = findViewById(R.id.drawer_layout); DrawerLayout drawer = findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) { if (drawer.isDrawerOpen(GravityCompat.START) && !isDrawerFixed) {
drawer.closeDrawer(GravityCompat.START); drawer.closeDrawer(GravityCompat.START);
} else { } else {
if (mFragmentPage == FRAGMENT_MODULES_DETAILS) { if (mFragmentPage == FRAGMENT_MODULES_DETAILS) {
@@ -305,8 +309,10 @@ public class MainActivity extends AppCompatActivity
break; break;
} }
DrawerLayout drawer = findViewById(R.id.drawer_layout); if (!isDrawerFixed) {
drawer.closeDrawer(GravityCompat.START); DrawerLayout drawer = findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
}
int size = mNavigationView.getMenu().size(); int size = mNavigationView.getMenu().size();
for (int k = 0; k < size; k++) { for (int k = 0; k < size; k++) {
@@ -544,7 +550,7 @@ public class MainActivity extends AppCompatActivity
if (!viewBtn.hasOnClickListeners()) if (!viewBtn.hasOnClickListeners())
viewBtn.setOnClickListener(v -> { viewBtn.setOnClickListener(v -> {
DrawerLayout drawer = findViewById(R.id.drawer_layout); DrawerLayout drawer = findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) { if (drawer.isDrawerOpen(GravityCompat.START) && !isDrawerFixed) {
drawer.closeDrawer(GravityCompat.START); drawer.closeDrawer(GravityCompat.START);
} }
mAccountManager.getTokenByType(AccountGeneral.ACCOUNT_TYPE, AccountGeneral.AUTHTOKEN_TYPE_KVV, null, null); mAccountManager.getTokenByType(AccountGeneral.ACCOUNT_TYPE, AccountGeneral.AUTHTOKEN_TYPE_KVV, null, null);

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:itemTextColor="@color/menu_text_color"
app:itemIconTint="@color/menu_text_color"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
<include
layout="@layout/app_bar_main"
android:id="@+id/app_bar_include"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</androidx.drawerlayout.widget.DrawerLayout>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="isDrawerFixed">true</bool>
</resources>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="isDrawerFixed">false</bool>
</resources>