diff --git a/app/build.gradle b/app/build.gradle
index 4cbbe3e..88836b1 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -27,6 +27,7 @@ dependencies {
compile project(':badgeviewlib')
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support:recyclerview-v7:25.2.0'
+ compile 'com.android.support:design:25.2.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index f587a8b..3da5743 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -11,14 +11,16 @@
+
+
+
+
-
-
\ No newline at end of file
diff --git a/app/src/main/java/q/rorbin/badgeviewdemo/MyFragment.java b/app/src/main/java/q/rorbin/badgeviewdemo/MyFragment.java
new file mode 100644
index 0000000..1053d0f
--- /dev/null
+++ b/app/src/main/java/q/rorbin/badgeviewdemo/MyFragment.java
@@ -0,0 +1,23 @@
+package q.rorbin.badgeviewdemo;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+/**
+ * 作者:warm
+ * 时间:2017-12-21 13:59
+ * 描述:
+ */
+
+public class MyFragment extends Fragment{
+
+ @Nullable
+ @Override
+ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+ return inflater.inflate(R.layout.fragment_my,container,false);
+ }
+}
diff --git a/app/src/main/java/q/rorbin/badgeviewdemo/TabLayoutActivity.java b/app/src/main/java/q/rorbin/badgeviewdemo/TabLayoutActivity.java
new file mode 100644
index 0000000..b5c476a
--- /dev/null
+++ b/app/src/main/java/q/rorbin/badgeviewdemo/TabLayoutActivity.java
@@ -0,0 +1,111 @@
+package q.rorbin.badgeviewdemo;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.design.widget.TabLayout;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentStatePagerAdapter;
+import android.support.v4.view.ViewPager;
+import android.support.v7.app.AppCompatActivity;
+import android.view.Gravity;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import q.rorbin.badgeview.Badge;
+import q.rorbin.badgeview.QBadgeView;
+
+/**
+ * 作者:warm
+ * 时间:2017-12-21 13:39
+ * 描述:
+ */
+
+public class TabLayoutActivity extends AppCompatActivity implements View.OnClickListener {
+
+ private TabLayout tl;
+ private ViewPager vp;
+ private Button bt;
+ private Button btHide;
+ List badges;
+ private String[] titles = {"标题一", "标题二", "标题三", "标题四", "标题五"};
+
+
+ @Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_tablayout);
+ tl = (TabLayout) findViewById(R.id.tl);
+ vp = (ViewPager) findViewById(R.id.vp);
+ bt = (Button) findViewById(R.id.bt);
+ btHide= (Button) findViewById(R.id.bt_hide);
+ bt.setOnClickListener(this);
+ btHide.setOnClickListener(this);
+ vp.setAdapter(new VpAdapter(getSupportFragmentManager()));
+ tl.setupWithViewPager(vp);
+ badges = new ArrayList<>();
+
+ for (int i = 0; i < titles.length; i++) {
+
+ Badge badge = new QBadgeView(tl.getContext())
+ .bindTarget(((ViewGroup) tl.getChildAt(0)).getChildAt(i))
+ .setBadgeGravity(Gravity.TOP | Gravity.END)
+ .setBadgeTextSize(12, true)
+ .setBadgePadding(3, true)
+ .setOnDragStateChangedListener(new Badge.OnDragStateChangedListener() {
+ @Override
+ public void onDragStateChanged(int dragState, Badge badge, View targetView) {
+
+ }
+ });
+ badge.setBadgeNumber(1);
+ badges.add(badge);
+ }
+ }
+
+ @Override
+ public void onClick(View v) {
+ switch (v.getId()){
+ case R.id.bt:
+ int i = badges.get(tl.getSelectedTabPosition()).getBadgeNumber();
+ badges.get(tl.getSelectedTabPosition()).setBadgeNumber(++i);
+ break;
+ case R.id.bt_hide:
+ for ( Badge badge :badges) {
+ badge.hide(true);
+ }
+ break;
+ }
+
+ }
+
+
+ class VpAdapter extends FragmentStatePagerAdapter {
+
+
+ public VpAdapter(FragmentManager fm) {
+ super(fm);
+ }
+
+ @Override
+ public Fragment getItem(int position) {
+ return new MyFragment();
+ }
+
+ @Override
+ public int getCount() {
+ return titles.length;
+ }
+
+ @Override
+ public CharSequence getPageTitle(int position) {
+ return titles[position];
+ }
+ }
+
+
+}
diff --git a/app/src/main/res/layout/activity_tablayout.xml b/app/src/main/res/layout/activity_tablayout.xml
new file mode 100644
index 0000000..da1f4bd
--- /dev/null
+++ b/app/src/main/res/layout/activity_tablayout.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_my.xml b/app/src/main/res/layout/fragment_my.xml
new file mode 100644
index 0000000..df96c3b
--- /dev/null
+++ b/app/src/main/res/layout/fragment_my.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
\ No newline at end of file