2017-08-08 1 views
0

I, ein Hintergrundbild hinzufügen möchtenSchwarz Imageview, während die Aktivität wieder aufnehmen oder Soft-Tastatur ändert

Hier ist der XML-Code

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:layout_width="match_parent" 
     android:id="@+id/chatroompage" 
     android:background="#EEEEEE" 
     android:layout_height="match_parent"> 
     <ImageView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/background" 
      android:scaleType="centerCrop"/> 
    </RelativeLayout> 

ich gleiten zum Laden Bild.

Glide.with(this).load(imageuri).into(background); 

funktioniert gut bei der ersten Ladung. Aber wenn ich eine Tastatur benutze oder die Aktivität fortsetze, wird das Bild schwarz.

Danke für die Hilfe.

+0

den Hintergrund entfernen von 'RelativeLayout' auch ein Platzhalter Bild verwenden, während das Bild geladen wird. –

+0

Ich brauche den RelativeLayout-Hintergrund, die Verwendung von Bildhintergrund ist optional. Wenn in der Einstellung gibt es Hintergrundbild, dann füge ich Code für Bildhintergrund – Kim

+0

Aber ich werde versuchen, dass – Kim

Antwort

0

Dieser Code:

android:windowSoftInputMode="stateVisible|adjustPan" 

Eintrag innerhalb <Activity > Tag in manifest Datei.

setzen Sie Ihre glide Set Bildcode innerhalb dieser Methode:

 @Override 
    protected void onResume() { 
     super.onResume(); 
     Glide.with(this).load(imageuri).into(background) 
     .load(getItem(position)) 
     .asBitmap() 
     .imageDecoder(new StreamBitmapDecoder(imageView.getContext(), 
     DecodeFormat.PREFER_ARGB_8888)) 
     .override(400, 300) 
     .fitCenter() 
     .skipMemoryCache(true); 
    } 

Sie bemerkt, dass wir .skipMemoryCache (true) genannt speziell Glide zu sagen, den Cache-Speicher zu überspringen.

Referenzen:

https://github.com/bumptech/glide/issues/738

https://github.com/bumptech/glide/issues/527

https://github.com/bumptech/glide/issues/673

+0

Es behebt irgendwie das Tastaturproblem, aber wenn ich auf die Home-Taste tippe und zurück zur Aktivität gehe, benutze denselben schwarzen Bildschirm – Kim

+0

glide in Activity oder fragment? @NoobCoder –

+0

In der Aktivität. – Kim

Verwandte Themen