Get data from database

This commit is contained in:
inorichi
2015-09-26 14:25:18 +02:00
parent 9302ecfb92
commit 8b6bdfdfdc
18 changed files with 378 additions and 59 deletions
@@ -0,0 +1,56 @@
package eu.kanade.mangafeed.ui.activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import de.greenrobot.event.EventBus;
import eu.kanade.mangafeed.R;
import eu.kanade.mangafeed.data.models.Manga;
public class MangaDetailActivity extends AppCompatActivity {
Manga manga;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_manga_detail);
EventBus.getDefault().registerSticky(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_manga_detail, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
public void onDestroy() {
EventBus.getDefault().unregister(this);
super.onDestroy();
}
public void onEvent(Manga manga) {
this.manga = manga;
//loadChapters();
}
}
@@ -11,12 +11,12 @@ import android.widget.TextView;
import com.bumptech.glide.Glide;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
import eu.kanade.mangafeed.R;
import eu.kanade.mangafeed.data.entities.Manga;
import eu.kanade.mangafeed.data.models.Manga;
import uk.co.ribot.easyadapter.annotations.LayoutId;
/**
@@ -28,9 +28,9 @@ public class LibraryAdapter extends ArrayAdapter<Manga> {
Context context;
int layoutResourceId;
ArrayList<Manga> data;
List<Manga> data;
public LibraryAdapter(Context context, int layoutResourceId, ArrayList<Manga> data) {
public LibraryAdapter(Context context, int layoutResourceId, List<Manga> data) {
super(context, layoutResourceId, data);
this.context = context;
this.layoutResourceId = layoutResourceId;
@@ -1,26 +1,38 @@
package eu.kanade.mangafeed.ui.fragment;
import android.os.Bundle;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.GridView;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import butterknife.Bind;
import butterknife.ButterKnife;
import de.greenrobot.event.EventBus;
import eu.kanade.mangafeed.App;
import eu.kanade.mangafeed.R;
import eu.kanade.mangafeed.data.entities.Manga;
import eu.kanade.mangafeed.data.helpers.DatabaseHelper;
import eu.kanade.mangafeed.data.models.Manga;
import eu.kanade.mangafeed.ui.activity.BaseActivity;
import eu.kanade.mangafeed.ui.adapter.LibraryAdapter;
import rx.functions.Action1;
public class LibraryFragment extends Fragment {
@Bind(R.id.gridView)
GridView grid;
@Inject
DatabaseHelper db;
List<Manga> mangas;
public static LibraryFragment newInstance() {
LibraryFragment fragment = new LibraryFragment();
Bundle args = new Bundle();
@@ -33,19 +45,27 @@ public class LibraryFragment extends Fragment {
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_library, container, false);
App.getComponent(getActivity()).inject(this);
((BaseActivity) getActivity()).getSupportActionBar().setTitle(R.string.library_title);
ButterKnife.bind(this, view);
ArrayList<Manga> mangas = new ArrayList<>();
mangas.add(new Manga("One Piece"));
mangas.add(new Manga("Berserk"));
mangas.add(new Manga("Fate/stay night: Unlimited Blade Works"));
db.manga.get().subscribe(
result -> {
mangas = result;
LibraryAdapter adapter = new LibraryAdapter(getActivity(),
R.layout.item_library, mangas);
LibraryAdapter adapter = new LibraryAdapter(getActivity(),
R.layout.item_library, mangas);
grid.setAdapter(adapter);
grid.setAdapter(adapter);
grid.setOnItemClickListener(
(parent, v, position, id) -> {
Intent intent = new Intent(".ui.activity.MangaDetailActivity");
EventBus.getDefault().postSticky(adapter.getItem(position));
startActivity(intent);
}
);
}
);
return view;
}