Android :: OutOfMemory Exception Appears While Scrolling The List Of Images
Jan 15, 2010
I have a list of 70 text items with image icons(which are stored in drawables folder).
If I launch application the first time and scroll the list slowly - the exception doesn't occur.
When the application is launched the first time and I scroll the list with 'fling' action the following exception occurs:
COD:.....................
After that, if I kill the application with DDMS, start it again and scroll it with 'fling' action, exception doesn't occur. So the exception arises only if application is installed and launched the first time.
Here is the adapter I use for the list:
CODE:................
Is there a way to avoid the exception? Should I catch the exception and escape the memory somehow?
View 1 Replies
Oct 2, 2010
I'm having a hard time resolving a crash report. It's an OutOfMemory exception that occurs during the setContentView in the onCreate of my main activity.
I just want to be sure I understood Android LifeCycle well :
1) The onCreate of my main activity is called once and only once during the life time of my application ? Is that correct ?
2) Just like for the big bang, before the oncreate of my activity, nothing exists for that activity, so memory consumption is zero, no objects exists right ?
So what can cause that sometimes, with random framework and devices, I get an OOM exception ? I mean if say my background image is causing this, it should blow up everytime, on every device, shouldn't it ? I mean the result should be reliable.
The background image is a standard jpg : 360*480 weighing 37kb, nothing fancy really :s
The crash report below :
CODE:.....................
View 8 Replies
View Related
Aug 24, 2010
I have an Android app that in the onCreate() method, preloads a lot of graphics.
When I test my app on my HTC Aria and launch it, it runs fine. However, if I press the back button to exit my app, and then launch the app again, it crashes with an OutOfMemoryError: bitmap size exceeds VM budget. If I then launch the app for the third time (right after it has crashed) it launches fine. Then if I close and re-launch it, it crashes again with out of memory. It continues this every-other-time-crashing pattern forever if I keep trying.
I checked to see what life cycle methods were being called and onStop() and onDestroy() are both being called when I exit the app, yet I have a feeling that something is not yet being cleaned up and that by "crashing" the app when I try to launch it the second time, it somehow free's the memory.
Any thoughts on what could be happening or how to remedy this? Please let me know if you need me to post more info.
Info: My app is fairly simple and only has 1 activity that plays some frame animations.
View 3 Replies
View Related
Nov 5, 2010
In my application I load a couple of images from JPEG and PNG files. When I place all those files into assets directory and load it in this way, everything is ok:
CODE:..................
But when I try to load the exact same images from sd card, I get an OutOfMemory exception!
CODE:..............
This is what I get in the log:
CODE:...........
UPDATE: Tried both of these on real device - it seems that I can't load more than 12MB of bitmaps into whatever is called "external memory" (this is not an sd card).
View 7 Replies
View Related
Mar 23, 2013
My mobile is xolo q800, see my attachments in 100 % zoom .1st image shows a comparison between the original pic (left side) and the same pic as my phone wallpaper (right side) with no cropping and scrollable taken by default screenshot (hold vol- and power button simultaneously). i have marked the problem areas with black circles for u to compare notice the scar below the eyes appears smudged in my phone...the same pic looks good without smudging when viewed with astro file manager or quickpic....but even when i set the same pic from quickpic(no smudging in quickpic app) as the wallpaper....the wallpaper looks smudged again.
View 1 Replies
View Related
Sep 6, 2010
I've got the below screen that contains some images (6 per visible page). Scrolling up and down seems quite laggy to me. It's like it's rendering the images again. Scrolling back up seems worse than scrolling down.
Anyone know how to increase performance in such an area to create a nice smooth scroll?
Update: The images and text is all retrieved from my SQLite database. The list is created using SimpleCursorAdapter.
CODE:.......................
View 3 Replies
View Related
Aug 26, 2010
A number of users of my app have reported that on the Nexus One, running Froyo 2.2, the app appears multiple times in the 'Recent Apps' list that is displayed when you long press the home button. Personally, I have not been able to replicate the issue. Have tried killing the app with a task killer then restarting it to see if that would cause the app to appear more than once on the list. Also tried spawning multiple thread from within an activity in the app, but still no go. I have also tested on Droid phones running 2.2 as well as on the 2.2 emulator but to no avail. It is curious that only Nexus One Froyo users experience the issue. The app has one main launcher activity, about 30 different activities and is divided into 4 main tasks to help manage the activity stack. The app also has an IntentService for running network operations in the background. Is there any know scenario that could cause an app to appear multiple times in the 'Recent Apps' list? Is the 'Recent Apps' list populated based on the app package name e.g. com.mycompany.myappname or based on the tasks defined in the application manifest file?
View 7 Replies
View Related
Jul 3, 2010
New to Android... Like some aspects but I find some simple things are tough to solve.
When I hit the "Phone" button on the bottom of the sense screen, it pulls up a contact list that is all 558 contacts plus any number that dialed in or out. I have my "People" button set with just the 150 people I love the most (I eliminated Facebook people from "People")
Is there anyway to change the "Phone" list so that it pops up the "People" list instead of the huge combined list of history and all contacts?
View 1 Replies
View Related
Oct 17, 2010
Trying to implement simple dictionary. I want to make it so while the user is typing in the EditText box the list to scroll automatically to the best match. I don't want it to filter the list. For example if the user types "s" in the EditText I want the first word that s/he sees under the EditText box to be the first word in the dictionary that starts with "s." But the user should still be able to slide up and down and to be able to see the entire list of words. It is basically like a go to functionality. I used ArrayList to store my list of words. The data is in res/raw/data.xml file. Here is my onCreate method
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
wordListView = (ListView)findViewById(R.id.wordList);
myEditText = (EditText)findViewById(R.id.myEditText);
words = new ArrayList<Word>();
arrAdap = new ArrayAdapter<Word>(this, android.R.layout.simple_list_item_1, words);
wordListView.setAdapter(arrAdap); try {
InputStream inSource = getResources().openRawResource(R.raw.data);
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document doc = builder.parse(inSource, null);
NodeList wordsList = doc.getElementsByTagName("eng-bg");
int length = wordsList.getLength();
for(int i = 0; i<length; i++) {
Element entry = (Element)wordsList.item(i);
Element eng = (Element)entry.getElementsByTagName("english").item(0);
Element bul = (Element)entry.getElementsByTagName("bulgarian").item(0);
Element id = (Element)entry.getElementsByTagName("ID").item(0);
String english = eng.getFirstChild().getNodeValue();
String bulgarian = bul.getFirstChild().getNodeValue();
int wordId = Integer.parseInt(id.getFirstChild().getNodeValue());
Word word = new Word(bulgarian, english, wordId);
addNewWord(word);
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}wordListView.setOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
selectedWord = words.get(pos);
showDialog(TRANS_DIALOG);
myEditText.setText(selectedWord.getEnglish());
myEditText.addTextChangedListener(new TextWatcher(){
public void onTextChanged(CharSequence s, int start, int before, int count) {
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
View 1 Replies
View Related
Nov 20, 2010
Probably me being picky but I've noticed when scrolling through menus or web pages the images are blurry until you take your finger off or the image has stopped moving in which the image re-adjusts it's self.
My Hero never had this issue, much more smoother looking when scrolling. I just wanted to check that others where experiencing this and that it was the norm or not?
View 1 Replies
View Related
Oct 18, 2010
I have used tab view and inside frame first view is ListView.My list view has white and blue background alternately like 1st is white, 2nd blue, 3rd white, 4th blue.I have tried disabing cachehint and even using it. But when i scroll the alternate colors are broken like we can see 2 consecutive in white or blue. Sometimes even 3 in same color. This happens when i scroll the list.
View 2 Replies
View Related
Jun 8, 2010
I am trying to teach myself the basics of Android dev. At the moment I am experimenting with home screen widgets. I would like to create a simple widget that lists all my bookmarks. Somewhere in my googling I read that ListView is not usable in a widget. What's the best way to display a scrolling list in a widget?
View 1 Replies
View Related
Aug 12, 2010
We're working with a pre-release device running V2.1_update1 We have a ListView in the middle of a screen with the height set to wrap-content. On all other devices, as long as there is room on the screen, this control does not scroll--or if it does scroll, it only scrolls to the limits of the entries in the list. On this new device, there is definitely room for the list so it should not be scrolling at all, but the ListView scrolls and seems to have elastic whitespace above and below (and separator lines above the top item and below the bottom item). Thus, when you drag down, the whole list scrolls down within the limits of the view's bounds (i.e. it clips there) and then when you release the drag, the list springs back up to its normal position. This latter behavior makes it seem like there is deliberate code that has been put in for this--but we certainly didn't do that. What could cause this? Is there a setting that has defaulted one way on this device that defaults opposite on other devices?
View 2 Replies
View Related
Sep 1, 2010
I am new to android, and ended up (have to) ask a question here, Let's make it simple, I simply want to make my own TextView-like (MyView extends View). This is my code:
public class MyView extends View { private Paint mPaint; private String mText;
private Bitmap mBitmap1; private Bitmap mBitmap2; public MyView(Context context) {
super(context); initView(); } public MyView(Context context, AttributeSet attrs) {
super(context, attrs); initView(); } private final void initView() {
mPaint = new Paint(); } public void setText(String text) { mText = text;
} @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int measuredWidth = measureWidth(widthMeasureSpec);
if (mBitmap1 == null) initBitmap1(measuredWidth);
int measuredHeight = measureHeight(heightMeasureSpec);
setMeasuredDimension(measuredWidth, measuredHeight);
} private void initBitmap1(int measuredWidth) {
mBitmap1 = Bitmap.createBitmap(measuredWidth, Fonts.getHeight(), Bitmap.Config.ARGB_4444);
Canvas canvas = new Canvas(mBitmap1 ); canvas.drawText(mText, 0, 0, mPaint);
} private void initBitmap2() { mBitmap2 = Bitmap.createBitmap(30,
Fonts.getHeight(), Bitmap.Config.ARGB_4444); Canvas canvas = new Canvas(mBitmap2;
canvas.drawText(mText, 0, 0, mPaint);}
private int measureWidth(int widthMeasureSpec) { int measuredWidth = 0;
int specWidthMode = MeasureSpec.getMode(widthMeasureSpec);
int specWidthSize = MeasureSpec.getSize(widthMeasureSpec);
if (specWidthMode == MeasureSpec.EXACTLY) { measuredWidth = specWidthSize;
} else { measuredWidth = getWidth(); if (specWidthMode == MeasureSpec.AT_MOST) {
measuredWidth = Math.min(measuredWidth, specWidthSize);
} } return measuredWidth; }
private int measureHeight(int heightMeasureSpec) {
int measuredHeight = 0; int specHeightMode = MeasureSpec.getMode(heightMeasureSpec);
int specHeightSize = MeasureSpec.getSize(heightMeasureSpec);
if (specHeightMode == MeasureSpec.EXACTLY) {
measuredHeight = specHeightSize; } else { measuredHeight = 80;
if (specHeightMode == MeasureSpec.AT_MOST) { measuredHeight = Math.min(measuredHeight, specHeightSize);
} } return measuredHeight; }
@Override protected void onDraw(Canvas canvas) {
super.onDraw(canvas); canvas.drawBitmap(mBitmap1, getLeft(), 0, mPaint);
initBitmap2(); canvas.drawBitmap(mBitmap2, getLeft(), 30, mPaint); } }
View 9 Replies
View Related
Oct 8, 2010
It seems like the best way to create a horizontal scrolling list of images is to use the Gallery widget. I need to display sidebar text with each image.The examples I have seen showing how to use the Gallery widget only show images. Is it possible to display a list of images+text descriptions in a Gallery, and if it is, does anyone have an example of how to do this?
View 4 Replies
View Related
Mar 3, 2009
I have problem with the List view scrolling. Here I have a list view contains more 50 items. I am setting the list view background as transparent. While scrolling the list view it is showing with black background. Can any one tell me how to remove this black portion?
View 3 Replies
View Related
Sep 2, 2010
I am new to android, and ended up (have to) ask a question here. Let's make it simple, I simply want to make my own TextView-like (MyView extends View), This is my code:
public class MyView extends View { private Paint mPaint;
private String mText; private Bitmap mBitmap1; private Bitmap mBitmap2;
public MyView(Context context) { super(context); initView(); }
public MyView(Context context, AttributeSet attrs) { super(context, attrs);
initView(); } private final void initView() { mPaint = new Paint(); }
public void setText(String text) { mText = text; }
@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int measuredWidth = measureWidth(widthMeasureSpec);
if (mBitmap1 == null) initBitmap1(measuredWidth);
int measuredHeight = measureHeight(heightMeasureSpec);
setMeasuredDimension(measuredWidth, measuredHeight);
}
private void initBitmap1(int measuredWidth) {
mBitmap1 = Bitmap.createBitmap(measuredWidth, Fonts.getHeight(), Bitmap.Config.ARGB_4444);
Canvas canvas = new Canvas(mBitmap1 ); canvas.drawText(mText, 0, 0, mPaint);
} private void initBitmap2() {
mBitmap2 = Bitmap.createBitmap(30, Fonts.getHeight(), Bitmap.Config.ARGB_4444);
Canvas canvas = new Canvas(mBitmap2); canvas.drawText(mText, 0, 0, mPaint);
} private int measureWidth(int widthMeasureSpec) {
int measuredWidth = 0; int specWidthMode = MeasureSpec.getMode(widthMeasureSpec);
int specWidthSize = MeasureSpec.getSize(widthMeasureSpec);
if (specWidthMode == MeasureSpec.EXACTLY) { measuredWidth = specWidthSize;
} else { measuredWidth = getWidth(); if (specWidthMode == MeasureSpec.AT_MOST) {
measuredWidth = Math.min(measuredWidth, specWidthSize);
} } return measuredWidth; }
private int measureHeight(int heightMeasureSpec) {
int measuredHeight = 0; int specHeightMode = MeasureSpec.getMode(heightMeasureSpec);
int specHeightSize = MeasureSpec.getSize(heightMeasureSpec);
if (specHeightMode == MeasureSpec.EXACTLY) { measuredHeight = specHeightSize;
} else { measuredHeight = 80; if (specHeightMode == MeasureSpec.AT_MOST) {
measuredHeight = Math.min(measuredHeight, specHeightSize);
} } return measuredHeight;
} @Override protected void onDraw(Canvas canvas) {
super.onDraw(canvas); canvas.drawBitmap(mBitmap1, getLeft(), 0, mPaint);
initBitmap2(); canvas.drawBitmap(mBitmap2, getLeft(), 30, mPaint);
} }
In my code, I populate some numbers of MyView (let's say 20) in a ListActivity. My question is why mBitmap1's order changes randomly while i scroll (up-down) fastly (if I scroll slowly, this problem not occur)? mBitmap2 stays where those should be.
View 1 Replies
View Related
Feb 26, 2010
The Contacts app shows a button on the side of the screen that acts as a little thumb to allow you to quickly scroll the big list. I have a very long list that would benefit from this navigation behavior, but can't find any documentation as to how to enable it.
Is it a behavior that's built into the SDK, or must I write it myself?
View 1 Replies
View Related
Jun 14, 2010
I am getting a run time exception
java.lang.RuntimeException: Your content must have a ListView whose id
attribute is 'android.R.id.list'
I don't know what is wrong> code...
View 1 Replies
View Related
Oct 19, 2010
I am new to Android development and currently facing some problem. I need to change the Color for the pop up letter while scrolling through Contact list with more than 40 contacts. Currently it is showing in Black, I need to make it in White font.
View 2 Replies
View Related
Jun 14, 2010
I have a long scrolling list of EditText items created by a SimpleCursorAdapter and prepopulated with values from an SQLite database. I make this by: cursor = db.rawQuery("SELECT _id, criterion, localweight, globalweight FROM " + dbTableName + " ORDER BY criterion", null); startManagingCursor(cursor); mAdapter = new SimpleCursorAdapter(this, R.layout.weight_edit_items, cursor, new String[]{"criterion","localweight","globalweight"}, new int[]{R.id.criterion_edit, R.id.localweight_edit, R.id.globalweight_edit}); is.setListAdapter(mAdapter); The scrolling list is several emulator screens long. The items display OK - scrolling through them shows that each has the correct value from the database. I can make an edit change to any of the EditTexts and the new text is accepted and displayed in the box. if I then scroll the list far enough to take the edited item off the screen, when I scroll back to look at it again its value has returned to what it was before I made the changes, ie. my edits have been lost. In trying to sort this out, I've done a getText to look at what's in the EditText after I've done my edits (and before a scroll) and getText returns the original text, even though the EditText is displaying my new text. It seems that the EditText has only accepted my edits superficially and they haven't been bound to the EditText, meaning they get dropped when scrolled off the screen. Can anyone please tell me what's going on here and what I need to do to force the EditText to retain its edits?
View 1 Replies
View Related
Jul 1, 2010
I got a ListActivity. I update the activity using onContentChanged() API. My problem is that each time I call the above API the list scrolls to the top. Is there any easy way to turn this "feature" off?
View 1 Replies
View Related
Jan 20, 2010
Can anyone help with a problem I have? I created an activity (extending a list activity) and have it populating with a list of peoples names, however when I scroll up or down it automatically greys out the whole list view until you stop scrolling. Is it possible to stop this greying out from happening? I have attached an screenshot in case my description doesnt make sense. Code...
View 4 Replies
View Related
Aug 27, 2010
Ok guys not sure if its just me but if i lock my phone with a text conversation it scrolls all the way to the top. No big deal ways around it, came from the eris and this phone blows it away i absolutely love it. Just wondering if froyo will fix this little annoyance?
View 2 Replies
View Related
Jun 11, 2010
I m making an application which requires me to list all the images available on the SD-Card of the phone.
i tried querying the ContentResolver way i.e.
Cursor image = getContentResolver().query(Images.Media.EXTERNAL_CONTENT_URI, new String[]{Images.Media._ID,Images.Media.DATA,Images.Media.DISPLAY_NAME}, null, null, null);
but without any result. Is there any way i can get the list or if thats not possible then is there any possible intent (e.g. PICK) by which i can allow the user to select a file and then access the path of the file the user selected?
View 2 Replies
View Related
Jun 10, 2010
Does anyone else suffer from slow scrolling? For instance on the list of applications and on a large message thread the scrolling is very laggy and jerky. Surely this shouldn't happen with it's 1Ghz processor?
View 5 Replies
View Related
May 21, 2009
I would be retrieving values from SQLite database and have to display it in a list view. So how should I pass the images out from the database into the list view (in fact, I only save the image uri in db). I am able to save and retrieve images individually and display it on the screen. But how do I pass a bitmap and display it in a list view.
View 3 Replies
View Related
May 23, 2009
I'm working on an Android application that needs to look at what images a user has stored. The problem is that if the user has the sdcard mounted via the USB cable, I can't read the list of images on the disk. Does anyone know of a way to tell if the usb is mounted so that I could just pop up a message informing the user that it won't work?
View 3 Replies
View Related
Oct 1, 2010
I have found this example http://stackoverflow.com/questions/541966/android-how-do-i-do-a-lazy-load-of-images-in-listview/3068012#3068012 from Fedor which is absolutely great for what I need.
I have a question. if beside the Clear Cache button there would be a button with Cancel. How could I in onClick cancel the image download thread from the UI? code...
View 2 Replies
View Related
Apr 26, 2010
I am trying to retrieve a list of images and text from a web service. I have first coded to get the images to a list using Simple Adapter.
View 1 Replies
View Related