2016-09-30 3 views
2

Ich verstehe nicht vollständig, wo mein Problem liegt, also werde ich so viele Informationen wie möglich zur Verfügung stellen, einige davon sind irrelevant, um die Antwort zu finden, aber einige davon können helfen.Bitmap skaliert nicht zu imageView

Das Problem

ich eine Kamera in meine Anwendung integriert haben, ich bin mit einem Surface eine Vorschau der Kamera zu zeigen, wenn die Bilderfassungs Ich nehme das Rohbild Bytes und senden sie durch einen ObjectOutput-Stream, wo ich das Bild auf dieser Aktivität anzeigen werde. Hier ist ein Ausschnitt aus diesem Code:

out = new ObjectOutputStream(new FileOutputStream(new File(getActivity().getCacheDir(),"")+"cacheFile.srl")); 
out.writeObject(bytes); 

In der anderen Tätigkeit ich in dem Bytes lesen und zeigt das Bild:

bytes = (byte[]) in.readObject(); 
image = BitmapFactory.decodeByteArray(bytes, 0, bytes.length); 
myHolder.setImageBitmap(image); 

Hier ist meine XML-Datei für die Aktivität, die das Bild zeigt:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".fragments.Home"> 

<ImageView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:adjustViewBounds="true" 
    android:id="@+id/ih" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentBottom="true"/> 

Here is the problem, I need to scale the image to fit the whole activity, yet there is white lines on either side

Wenn andere Informationen benötigt werden, lassen Sie es mich wissen und krank Update an den Pfosten

Update 1

ich mein Layout dies geändert:

<ImageView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:scaleType="centerCrop" 
    android:id="@+id/ih" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="100dp"/> 

noch habe ich noch die weißen Linien entweder Seite

+0

Lese über '' ImageView' die scaleType's – pskink

+0

Bitte können Sie die Auflösung des Bildes und das Gerät teilen? –

Antwort

0

Set android:scaleType="centerCrop" als Attribut für die ImageView, wenn Sie möchten, dass das Bild seine Grenzen und Schnitt des Rests

012 passt

Sie können mehr Informationen über scaletypes finden Sie hier: https://developer.android.com/reference/android/widget/ImageView.ScaleType.html

+0

Ich habe meinen Beitrag aktualisiert, ich habe versucht, was Sie sagten, dass es nicht funktioniert, schauen Sie auf das Update im ursprünglichen Beitrag – BadCodersHub

+0

Versuchen Sie, Android: adjustViewBounds = "True" vielleicht hilft dies – Katharina

+0

ah dies funktioniert danke! – BadCodersHub

Verwandte Themen