Abstracted SQL, Cursor, Loader, Adapter, RecyclerView
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
package com.philliphsu.clock2.timers;
|
||||
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.philliphsu.clock2.BaseCursorAdapter;
|
||||
import com.philliphsu.clock2.OnListItemInteractionListener;
|
||||
import com.philliphsu.clock2.Timer;
|
||||
import com.philliphsu.clock2.model.TimerDatabaseHelper;
|
||||
|
||||
/**
|
||||
* Created by Phillip Hsu on 7/29/2016.
|
||||
*/
|
||||
public class TimersCursorAdapter extends BaseCursorAdapter<Timer, TimerViewHolder, TimerDatabaseHelper.TimerCursor> {
|
||||
|
||||
public TimersCursorAdapter(OnListItemInteractionListener<Timer> listener) {
|
||||
super(listener);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected TimerViewHolder onCreateViewHolder(ViewGroup parent, OnListItemInteractionListener<Timer> listener) {
|
||||
return new TimerViewHolder(parent, listener);
|
||||
}
|
||||
}
|
||||
@@ -3,52 +3,52 @@ package com.philliphsu.clock2.timers;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.support.v4.content.Loader;
|
||||
|
||||
import com.philliphsu.clock2.OnListItemInteractionListener;
|
||||
import com.philliphsu.clock2.R;
|
||||
import com.philliphsu.clock2.RecyclerViewFragment;
|
||||
import com.philliphsu.clock2.Timer;
|
||||
import com.philliphsu.clock2.edittimer.EditTimerActivity;
|
||||
import com.philliphsu.clock2.timers.dummy.DummyContent;
|
||||
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
/**
|
||||
* TODO: Extend from RecyclerViewFragment.
|
||||
*/
|
||||
public class TimersFragment extends Fragment {
|
||||
|
||||
public TimersFragment() {
|
||||
// Required empty public constructor
|
||||
}
|
||||
import com.philliphsu.clock2.model.TimerDatabaseHelper;
|
||||
import com.philliphsu.clock2.model.TimersListCursorLoader;
|
||||
|
||||
public class TimersFragment extends RecyclerViewFragment<
|
||||
Timer,
|
||||
TimerViewHolder,
|
||||
TimerDatabaseHelper.TimerCursor,
|
||||
TimersCursorAdapter> {
|
||||
public static final int REQUEST_CREATE_TIMER = 0;
|
||||
|
||||
@Override
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
||||
Bundle savedInstanceState) {
|
||||
View view = inflater.inflate(R.layout.fragment_alarms, container, false);
|
||||
ButterKnife.bind(this, view);
|
||||
|
||||
RecyclerView rv = ButterKnife.findById(view, R.id.list);
|
||||
rv.setLayoutManager(new LinearLayoutManager(getActivity()));
|
||||
rv.setAdapter(new TimerAdapter(DummyContent.ITEMS, new OnListItemInteractionListener<Timer>() {
|
||||
@Override
|
||||
public void onListItemClick(Timer item) {
|
||||
startActivity(new Intent(getActivity(), EditTimerActivity.class));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onListItemDeleted(Timer item) {
|
||||
|
||||
}
|
||||
}));
|
||||
|
||||
return view;
|
||||
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
// if (resultCode != Activity.RESULT_OK || data == null)
|
||||
// return;
|
||||
TimerDatabaseHelper db = new TimerDatabaseHelper(getActivity());
|
||||
db.insertItem(Timer.create(1, 0, 0));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFabClick() {
|
||||
Intent intent = new Intent(getActivity(), EditTimerActivity.class);
|
||||
startActivityForResult(intent, REQUEST_CREATE_TIMER);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected TimersCursorAdapter getAdapter() {
|
||||
return new TimersCursorAdapter(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Loader<TimerDatabaseHelper.TimerCursor> onCreateLoader(int id, Bundle args) {
|
||||
return new TimersListCursorLoader(getActivity());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onListItemClick(Timer item) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onListItemDeleted(Timer item) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user