Skip to content
This repository has been archived by the owner on Feb 22, 2022. It is now read-only.

Layout White Flashes #52

Open
Kanval87 opened this issue Jan 30, 2013 · 51 comments
Open

Layout White Flashes #52

Kanval87 opened this issue Jan 30, 2013 · 51 comments

Comments

@Kanval87
Copy link

When layouts are heavy ( have a multiple child's and child's of child), flip view tend to give white flashes while flipping.

@openaphid
Copy link
Owner

I was lazy and used a naive mechanism to start animation in showFlipAnimation() of FlipViewController.
https://github.com/openaphid/android-flip/blob/master/FlipView/FlipLibrary/src/com/aphidmobile/flip/FlipViewController.java#L497

Flickers happen when 100ms is not enough for the controller to build animations.

I will try to solve it as it seems like a simple fix.

@Kanval87
Copy link
Author

Thank you for your instant consideration of issue.

i must say animation looks beautiful and works effiently .

openaphid added a commit that referenced this issue Jan 31, 2013
@openaphid
Copy link
Owner

I've pushed a change in develop branch. I won't claim it can eliminate flicker entirely, but please let me know if it helps reduce flashing in your app.

@quintos
Copy link

quintos commented Feb 5, 2013

This is what i'm seeing:

when the page is refreshed (the screenshot) after i flipped to it (after my lazy content is loaded), it will flicker when i flip it over to the next page. When the page has already done it's refresh at the moment i flipped over to it, it will not flicker when i flip to the next.

@Kanval87
Copy link
Author

Kanval87 commented Feb 7, 2013

Sorry it took mi long to reply

and no problem has'nt been solved yet.. it is still flashing

@ajitjangra
Copy link

Please suggest some ideas to reduce flashing?

@openaphid
Copy link
Owner

Reopened, will push a fix in develop branch soon

@openaphid openaphid reopened this Apr 28, 2013
openaphid pushed a commit that referenced this issue Apr 28, 2013
@openaphid
Copy link
Owner

The push 2dca94e should have fix the flash issue, but it also introduces a minor issue when flip backward on the first page. I'll publish a fix later today.

@greathemin
Copy link

Hello, thank you for your fix, but I found [FlipView Demo] -> [3.Async Content] is always some white splash screen.when flipping next page no problem, but often occur flipping to pre page by gently touch.

@openaphid
Copy link
Owner

Thanks for your report, it seems my previous fix is not perfect yet.

openaphid pushed a commit that referenced this issue May 1, 2013
@openaphid
Copy link
Owner

I've finished another fix in the develop branch to address the issue. Please try it on your device.
Thanks in advance.

@redwind
Copy link

redwind commented May 3, 2013

Thanks !
Flip animation more smooth now.

@miteshm
Copy link

miteshm commented Dec 4, 2013

I am getting White Flash on Layout while flipping next. Flip back is working fine but next has issue.

@JackCho
Copy link

JackCho commented Dec 10, 2013

I am also getting the same White Flash when flipping next.But flipping to last page is fine,I am curious about this issue.Hope to fix it.

@manhhoangxuan
Copy link

I also facing this problem now. I user gridview and setAdapter for gridview in getView method
Please fix it.
Thanks in advances!

@manhhoangxuan
Copy link

Hhihi I was fixed my problem. The reason of problem that I don't set background for main layout.
When I set background by tag android:background="@android:color/white" > it's OK.
So I think that, this problem still encounter if background is transparent
Thank you for sharing a great lib.
Thanks in Advances!

@kevinmeresse
Copy link

I have the same issue... Flipping next is flashing, but flipping back is working just fine. @miteshm and @JackCho did you guys find a fix for that? @openaphid do you plan to reopen this bug, by any chance? Cheers!

@gauravdegenius
Copy link

I have the same issue...In FragementActivity, Flipping next is flashing, but flipping back is working just fine . Although everything works fine in Activity but in Fragment Activity Its flashing in forwarding.

@gauravdegenius
Copy link

@kevinmeresse Did you get any fix for the same ?

@gauravdegenius
Copy link

I got the RCA for the same, flickering still happening until android:targetSdkVersion is greater than 10.
So, For ICS and on words It flickers in next flipping.

@fanhongwei
Copy link

Thanks,I also have the same problem. white flashes while flipping,In my App,the imageview is too heavy.

@indy1515
Copy link

You can reduce the white flash by reduce rendering bitmap

setAnimationBitmapFormat(Bitmap.Config);

This doesn't kill all the flashes but hope it helps! :)

@ngoumotsios
Copy link

Still having a problem with a blinking at random times ... Has anyone found a clear solution to this?

@hak-ziadov
Copy link

Please what about the flickering when getting to next page
I hope U solve this issue :(

Thanks in advance

@ngoumotsios
Copy link

Unfortunatelly i have not solve this issue ... i am trying to get deep into code but is dificult ... Do you have the same problem?

@hak-ziadov
Copy link

unfortunatelly yes :(

@manhhoangxuan
Copy link

I have same problem now.
I am using Galaxy S3 for testing this but when i flip next, flash screen still happen
I was use lastest version and change setAnimationBitmapFormat(Bitmap.Config.RGB_565) but it's not working
Any body solved problem?
Thanks in advances!

@kevinmeresse
Copy link

Hi guys,
I couldn't get any fix for the white flashes. But I am now using another library from @emilsjolander which is working very well: https://github.com/emilsjolander/android-FlipView
It doesn't support webviews or fragments yet, but it's clean and easy to use. I hope it can help some of you who can't get this one work properly.
Cheers!

@fanhongwei
Copy link

I will still wait @openaphid to fix for the white flashes.I believe there not be long time. if there be long time,I will try @emilsjolander. @kevinmeresse ,thank you!

@zhuofengli
Copy link

Hi all, I fixed this issue by putting an ImageView with white background at the bottom of my page view layout:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        android:background="#ffffff"/>
    <LinearLayout
        android:id="@+id/content_container"
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        android:orientation="vertical">

        <!-- Your page content goes here -->

    </LinearLayout>

</RelativeLayout>

Hope this can help ppl looking for solutions around this

@fanhongwei
Copy link

I have a try,it still flash screen,but the probality is lower

@2laa
Copy link

2laa commented Apr 13, 2014

Hi All, Has anyone found a solution?

@ghost
Copy link

ghost commented Apr 25, 2014

FlipViewController.java
void postHideFlipAnimation() {
if (inFlipAnimation) {
// handler.post(new Runnable() {
// @OverRide
// public void run() {
// hideFlipAnimation();
// }
// });
}
}

try

@manhhoangxuan
Copy link

@link17: yeah, comment this lines, flash will stop but not update the view.
Could you give full solution for this
thanks in advance!

@soualid
Copy link

soualid commented Jul 19, 2014

Having the same issue. The worst is that everything was OK when I was evaluating this library during my POC, and I forked it to add features to it (spine position, orientation change handling).

Does anybody found a solution to fix this ?

@soualid
Copy link

soualid commented Jul 19, 2014

Probably not the cleanest solution, but found that the flicker does not appear if you delay the call to hideFlipAnimation in the postHideFlipAnimation() method of FlipViewController.java.

    void postHideFlipAnimation() {
        if (inFlipAnimation) {
            new Thread() {
                @Override
                public void run() {
                    try {
                        Thread.sleep(200);
                    } catch (InterruptedException e) {
                    }
                    ((Activity)FlipViewController.this.getContext()).runOnUiThread(new Runnable() {
                        public void run() {
                            handler.post(new Runnable() {
                                public void run() {
                                    hideFlipAnimation();
                                }
                            });
                        }
                    });
                }
            }.start();
        }
    }

@zhuofengli
Copy link

hmmm, I tried the solution above, but the flickering still happens

@vishnumg
Copy link

I had a similar problem. The content of the flipview had margins around them. While flipping, the margins started showing up in white. Once the animations are complete, it goes back to normal. The white margin shows up only during the flipping.

How I solved this:
I wapped the contents int another layout and applied padding to it the same amount of margin the contents used to have. This fixed the problem.

@openaphid openaphid reopened this Aug 28, 2014
@magirtopcu
Copy link

I changed the postHideFlipAnimation like below in FlipViewController.

void postHideFlipAnimation() {
    if (inFlipAnimation) {
      handler.postDelayed(new Runnable() {
        @Override
        public void run() {
          hideFlipAnimation();
        }
      },200);
    }
  }

@Kirthiga30
Copy link

Flicker issue has been fixed.Delay the postHideFlipAnimation for 2 seconds and add a transparent background in parent layout.

@sahib20
Copy link

sahib20 commented Dec 24, 2014

in flipviewcontroller where to call webservice when i flip the page and data is loaded dynamically when flip page.

@srinivas460
Copy link

Hi , faceing the same issue also when i try to flip the layout image gets refreshed and later flipping . when i return to image positon layer , image is not getting refreshed again , so only when i flip for next view only image gets refreshing .
so can anyone tell me how to fix it ....

@ghost
Copy link

ghost commented Apr 10, 2015

Hey. How can I change your code according to read images from URL or drawable ?

@runforprogram
Copy link

I used @magirtopcu method,the flicker disappear,but i feel like switch is slow,and I implement FlipViewController.ViewFlipListener(),the method onViewFlipped is delayed. I don't think it is a perfect
solution.

@magirtopcu
Copy link

Hi @runforprogram , Can you share your implementation ?

@ghost
Copy link

ghost commented Jun 27, 2015

Anybody found a solution yet?

@biechereran
Copy link

Who has a good solution for this issue?
Help anyone?

@srpunni
Copy link

srpunni commented Jul 10, 2015

Comment a line as below in FlipViewController...it will work like a charm....also keep main layout background white...also imageview background white color:
private void hideFlipAnimation() {
if (inFlipAnimation) {
inFlipAnimation = false;

  updateVisibleView(bufferIndex);

  if (onViewFlipListener != null) {
    onViewFlipListener.onViewFlipped(bufferedViews.get(bufferIndex), adapterIndex);
  }

  handler.post(new Runnable() {
    public void run() {
      if (!inFlipAnimation) {
        //COMMENT BELOW LINE
       // cards.setVisible(false);
        surfaceView.requestRender(); //ask OpenGL to clear its display
      }
    }
  });
}

}

@Pkaran01
Copy link

.it's work like a charm but image is not updating properly

@weepctxb
Copy link

weepctxb commented Feb 1, 2016

@CRUDTechnolgoy Me too, I tried to hide that line but that causes my search filter on the FlipView to not work. Delaying by 200ms and setting the container layout backgrounds to white seems to be the best fix for now.

@praveenrawat89
Copy link

praveenrawat89 commented Mar 27, 2017

hi , Firstly , Very Nice library . Can anyone tell me , how to implement zoom in , zoom out and pinch functionality . I used with custom zoomview but it will intrupt the sliding .

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests