Fixed NavigationView module selection
This commit is contained in:
@@ -6,6 +6,7 @@ import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.util.Pair;
|
||||
import android.view.View;
|
||||
import android.support.design.widget.NavigationView;
|
||||
import android.support.v4.view.GravityCompat;
|
||||
@@ -238,12 +239,11 @@ public class MainActivity extends AppCompatActivity
|
||||
log.d("Modules.get", success.size());
|
||||
//SubMenu moduleMenu = navigationView.getMenu().findItem(R.id.nav_modules).getSubMenu();
|
||||
int i = 0;
|
||||
for (Iterator<Modules.Module> it = success.latestSemesterIterator(); it.hasNext(); ) {
|
||||
Modules.Module module = it.next();
|
||||
MenuItem menuItem = mNavigationView.getMenu().add(Menu.NONE, Menu.NONE, 101 + i, module.title);
|
||||
final int finalI = i;
|
||||
for (Iterator<Pair<Modules.Module, Integer>> it = success.latestSemesterIterator(); it.hasNext(); ) {
|
||||
Pair<Modules.Module, Integer> module = it.next();
|
||||
MenuItem menuItem = mNavigationView.getMenu().add(Menu.NONE, Menu.NONE, 101 + i, module.first.title);
|
||||
menuItem.setOnMenuItemClickListener(item -> {
|
||||
onModulesFragmentInteraction(finalI);
|
||||
onModulesFragmentInteraction(module.second);
|
||||
return false;
|
||||
});
|
||||
i++;
|
||||
|
||||
@@ -2,6 +2,7 @@ package de.sebse.fuplanner.services.KVV.types;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.util.Pair;
|
||||
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
||||
@@ -27,8 +28,8 @@ import de.sebse.fuplanner.tools.logging.Logger;
|
||||
public class Modules implements Iterable<Modules.Module>, Serializable {
|
||||
private final SortedModuleList list;
|
||||
private String latestSemester = null;
|
||||
private String username = null;
|
||||
private transient Logger log = new Logger(this);
|
||||
private String username;
|
||||
//private transient Logger log = new Logger(this);
|
||||
private static final String FILE_NAME = "ModuleListSaving";
|
||||
|
||||
public Modules(String username) {
|
||||
@@ -107,8 +108,8 @@ public class Modules implements Iterable<Modules.Module>, Serializable {
|
||||
};
|
||||
}
|
||||
|
||||
public Iterator<Module> latestSemesterIterator() {
|
||||
return new Iterator<Module>() {
|
||||
public Iterator<Pair<Module, Integer>> latestSemesterIterator() {
|
||||
return new Iterator<Pair<Module, Integer>>() {
|
||||
private int index = -1;
|
||||
private int next = -1;
|
||||
@Override
|
||||
@@ -119,13 +120,13 @@ public class Modules implements Iterable<Modules.Module>, Serializable {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Module next() {
|
||||
public Pair<Module, Integer> next() {
|
||||
if (index == next)
|
||||
predict();
|
||||
if (next == -1)
|
||||
return null;
|
||||
index = next;
|
||||
return list.get(index);
|
||||
return new Pair<>(list.get(index), index);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user