52 lines
1.6 KiB
Java
52 lines
1.6 KiB
Java
package com.thebrokenrail.mtudining.activity.list;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import androidx.activity.EdgeToEdge;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.appcompat.app.AppCompatActivity;
|
|
import androidx.lifecycle.ViewModelProvider;
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
import androidx.recyclerview.widget.RecyclerView;
|
|
|
|
import com.google.android.material.appbar.MaterialToolbar;
|
|
import com.thebrokenrail.mtudining.R;
|
|
import com.thebrokenrail.mtudining.util.EdgeToEdgeUtil;
|
|
|
|
/**
|
|
* This activity lists the available dining halls.
|
|
*/
|
|
public class ListActivity extends AppCompatActivity {
|
|
private ListAdapter adapter;
|
|
|
|
@Override
|
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
// Setup UI
|
|
EdgeToEdge.enable(this);
|
|
setContentView(R.layout.activity_list);
|
|
|
|
// Toolbar
|
|
MaterialToolbar toolbar = findViewById(R.id.toolbar);
|
|
setSupportActionBar(toolbar);
|
|
|
|
// Get View Model
|
|
ViewModelProvider viewModelProvider = new ViewModelProvider(this);
|
|
ListViewModel viewModel = viewModelProvider.get(ListViewModel.class);
|
|
|
|
// Setup RecyclerView
|
|
adapter = new ListAdapter(viewModel.task);
|
|
viewModel.task.sendDataToListeners();
|
|
RecyclerView recyclerView = findViewById(R.id.recycler_view);
|
|
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
|
recyclerView.setAdapter(adapter);
|
|
EdgeToEdgeUtil.setup(this, recyclerView);
|
|
}
|
|
|
|
@Override
|
|
protected void onDestroy() {
|
|
super.onDestroy();
|
|
adapter.onDestroy();
|
|
}
|
|
}
|