2017-06-21 2 views
-1

Das ist meine Popup Klasse,Wie für eine Bildansicht in einem Popup-Dialog setImage

public class Popup { 

    public void showDialog(Activity activity, String url){ 
     final Dialog dialog = new Dialog(activity); 
     dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     dialog.setCancelable(false); 
     dialog.setContentView(R.layout.popup_playerstats); 

     ImageView imageFirst= (ImageView) dialog.findViewById(R.id.img_First); 

     ImageView dialogButton = (ImageView) dialog.findViewById(R.id.close); 
     dialogButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       dialog.dismiss(); 
      } 
     }); 

     dialog.show(); 

    } 
} 

Und mein onClick Methode Fragment ist,

public void onClick(final View v) { 
    Popup alert = new Popup(); 
    switch (v.getId()) { 
     case R.id.button_1: 
      alert.showDialog(getActivity(),url); 
      break; 
     case R.id.button_2: 
      alert.showDialog(getActivity(),url1); 
      break; 
     default: 
      // some code here 
      break; 
    } 
} 

ich die String-Variable url verwenden müssen, oder url1 und setimage auf ImageView imageFirst.

Hilfe, wie könnte ich das tun?

+0

Überprüfen Sie meine Antwort –

Antwort

0

zuerst die Glide Abhängigkeit zu Ihrem build.gradle Abschnitt hinzufügen.

dependencies { 
    // glide 
    compile 'com.github.bumptech.glide:glide:3.7.0' 
} 

Dann

ImageView imageFirst= (ImageView) dialog.findViewById(R.id.img_First); 
Glide.with(activity).load(url) 
       .thumbnail(0.5f) 
       .crossFade() 
       .diskCacheStrategy(DiskCacheStrategy.ALL) 
       .into(imageFirst); 
+0

Thankyou seine Arbeits –

0

add in dependencies folgenden

compile 'com.github.bumptech.glide:glide:3.7.0' 

und in Image

Glide.with(mContext) 
         .load(url) 
         .diskCacheStrategy(DiskCacheStrategy.ALL) 
         .dontAnimate() 
         .placeholder(ContextCompat.getDrawable(mContext, R.mipmap.ocassion_placeholder)) 
         .into(imageFirst); 
0

setzen verwenden ein dd Abhängigkeit in build.gradle Datei

compile 'com.github.bumptech.glide:glide:3.7.0' 

Erweitern Sie Ihre Pop-up-Klasse mit Dialog

public class Popup extends Dialog{ 

private Context mContext; 
private ImageView imageFirst; 
private String url; 

public Popup(Context context, String url) { 
    super(context); 
    mContext = context; 
    this.url = url; 
} 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.popup_playerstats); 

    imageFirst= (ImageView) findViewById(R.id.img_First); 
    Glide.with(mContext) 
      .load(url) 
      .error(R.drawable.error) 
      .into(imageFirst); 


    ImageView dialogButton = (ImageView) findViewById(R.id.close); 
    dialogButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      dialog.dismiss(); 
     } 
    }); 
} 
} 

In Ihrer Tätigkeit, onClickEvent

public void onClick(final View v) { 
    Popup popup; 
    switch (v.getId()) { 
     case R.id.button_1: 
      popup = new Popup(mContext, url); 
      break; 
     case R.id.button_2: 
      popup = new Popup(mContext, url1); 
      break; 
     default: 
      // some code here 
      break; 
     popup.setCancelable(false); 
     popup.show(); 
    } 
} 
0

eine weitere Variable Fügen Sie in showdialog Methode zu übergeben das passieren Die Standort-ID des Bildes aus der onClick-Methode. Verwenden Sie dann in der Methode showDialog diese ID, um sie als Bildressource festzulegen.

onClick:

public void onClick(final View v) { 
    Popup alert = new Popup(); 

    switch (v.getId()) { 
     case R.id.button_1: 
      alert.showDialog(getActivity(),url,R.drawable.img1); 
      break; 
     case R.id.button_2: 
      alert.showDialog(getActivity(),url1,R.drawable.img2); 
      break; 
     default: 
      // some code here 
      break; 
    } 
} 

showdialog:

public class Popup { 

    public void showDialog(Activity activity, String url, int id){ 
     final Dialog dialog = new Dialog(activity); 
     dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     dialog.setCancelable(false); 
     dialog.setContentView(R.layout.popup_playerstats); 

     ImageView imageFirst= (ImageView) dialog.findViewById(R.id.img_First); 
     imageFirst.setImageResource(id); 

     ImageView dialogButton = (ImageView) dialog.findViewById(R.id.close); 
     dialogButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       dialog.dismiss(); 
      } 
     }); 

     dialog.show(); 

    } 
} 
Verwandte Themen