如何在弹出对话框中为 Imageview 设置图像
How to setimage for an Imageview in a popup dialog
这是我的 Popup
class,
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();
}
}
而我的 Fragment 的 onClick 方法是,
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;
}
}
我需要在 ImageView imageFirst
上使用字符串变量 url
或 url1
和 setimage。
求助,我怎么会这样?
首先将 Glide 依赖项添加到 build.gradle
部分。
dependencies {
// glide
compile 'com.github.bumptech.glide:glide:3.7.0'
}
然后
ImageView imageFirst= (ImageView) dialog.findViewById(R.id.img_First);
Glide.with(activity).load(url)
.thumbnail(0.5f)
.crossFade()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageFirst);
在dependencies
中添加以下内容
compile 'com.github.bumptech.glide:glide:3.7.0'
并用于在 ImageView 中设置
Glide.with(mContext)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.dontAnimate()
.placeholder(ContextCompat.getDrawable(mContext, R.mipmap.ocassion_placeholder))
.into(imageFirst);
在build.gradle文件中添加依赖
compile 'com.github.bumptech.glide:glide:3.7.0'
使用对话框扩展弹出窗口class
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();
}
});
}
}
在你的 activity 中,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();
}
}
添加另一个变量以传递到 showDialog 方法以从 onClick 方法传递图像的位置 ID。然后在showDialog方法中,使用这个id设置为图片资源。
点击时:
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;
}
}
显示对话框:
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();
}
}
这是我的 Popup
class,
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();
}
}
而我的 Fragment 的 onClick 方法是,
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;
}
}
我需要在 ImageView imageFirst
上使用字符串变量 url
或 url1
和 setimage。
求助,我怎么会这样?
首先将 Glide 依赖项添加到 build.gradle
部分。
dependencies {
// glide
compile 'com.github.bumptech.glide:glide:3.7.0'
}
然后
ImageView imageFirst= (ImageView) dialog.findViewById(R.id.img_First);
Glide.with(activity).load(url)
.thumbnail(0.5f)
.crossFade()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageFirst);
在dependencies
compile 'com.github.bumptech.glide:glide:3.7.0'
并用于在 ImageView 中设置
Glide.with(mContext)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.dontAnimate()
.placeholder(ContextCompat.getDrawable(mContext, R.mipmap.ocassion_placeholder))
.into(imageFirst);
在build.gradle文件中添加依赖
compile 'com.github.bumptech.glide:glide:3.7.0'
使用对话框扩展弹出窗口class
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();
}
});
}
}
在你的 activity 中,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();
}
}
添加另一个变量以传递到 showDialog 方法以从 onClick 方法传递图像的位置 ID。然后在showDialog方法中,使用这个id设置为图片资源。
点击时:
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;
}
}
显示对话框:
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();
}
}