【问题标题】:image url in AlertDialog in onPostExecuteonPostExecute 中 AlertDialog 中的图像 url
【发布时间】:2014-07-29 22:02:02
【问题描述】:

这段代码是在 OnPostExecute 函数中打开一个对话框,它运行良好。

问题:

在对话框中出现的布局弹出窗口中,我有一个图像视图,我在其中放置了一个 URL 以向我显示该 url 的图片,其想法是在创建对话框时分配该 url,即动态分配。

我怎么能这样做?

感谢您的帮助

@Override
            protected void onPostExecute(String result) {

                    //Toast.makeText(context, result.toString(), Toast.LENGTH_LONG).show();
                    /*nombre.setText("");
                    dni.setText("");
                    telefono.setText("");
                    email.setText("");*/

                AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
                LayoutInflater inflater = getActivity().getLayoutInflater();

                builder.setView(inflater.inflate(R.layout.popup, null))
                   .setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
                       public void onClick(DialogInterface dialog, int id) {
                              dialog.cancel();
                       }
                });


                builder.create();
                builder.show();




            }

【问题讨论】:

  • 你的 ImageView 是 R.layout.popup 的一部分吗?
  • 是的,R.layout.popup 包含图像视图
  • 你打算如何将 URL 应用到 ImageView 上?

标签: android android-asynctask android-dialog


【解决方案1】:

在膨胀之前,您必须在其中声明 Dialog 布局视图和 ImageView。像这样:

   //inside onPostExecute()
   AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
       LayoutInflater inflater = getLayoutInflater();
       View imageLayoutView = inflater.inflate(R.layout.popup, null);
       ImageView image = (ImageView) imageLayoutView.findViewById(R.id.yourImageViewId);
       //an URI example
       Uri uri = Uri.parse("content://media/external/images/media/123");

       image.setImageURI(uri);

       builder.setView(imageLayoutView)
          .setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
              public void onClick(DialogInterface dialog, int id) {
                     dialog.cancel();
              }
       });

       builder.create();
       builder.show();

使用此代码,您可以将Uri 动态设置为ImageView

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-21
    • 2017-07-23
    • 1970-01-01
    相关资源
    最近更新 更多