Необработанное исключение: NoSuchMethodError: метод add был вызван с нулевым значением .: Пробный вызов: add(экземпляр CategoryModel)
В своем приложении я использую пакет Hive для сохранения данных в базе данных, на домашней странице, когда я создаю объект, который называется CategoryModel, и когда я пытаюсь добавить его в поле, я сталкиваюсь с ошибкой в заголовке. Я разделяю initState homePage и класс HiveHelper ниже.
HiveHelper hiveHelper =HiveHelper();
CategoryModel newCategoryModel=CategoryModel();
Widget buildBottomSheet(BuildContext context)=>AddMenuScreen(buttonText: "Menü Ekle",route: "homeScreen");
int flag=0;
List list=[];
void initState(){
super.initState();
hiveHelper.initState();
if (widget.newCategoryName!=null && widget.newCategoryImagePath!=null){
newCategoryModel= CategoryModel(categoryId:categoryModels.length-1, categoryImagePath: widget.newCategoryImagePath,
categoryName: widget.newCategoryName,categoryColor: Color((Random().nextDouble() * 0xFFFFFF).toInt()).withOpacity(0.5).value);
categoryModels.insert(categoryModels.length-1,newCategoryModel);
hiveHelper.addCategoryModel(newCategoryModel);
}
class HiveHelper{
Box <CategoryModel>categoryModels;
CategoryModel categoryModel;
void initState() async {
if(categoryModels==null){
var _directory =await getApplicationDocumentsDirectory();
Hive
..init(_directory.path)
..registerAdapter(CategoryModelAdapter())
..registerAdapter(SubCategoryModelAdapter())
..registerAdapter(SubCategoryModelAdapter());
categoryModels = await Hive.openBox<CategoryModel>('categoryModels');
}
}
void addCategoryModel(CategoryModel categoryModel)async{
await categoryModels.add(categoryModel);
}
Future <Box> getCategoryModels()async{
return categoryModels;
}
}
Как я могу справиться с этой проблемой, пожалуйста, помогите мне ..