Giter VIP home page Giter VIP logo

loopbar's People

Contributors

ilchenko-peter avatar jekaua avatar vadimhalimendikcr avatar valeryges avatar yarovoiag-cr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

loopbar's Issues

Add support for ViewPager

It would be great if you could set up the LoopBar with a ViewPager and let it behave like TabLayout from the Support Design Library.
Any doubts of seeing this feature in a later version of LoopBar?

Tab view Repetition

When i scroll loopbar, can see all items repetition. How can i fix as 7 menus?

selected tab view 'blinks'

I ran the sample on my asus zenfone 2 , android 5.0 . When a tab is selected , icon and text of selected tab view blinks around 3 times . I'm not talking about the scale & alpha animation. Also , if I try to move to next fragment by swiping gesture when I am already at last page , icon and text completely dissapears and won't be visible again. Any chance this can be fixed?

use in sdk 15

hi
how i can use loopbar in sdk 15? my app is released in min sdk 15 and i now will make chenge my buttom menu and i can't use minsdk 16

Clicklisteners to the menu icons

Hey,

After using:
<com.cleveroad.loopbar.widget.LoopBarView
android:id="@+id/endlessView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:enls_placeholderId="@id/placeHolder"
app:enls_orientation="horizontal"
app:enls_selectionGravity="start"
app:enls_selectionMargin="10dp"
app:enls_overlaySize="5dp"
app:enls_selectionInAnimation="@animator/enls_scale_restore"
app:enls_selectionOutAnimation="@animator/enls_scale_small"
app:enls_selectionBackground="@android:color/holo_blue_dark"
app:enls_menu="@menu/loopbar"
app:enls_scrollMode="auto"
/>

in my xml.

How do i set onclicklistener on the menu icon in my main activity.
Am really stuck here.
thanks

java.lang.IllegalArgumentException: Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed

I am using Loopbar with target SDK 29 and min 21 running on an Android SDK 28 device. I get the following error when added loop bar in Activity:

java.lang.IllegalArgumentException: Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed at android.graphics.Canvas.checkValidClipOp(Canvas.java:779) at android.graphics.Canvas.clipRect(Canvas.java:826) at com.cleveroad.loopbar.widget.NegativeMarginFixColorDrawable.draw(NegativeMarginFixColorDrawable.java:14) at android.view.View.getDrawableRenderNode(View.java:22206) at android.view.View.drawBackground(View.java:22112) at android.view.View.draw(View.java:21868) at android.view.View.updateDisplayListIfDirty(View.java:20750) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.draw(View.java:21880) at android.view.View.updateDisplayListIfDirty(View.java:20750) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.draw(View.java:21880) at android.view.View.updateDisplayListIfDirty(View.java:20750) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.draw(View.java:21880) at android.view.View.updateDisplayListIfDirty(View.java:20750) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at androidx.constraintlayout.widget.ConstraintLayout.dispatchDraw(ConstraintLayout.java:1765) at android.view.View.updateDisplayListIfDirty(View.java:20736) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.updateDisplayListIfDirty(View.java:20736) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.updateDisplayListIfDirty(View.java:20736) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.updateDisplayListIfDirty(View.java:20736) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.updateDisplayListIfDirty(View.java:20736) at android.view.View.draw(View.java:21603) at android.view.ViewGroup.drawChild(ViewGroup.java:4558) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4333) at android.view.View.draw(View.java:21880) at com.android.internal.policy.DecorView.draw(DecorView.java:1120) at android.view.View.updateDisplayListIfDirty(View.java:20750) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:725) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:731) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:840) at android.view.ViewRootImpl.draw(ViewRootImpl.java:4006) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3770) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3079) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1942) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8595) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:988) at android.view.Choreographer.doCallbacks(Choreographer.java:765) at android.view.Choreographer.doFrame(Choreographer.java:700) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:967) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:214)

Create loop on demand

Is it possible to only loop items if they exceed screen size.ie
%%1.0%%
2 menu items should not be looped as they do not cover the entire screen size ie 1item to be aligned left & the other aligned right.
%%2.0%%
In most cases of you have 5 menu items then looping should be enable automatically

Can this be possible with the library ?

Gravity

I want to make the LoopBar Item gravity as center,For now its working for START and END.
Please help me how to achieve this?

use loop bar on right side

how can i have loop bar as vertical with right position? by default loop bar is left side, how can i change that?

Increaze size of item based on text

Nice library.

Is there a way to make the label not break? The menu items are shrunk to the point there can only be 7 characters each line.

I would to have it expand based on the length of the text (label) instead of breaking

android:background attribute

Hi,

When a android:background attribute is used disappears the app:enls_overlaySize. In order to reproduce it, just set the android:background in the example project.

Very cool library, thanks

crash app on resume

hi
when i resume app, using loopbar app crash:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.rahasoft.njf.najafabad/com.rahasoft.njf.najafabad.NewsActivity}: java.lang.RuntimeException: bad array lengths
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2345)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2405)
at android.app.ActivityThread.access$800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:5317)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
Caused by: java.lang.RuntimeException: bad array lengths
at android.os.Parcel.readBooleanArray(Parcel.java:811)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:907)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:0)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:876)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:873)
at android.os.Parcel.readParcelable(Parcel.java:2277)
at android.os.Parcel.readValue(Parcel.java:2177)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2571)
at android.os.Parcel.readSparseArray(Parcel.java:1899)
at android.os.Parcel.readValue(Parcel.java:2234)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2510)
at android.os.BaseBundle.unparcel(BaseBundle.java:221)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:871)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1983)
at android.app.Activity.onRestoreInstanceState(Activity.java:1022)
at android.app.Activity.performRestoreInstanceState(Activity.java:977)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1161)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2318)
... 10 more
java.lang.RuntimeException: bad array lengths
at android.os.Parcel.readBooleanArray(Parcel.java:811)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:907)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:0)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:876)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:873)
at android.os.Parcel.readParcelable(Parcel.java:2277)
at android.os.Parcel.readValue(Parcel.java:2177)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2571)
at android.os.Parcel.readSparseArray(Parcel.java:1899)
at android.os.Parcel.readValue(Parcel.java:2234)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2510)
at android.os.BaseBundle.unparcel(BaseBundle.java:221)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:871)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1983)
at android.app.Activity.onRestoreInstanceState(Activity.java:1022)
at android.app.Activity.performRestoreInstanceState(Activity.java:977)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1161)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2318)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2405)
at android.app.ActivityThread.access$800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:5317)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)

android:background attribute also colors overlay area

When changing the default yellow color of the scrolling list to something else using android:background, the overlay area is colored as well. I suggest to add another attribute that colors the list, and leave android:background transparent.

Workaround for now:
Set android:background="@color/mycolor"
Call loopBarView.setBackgroundColor(getResources().getColor(R.color.transparent));

Extra icons automatically generated

Hi,
I am not sure if it is a bug or that I have done something wrong, but I only configured 2 items in my adapter, using List, with infinite scrolling left at default 'on'. As can be seen from the attached, the ibrary generates additional entries to fill up the strip.

Also, as indicated in the picture, there is a bit of shadow on both edges of the strip, can that be removed?
This was rendered on emulator Nexus X5 api23

untitled

regards,

find a error issue

_20170818172306

it happened when onSaveInstanceState is excuted.

Process: com.yds.cameratest2, PID: 28978
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.yds.cameratest2/camera.CameraActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: �����������������
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: �����������������
at android.os.Parcel.readParcelableCreator(Parcel.java:2536)
at android.os.Parcel.readParcelable(Parcel.java:2462)
at android.view.AbsSavedState.(AbsSavedState.java:67)
at android.view.View$BaseSavedState.(View.java:22750)
at android.view.View$BaseSavedState.(View.java:22739)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:943)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState.(LoopBarView.java:917)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:922)
at com.cleveroad.loopbar.widget.LoopBarView$SavedState$1.createFromParcel(LoopBarView.java:919)
at android.os.Parcel.readParcelable(Parcel.java:2471)
at android.os.Parcel.readValue(Parcel.java:2365)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2813)
at android.os.Parcel.readSparseArray(Parcel.java:2068)
at android.os.Parcel.readValue(Parcel.java:2422)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2732)
at android.os.BaseBundle.unparcel(BaseBundle.java:269)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:934)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2104)
at android.app.Activity.onRestoreInstanceState(Activity.java:1052)
at android.app.Activity.performRestoreInstanceState(Activity.java:1007)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1175)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2638)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) 
at android.app.ActivityThread.-wrap12(ActivityThread.java) 

TabBarViewController behaviour like ios

Hello @BelooS,
Thanks for great library. This is not issue but have one query. I want to use this lib in my app but there is one condition for it. As iOS they define TabBarViewController for all over the view. I want make same as like iOS. Means tabs all over my app like TabBarViewController.
Can u guide me for this?
Thanks in advance...

How to use it in Xamarin.Android

I have just watched a thread on stackoverflow, in the Answers section a person recommended this so I was curious to know how am I going to reference in my Xamarin Applications?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.