buildBody method

  1. @override
Widget buildBody(
  1. BuildContext context
)
override

Implementation

@override
Widget buildBody(BuildContext context) {
  if (_isLoading) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          const CircularProgressIndicator(),
          const SizedBox(height: 16),
          Text(setText('Đang tải...', 'Loading...')),
        ],
      ),
    );
  }

  if (_errorMessage != null) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          const Icon(Icons.error, size: 64, color: Colors.red),
          const SizedBox(height: 16),
          Text(_errorMessage!),
          const SizedBox(height: 16),
          ElevatedButton(
            onPressed: () => onLoadData(),
            child: Text(setText('Thử lại', 'Retry')),
          ),
        ],
      ),
    );
  }

  return Column(
    children: [
      if (showToolbar) _buildToolbar(),
      Expanded(child: buildViewer()),
    ],
  );
}