summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-04-16 22:00:59 +0400
committerAndrew Dolgov <[email protected]>2013-04-16 22:00:59 +0400
commitf10c37563ab957f60d70e4c72ea46b8bf95e114d (patch)
tree015164f4c6e62bc803cff418ed8d9c8c0625d04b
parent5b76e9c2abd8820d6d4fd55dd1a99e977144cb8a (diff)
integrate viewpagerindicator to display feed reading progress
-rw-r--r--project.properties1
-rw-r--r--res/layout/article_pager.xml25
-rw-r--r--src/org/fox/ttrss/ArticlePager.java11
-rw-r--r--src/org/fox/ttrss/offline/OfflineArticlePager.java8
4 files changed, 36 insertions, 9 deletions
diff --git a/project.properties b/project.properties
index c4f09d2b..54306f95 100644
--- a/project.properties
+++ b/project.properties
@@ -9,3 +9,4 @@
# Project target.
target=android-17
+android.library.reference.1=../Android-ViewPagerIndicator/library
diff --git a/res/layout/article_pager.xml b/res/layout/article_pager.xml
index 7647cce7..495eac4b 100644
--- a/res/layout/article_pager.xml
+++ b/res/layout/article_pager.xml
@@ -1,9 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/article_pager_container"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent" >
-<android.support.v4.view.ViewPager
-xmlns:android="http://schemas.android.com/apk/res/android"
-android:layout_width="fill_parent"
-android:layout_height="fill_parent"
-android:id="@+id/article_pager">
+ <android.support.v4.view.ViewPager
+ android:id="@+id/article_pager"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:layout_alignParentTop="true" >
-</android.support.v4.view.ViewPager> \ No newline at end of file
+ </android.support.v4.view.ViewPager>
+
+ <com.viewpagerindicator.UnderlinePageIndicator
+ android:id="@+id/article_titles"
+ android:layout_width="fill_parent"
+ android:layout_height="2dp"
+ android:layout_alignParentBottom="true"
+ android:layout_alignParentLeft="true" />
+
+</RelativeLayout> \ No newline at end of file
diff --git a/src/org/fox/ttrss/ArticlePager.java b/src/org/fox/ttrss/ArticlePager.java
index 5ef74f25..258c41b8 100644
--- a/src/org/fox/ttrss/ArticlePager.java
+++ b/src/org/fox/ttrss/ArticlePager.java
@@ -24,6 +24,8 @@ import android.view.ViewGroup;
import android.view.WindowManager;
import com.google.gson.JsonElement;
+import com.viewpagerindicator.TitlePageIndicator;
+import com.viewpagerindicator.UnderlinePageIndicator;
public class ArticlePager extends Fragment {
@@ -93,7 +95,7 @@ public class ArticlePager extends Fragment {
m_adapter = new PagerAdapter(getActivity().getSupportFragmentManager());
ViewPager pager = (ViewPager) view.findViewById(R.id.article_pager);
-
+
int position = m_articles.indexOf(m_article);
m_listener.onArticleSelected(m_article, false);
@@ -101,8 +103,13 @@ public class ArticlePager extends Fragment {
m_activity.setProgressBarVisibility(true);
pager.setAdapter(m_adapter);
+
+ UnderlinePageIndicator indicator = (UnderlinePageIndicator)view.findViewById(R.id.article_titles);
+ indicator.setViewPager(pager);
+
pager.setCurrentItem(position);
- pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
+
+ indicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrollStateChanged(int arg0) {
diff --git a/src/org/fox/ttrss/offline/OfflineArticlePager.java b/src/org/fox/ttrss/offline/OfflineArticlePager.java
index f4c22138..69829115 100644
--- a/src/org/fox/ttrss/offline/OfflineArticlePager.java
+++ b/src/org/fox/ttrss/offline/OfflineArticlePager.java
@@ -2,6 +2,8 @@ package org.fox.ttrss.offline;
import org.fox.ttrss.R;
+import com.viewpagerindicator.UnderlinePageIndicator;
+
import android.app.Activity;
import android.content.SharedPreferences;
import android.database.Cursor;
@@ -171,8 +173,12 @@ public class OfflineArticlePager extends Fragment {
ViewPager pager = (ViewPager) view.findViewById(R.id.article_pager);
pager.setAdapter(m_adapter);
+
+ UnderlinePageIndicator indicator = (UnderlinePageIndicator)view.findViewById(R.id.article_titles);
+ indicator.setViewPager(pager);
+
pager.setCurrentItem(position);
- pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
+ indicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrollStateChanged(int arg0) {