提交 14f381f9 authored 作者: shixiaochen's avatar shixiaochen

1、ListView增加removeItem、notifySingleItem

上级 864a97e8
...@@ -2,6 +2,7 @@ import 'dart:io'; ...@@ -2,6 +2,7 @@ import 'dart:io';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'state_layout.dart'; import 'state_layout.dart';
/// 封装下拉刷新与加载更多 /// 封装下拉刷新与加载更多
...@@ -85,6 +86,29 @@ class _MyListViewPublicState extends State<MyListViewPublic> { ...@@ -85,6 +86,29 @@ class _MyListViewPublicState extends State<MyListViewPublic> {
_defaultRefresh(); _defaultRefresh();
} }
// 移除数据
void removeItem(index) {
_dataList.removeAt(index);
listItemCount = _dataList.length;
if (_dataList.isEmpty) {
stateType = StateType.empty; //显示空布局
} else {
stateType = StateType.success; //显示成功布局
}
_isLoading = false;
if (mounted) {
setState(() {});
}
}
// 刷新单个数据
void notifySingleItem(index, beanJson) {
_dataList[index] = beanJson;
if (mounted) {
setState(() {});
}
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
Widget child = RefreshIndicator( Widget child = RefreshIndicator(
...@@ -191,6 +215,16 @@ class MyListController { ...@@ -191,6 +215,16 @@ class MyListController {
void callRefresh() { void callRefresh() {
_deerListViewState.callRefresh(); _deerListViewState.callRefresh();
} }
// 移除数据
void removeItem(index) {
return _deerListViewState.removeItem(index);
}
// 刷新单个数据
void notifySingleItem(index, beanJson) {
return _deerListViewState.notifySingleItem(index, beanJson);
}
} }
class MoreWidget extends StatelessWidget { class MoreWidget extends StatelessWidget {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论