Adds "New Skill" button.
This commit is contained in:
@@ -896,4 +896,11 @@ public class EditMonsterViewModel extends ViewModel {
|
|||||||
public List<Skill> getSkillsArray() {
|
public List<Skill> getSkillsArray() {
|
||||||
return mSkills.getValue();
|
return mSkills.getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void addNewSkill() {
|
||||||
|
Skill newSkill = new Skill("Unnamed Skill", AbilityScore.DEXTERITY);
|
||||||
|
ArrayList<Skill> newSkills = new ArrayList<>(mSkills.getValue());
|
||||||
|
newSkills.add(newSkill);
|
||||||
|
mSkills.setValue(newSkills);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,9 +3,13 @@ package com.majinnaibu.monstercards.ui.editmonster;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuInflater;
|
||||||
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.lifecycle.ViewModelProvider;
|
import androidx.lifecycle.ViewModelProvider;
|
||||||
import androidx.navigation.NavBackStackEntry;
|
import androidx.navigation.NavBackStackEntry;
|
||||||
@@ -31,6 +35,7 @@ public class EditSkillsFragment extends Fragment {
|
|||||||
NavController navController = Navigation.findNavController(requireActivity(), R.id.nav_host_fragment);
|
NavController navController = Navigation.findNavController(requireActivity(), R.id.nav_host_fragment);
|
||||||
NavBackStackEntry backStackEntry = navController.getBackStackEntry(R.id.edit_monster_navigation);
|
NavBackStackEntry backStackEntry = navController.getBackStackEntry(R.id.edit_monster_navigation);
|
||||||
mViewModel = new ViewModelProvider(backStackEntry).get(EditMonsterViewModel.class);
|
mViewModel = new ViewModelProvider(backStackEntry).get(EditMonsterViewModel.class);
|
||||||
|
setHasOptionsMenu(true);
|
||||||
|
|
||||||
// Set the adapter
|
// Set the adapter
|
||||||
if (view instanceof RecyclerView) {
|
if (view instanceof RecyclerView) {
|
||||||
@@ -42,4 +47,24 @@ public class EditSkillsFragment extends Fragment {
|
|||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
@Override
|
||||||
|
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
|
||||||
|
inflater.inflate(R.menu.edit_skills_menu, menu);
|
||||||
|
super.onCreateOptionsMenu(menu, inflater);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||||
|
if (item.getItemId() == R.id.menu_action_add_skill) {
|
||||||
|
mViewModel.addNewSkill();
|
||||||
|
// TODO: navigate to editing the new skill
|
||||||
|
// NavDirections action = MonsterDetailFragmentDirections.actionNavigationMonsterToEditMonsterFragment(monsterDetailViewModel.getId().getValue().toString());
|
||||||
|
// View view = getView();
|
||||||
|
// assert view != null;
|
||||||
|
// Navigation.findNavController(view).navigate(action);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return super.onOptionsItemSelected(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
10
app/src/main/res/drawable/ic_add_24.xml
Normal file
10
app/src/main/res/drawable/ic_add_24.xml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:viewportHeight="24"
|
||||||
|
android:tint="?attr/colorControlNormal">
|
||||||
|
<path
|
||||||
|
android:fillColor="@android:color/white"
|
||||||
|
android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
|
||||||
|
</vector>
|
||||||
10
app/src/main/res/menu/edit_skills_menu.xml
Normal file
10
app/src/main/res/menu/edit_skills_menu.xml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/menu_action_add_skill"
|
||||||
|
android:icon="@drawable/ic_add_24"
|
||||||
|
android:title="@string/action_add_skill"
|
||||||
|
app:showAsAction="always" />
|
||||||
|
</menu>
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
<resources>
|
<resources>
|
||||||
<string name="action_add_monster">Add monster</string>
|
<string name="action_add_monster">Add monster</string>
|
||||||
|
<string name="action_add_skill">Add Skill</string>
|
||||||
<string name="action_edit">Edit</string>
|
<string name="action_edit">Edit</string>
|
||||||
<string name="actions_label">Actions</string>
|
<string name="actions_label">Actions</string>
|
||||||
<string name="app_name">MonsterCards</string>
|
<string name="app_name">MonsterCards</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user