diff --git a/app/build.gradle b/app/build.gradle index cf45527ff..ba36c9480 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -31,6 +31,7 @@ android { } dependencies { + testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:24.1.1' compile 'com.android.support:support-v4:24.1.1' compile 'com.android.support:design:24.1.1' @@ -44,5 +45,4 @@ dependencies { compile 'com.google.android.exoplayer:exoplayer:r1.5.5' compile 'com.google.code.gson:gson:2.4' compile 'com.nononsenseapps:filepicker:2.0.5' - testCompile 'junit:junit:4.12' } diff --git a/app/src/main/java/org/schabi/newpipe/SearchInfoItemFragment.java b/app/src/main/java/org/schabi/newpipe/SearchInfoItemFragment.java new file mode 100644 index 000000000..373c009df --- /dev/null +++ b/app/src/main/java/org/schabi/newpipe/SearchInfoItemFragment.java @@ -0,0 +1,86 @@ +package org.schabi.newpipe; + +import android.content.Context; +import android.os.Bundle; +import android.support.v4.app.Fragment; +import android.support.v7.widget.GridLayoutManager; +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 org.schabi.newpipe.dummy.DummyContent; +import org.schabi.newpipe.dummy.DummyContent.DummyItem; + +import java.util.List; + +/** + * A fragment representing a list of Items. + *
+ * Activities containing this fragment MUST implement the {@link OnListFragmentInteractionListener} + * interface. + */ +public class SearchInfoItemFragment extends Fragment { + + // TODO: Customize parameter argument names + private static final String ARG_COLUMN_COUNT = "column-count"; + // TODO: Customize parameters + private int mColumnCount = 1; + + /** + * Mandatory empty constructor for the fragment manager to instantiate the + * fragment (e.g. upon screen orientation changes). + */ + public SearchInfoItemFragment() { + } + + // TODO: Customize parameter initialization + @SuppressWarnings("unused") + public static SearchInfoItemFragment newInstance(int columnCount) { + SearchInfoItemFragment fragment = new SearchInfoItemFragment(); + Bundle args = new Bundle(); + args.putInt(ARG_COLUMN_COUNT, columnCount); + fragment.setArguments(args); + return fragment; + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + if (getArguments() != null) { + mColumnCount = getArguments().getInt(ARG_COLUMN_COUNT); + } + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + View view = inflater.inflate(R.layout.fragment_searchinfoitem, container, false); + + // Set the adapter + if (view instanceof RecyclerView) { + Context context = view.getContext(); + RecyclerView recyclerView = (RecyclerView) view; + if (mColumnCount <= 1) { + recyclerView.setLayoutManager(new LinearLayoutManager(context)); + } else { + recyclerView.setLayoutManager(new GridLayoutManager(context, mColumnCount)); + } + recyclerView.setAdapter(null); + } + return view; + } + + + @Override + public void onAttach(Context context) { + super.onAttach(context); + } + + @Override + public void onDetach() { + super.onDetach(); + } +} diff --git a/app/src/main/java/org/schabi/newpipe/dummy/DummyContent.java b/app/src/main/java/org/schabi/newpipe/dummy/DummyContent.java new file mode 100644 index 000000000..4b84286ae --- /dev/null +++ b/app/src/main/java/org/schabi/newpipe/dummy/DummyContent.java @@ -0,0 +1,72 @@ +package org.schabi.newpipe.dummy; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Helper class for providing sample content for user interfaces created by + * Android template wizards. + * + * TODO: Replace all uses of this class before publishing your app. + */ +public class DummyContent { + + /** + * An array of sample (dummy) items. + */ + public static final List