Bitmap wird nciht skaliert

  • 1 Antworten
  • Letztes Antwortdatum
Jaiel

Jaiel

Dauer-User
235
Hi ich habe mal wieder ein kleines problem:


und zwar habe ich folgenden code in meiner surfaceview:
Code:
public void doDraw()
	{
		Bitmap bmp=BitmapFactory.decodeResource(getResources(),R.drawable.splashscreen);
		float scale = (float)bmp.getHeight()/(float)getHeight();
		int newWidth = Math.round(bmp.getWidth()/scale);
		int newHeight = Math.round(bmp.getHeight()/scale);
		Bitmap sbmp = Bitmap.createScaledBitmap(bmp, newWidth, newHeight, true);
		try
		{
			canvas = sHolder.lockCanvas();
			synchronized(sHolder)
			{
				canvas.drawBitmap(sbmp, 0, 0, null);
			}
		}
		catch(Throwable t)
		{
			canvas=null;
		}
		finally
		{
			if(canvas!= null)
			{
				sHolder.unlockCanvasAndPost(canvas);
			}
		}
	}


wie man sieht möchte ich ein Bitmap hochskalieren damit er den gesamten Bildschirm füllt(es sit im LAndscapemodus deswegen getWidth()).

Den code zum Skalieren hab ich mir aus einem Forum kopiert aber der ist in Ordnung soweit.

Das Problem ist dass das bitmap immer noch unskaliert angezeigt wird obwohl diese Lösung für viele scheinbar klappt nur nciht bei mir!

Hat jemand eine Ahnung?

Der ursprüngliche Beitrag von 13:15 Uhr wurde um 13:20 Uhr ergänzt:

Hab jetzt den Code etwas verkleinert weil diese skalierung irgednwie dumm war von denen :

da steht jetzt statt:
Code:
Bitmap bmp=BitmapFactory.decodeResource(getResources(),R.drawable.splashscreen);
		float scale = (float)bmp.getWidth()/(float)getWidth();
		int newWidth = Math.round(bmp.getWidth()/scale);
		int newHeight = Math.round(bmp.getHeight()/scale);
		Bitmap sbmp = Bitmap.createScaledBitmap(bmp, newWidth, newHeight, true);

folgendes:

Code:
Bitmap bmp=BitmapFactory.decodeResource(getResources(),R.drawable.splashscreen);
		Bitmap sbmp = Bitmap.createScaledBitmap(bmp, getWidth(), getHeight(), true);
 
Hey hat sich doch wieder erledigt habe es jetzt nochmal versucht ohne veränderungen und es klappt omg lag wohl wieder mal an meinem S3
 
Zurück
Oben Unten