RotatingText icon indicating copy to clipboard operation
RotatingText copied to clipboard

App starts freezing when implementing a RotatingText TextView

Open jahirfiquitiva opened this issue 7 years ago • 11 comments

Could this be because I didn't set a size for the text? Is it really needed?

Tested on a Moto G5 plus.

jahirfiquitiva avatar May 27 '17 21:05 jahirfiquitiva

Text size is not necessary, it takes the default value of nothing is explicitly set. Are you experiencing lag or the app freezes ? Does the app freeze on start or after some time ?

harjot-oberai avatar May 28 '17 18:05 harjot-oberai

@harjot-oberai I think both... First lag, then the app freezes completely And I think the app freezes when trying to start the animation.

Another thing, could it be because I'm using it in a RecyclerView? But there's only 1 item in the RecyclerView using the RotatingText TextView

jahirfiquitiva avatar May 28 '17 18:05 jahirfiquitiva

@harjot-oberai Or could it be because I want the whole text to be rotatable? I'm using it like:

rotatingText.setContent("?", rotatable);

Is it wrong?

jahirfiquitiva avatar May 28 '17 18:05 jahirfiquitiva

@harjot-oberai Not exactly on start. I think it takes a second to load and setup the configuration, and then it starts freezing

jahirfiquitiva avatar May 28 '17 18:05 jahirfiquitiva

I think the app is running out of memory. Mostly because of recycler view. Is your code on github ?

harjot-oberai avatar May 28 '17 18:05 harjot-oberai

@harjot-oberai I don't think that's the issue. Disabling the RotatingText, makes the app go back to normal. And it's a new app, so there are no other tasks running or anything.

And the code is not on GitHub, and I cannot share it.

jahirfiquitiva avatar May 28 '17 18:05 jahirfiquitiva

I am saying that the app is running out of memory because of the RotatingText. There are some performance issues in the library that need to be addressed. I will get back to you tomorrow; I will try to replicate the issue in my phone and try to fix it. Give me some time 👍 .

harjot-oberai avatar May 28 '17 18:05 harjot-oberai

This widget has occupied 20% of the CPU and always freeze when it resumed.What's the cause?

Jason1234567890 avatar Jun 21 '17 03:06 Jason1234567890

yeah my app also freezes on resume... mostly when returning after a while.....

arifullahjan avatar Jul 12 '17 11:07 arifullahjan

I tracked the problem to TimerTask. For some reason the timer tasks seem to pause after some time, when the device goes idle. I will have to replace timer tasks with AlarmManager or something of that sort. If someone has any alternate way of invalidating the canvas continuously please feel free to share.

harjot-oberai avatar Jul 12 '17 12:07 harjot-oberai

For every one second a new timer thread is being created. which is making more CPU usage every second. Can you solve the problem.

Typeface custom_font = Typeface.createFromAsset(getAssets(), "fonts/Reckoner_Bold.ttf"); RotatingTextWrapper rotatingTextWrapper = (RotatingTextWrapper) findViewById(R.id.custom_switcher); rotatingTextWrapper.setSize(35); Rotatable rotatable = new Rotatable(Color.parseColor("#FFA036"), 1000, " Why ?", "What ?", " How ?"); rotatable.setSize(35); rotatable.setAnimationDuration(500); rotatable.setTypeface(custom_font); rotatable.setInterpolator(new BounceInterpolator()); rotatingTextWrapper.setContent("?",rotatable );

screenshot 8

Durgaprasad1541996 avatar Nov 22 '17 18:11 Durgaprasad1541996