انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
گرفتن عکس از اینترنت

گرفتن عکس از اینترنت

#1
با عرض سلامو خسته نباشید
ببخشید من با توجه به کلید 294
http://www.kelidestan.com/keys/keys.php?key=294
این کدو زدم بدون ارور نشان داده میشه ولی توی دستگاه واقعی کار نمیکنه مشکل چیه؟
api23
اندروید استدیو

کد:
public class Main2Activity extends AppCompatActivity {

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main2);
       class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
           ImageView bmImage;

           public DownloadImageTask(ImageView bmImage) {
               this.bmImage = bmImage;
           }

           protected Bitmap doInBackground(String... urls) {
               String urldisplay = urls[0];
               Bitmap mIcon11 = null;
               try {
                   InputStream in = new java.net.URL(urldisplay).openStream();
                   mIcon11 = BitmapFactory.decodeStream(in);
               } catch (Exception e) {
                   Log.e("Error", e.getMessage());
                   e.printStackTrace();
               }
               return mIcon11;
           }

           protected void onPostExecute(Bitmap result) {
               bmImage.setImageBitmap(result);

               ImageView imageView = (ImageView) findViewById(R.id.imageView1);
               new DownloadImageTask(imageView).execute("http://www.beytoote.com/images/stories/housekeeping/hou12252.jpg");
           }
       }
   }

}
پاسخ

گرفتن عکس از اینترنت

#2
(۱۳۹۴/۱۲/۰۶, ۰۴:۴۹ ب.ظ)iamir نوشته: با عرض سلامو خسته نباشید
ببخشید من با توجه به کلید 294
http://www.kelidestan.com/keys/keys.php?key=294
این کدو زدم بدون ارور نشان داده میشه ولی توی دستگاه واقعی کار نمیکنه مشکل چیه؟
api23
اندروید استدیو

کد:
public class Main2Activity extends AppCompatActivity {

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main2);
       class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
           ImageView bmImage;

           public DownloadImageTask(ImageView bmImage) {
               this.bmImage = bmImage;
           }

           protected Bitmap doInBackground(String... urls) {
               String urldisplay = urls[0];
               Bitmap mIcon11 = null;
               try {
                   InputStream in = new java.net.URL(urldisplay).openStream();
                   mIcon11 = BitmapFactory.decodeStream(in);
               } catch (Exception e) {
                   Log.e("Error", e.getMessage());
                   e.printStackTrace();
               }
               return mIcon11;
           }

           protected void onPostExecute(Bitmap result) {
               bmImage.setImageBitmap(result);

               ImageView imageView = (ImageView) findViewById(R.id.imageView1);
               new DownloadImageTask(imageView).execute("http://www.beytoote.com/images/stories/housekeeping/hou12252.jpg");
           }
       }
   }

}
سلام

برای لود شدن عکس از اینترنت کارهای زیر رو انجام دهید

صفحه layout.xml رو بصورت زیر تغییر دهید
کد پی‌اچ‌پی:
<LinearLayout 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"
 
   android:orientation="vertical"
 
   tools:context=".MainActivity" >
 
 
   <Button
        android
:layout_width="wrap_content"
 
       android:layout_height="wrap_content"
 
       android:layout_gravity="center"
 
       android:id="@+id/load"
 
       android:text="Load Image" />
 
 
   <ImageView
        android
:layout_width="wrap_content"
 
       android:layout_height="wrap_content"
 
       android:layout_gravity="center"
 
       android:id="@+id/img"/>
 
</
LinearLayout


کدهای java را بصورت زیر تغییر دهید

اگه توی کدها مشکل داشتید بگید تا توضیح بدم
کد پی‌اچ‌پی:
import java.io.InputStream;
import java.net.URL;
 
import android.os.AsyncTask;
import android.os.Bundle;
import android.app.Activity;
import android.app.ProgressDialog;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
 
public class 
MainActivity extends Activity {
 
   Button load_img;
 
   ImageView img;
 
   Bitmap bitmap;
 
   ProgressDialog pDialog;
 
 
   @Override
    protected void onCreate
(Bundle savedInstanceState) {
 
       super.onCreate(savedInstanceState);
 
       setContentView(R.layout.activity_main);
 
       load_img = (Button)findViewById(R.id.load);
 
       img = (ImageView)findViewById(R.id.img);
 
       load_img.setOnClickListener(new View.OnClickListener() {
 
 
           @Override
            public void onClick
(View arg0) {
 
               // TODO Auto-generated method stub
 
                new LoadImage().execute("https://www.learn2crack.com/wp-content/uploads/2014/04/node-cover-720x340.png");
 
           }
 
       });
 
 
 
   }
 
   private class LoadImage extends AsyncTask<StringStringBitmap> {
 
       @Override
        protected void onPreExecute
() {
 
           super.onPreExecute();
 
           pDialog = new ProgressDialog(MainActivity.this);
 
           pDialog.setMessage("Loading Image ....");
 
           pDialog.show();
 
 
       }
 
        protected Bitmap doInBackground(String... args) {
 
            try {
 
                  bitmap BitmapFactory.decodeStream((InputStream)new URL(args[0]).getContent());
 
 
           } catch (Exception e) {
 
                 e.printStackTrace();
 
           }
 
           return bitmap;
 
        }
 
 
        protected void onPostExecute(Bitmap image) {
 
 
            if(image != null){
 
            img.setImageBitmap(image);
 
            pDialog.dismiss();
 
 
            }else{
 
 
            pDialog.dismiss();
 
            Toast.makeText(MainActivity.this"Image Does Not exist or Network Error"Toast.LENGTH_SHORT).show();
 
 
            }
 
        }
 
    }
 

موفق باشید
Iran  ErfanMahigir Iran
پاسخ
 سپاس شده توسط iamir ، sohrabjam ، شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان