0

내가 웹에서 표시 내 이미지에 같이 일한 내 코드가 폐쇄 :내가 링크에서 간단한 표시 여러 이미지 아래에이 코드를 사용하지만, 응용 프로그램은

LetsTry.java

public class LetsTry extends PagerAdapter { 

    Context context; 

    String[] imageLocation = { "http://sandipjagdale.com/images/logo.png", 
      "http://sandipjagdale.com/images/logo.png", 
      "http://sandipjagdale.com/images/logo.png" }; 

    public LetsTry(Context context) { 
     // TODO Auto-generated constructor stub 
     this.context = context; 
    } 

    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 
     return imageLocation.length; 
    } 

    @Override 
    public boolean isViewFromObject(View arg0, Object arg1) { 
     // TODO Auto-generated method stub 
     return arg0 == ((ImageView)arg1); 
    } 

    @Override 
    public Object instantiateItem(ViewGroup container, int position){ 

     ImageView iv = new ImageView(context); 
     iv.setScaleType(ImageView.ScaleType.CENTER_INSIDE); 

     for(int i = 0; i < imageLocation.length; i++) 
     { 
      iv.setImageResource(imageLocation[i]); 
     } 

     return iv; 

    } 
} 

홈페이지를. 자바

public class Main extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager); 
     LetsTry adapter = new LetsTry(this); 
     viewPager.setAdapter(adapter); 
    } 

} 

iv.setImageResource 에서 오류가 나는 이미지 갤러리의이 유형을 보여줄 수있는 방법 manishkpr에이 코드를 다음에 표시 이 웹 URL 이미지를 사용합니다.

+1

어떤 오류가 발생합니까? logcat 출력을 게시하십시오. –

+0

"iv.setImageResource"에서 'A RED LINE'아래에 오류가있어 해결하지 못하면 실행할 수 없습니다. –

+0

어떤 오류가 있습니까? 빨간 선 위에 마우스를 가져 가면 무엇인지 읽을 수 있습니다. –

답변

0

ls 이미지의 URL을 이미지보기로 설정하려면이 코드를 사용하십시오.

for(int i = 0; i < imageLocation.length; i++) 
    { 
     iv.setImageBitmap(getBitmapFromURL(imageLocation[i])); 
    } 



public static Bitmap getBitmapFromURL(String src) { 
    try { 
     URL url = new URL(src); 
     HttpURLConnection connection = (HttpURLConnection) url 
       .openConnection(); 
     connection.setDoInput(true); 
     connection.connect(); 
     InputStream input = connection.getInputStream(); 
     Bitmap myBitmap = BitmapFactory.decodeStream(input); 
     return myBitmap; 
    } catch (IOException e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 

데모 :

public class MainActivity extends ActionBarActivity { 

ImageView iv; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    StrictMode.ThreadPolicy policy = 
      new StrictMode.ThreadPolicy.Builder().permitAll().build();  
       StrictMode.setThreadPolicy(policy); 

    iv=(ImageView)findViewById(R.id.imageView1); 

    iv.setImageBitmap(getBitmapFromURL("http://sandipjagdale.com/images/logo.png")); 
} 

public static Bitmap getBitmapFromURL(String src) { 
    try { 
     URL url = new URL(src); 
     HttpURLConnection connection = (HttpURLConnection) url 
       .openConnection(); 
     connection.setDoInput(true); 
     connection.connect(); 
     InputStream input = connection.getInputStream(); 
     Bitmap myBitmap = BitmapFactory.decodeStream(input); 
     return myBitmap; 
    } catch (IOException e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 

}

그것은 잘 작동된다.

public class GalleryView extends Activity { 

String[] imageLocation = { "http://sandipjagdale.com/images/logo.png", 
     "http://sandipjagdale.com/images/logo.png", 
     "http://sandipjagdale.com/images/logo.png" }; 
LinearLayout imageView; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    StrictMode.ThreadPolicy policy = 
      new StrictMode.ThreadPolicy.Builder().permitAll().build();  
       StrictMode.setThreadPolicy(policy); 


    try { 
     // InputStream in = (new URL("www.google.com").openStream()); 
    } catch (Exception e) { 
     e.getMessage(); 
    } 
    Gallery ga = (Gallery) findViewById(R.id.Gallery01); 
    ga.setAdapter(new ImageAdapter(this)); 


} 

public class ImageAdapter extends BaseAdapter { 

    private Context ctx; 
    int imageBackground; 

    public ImageAdapter(Context c) { 
     ctx = c; 
     TypedArray ta = obtainStyledAttributes(R.styleable.Gallery1); 
     imageBackground = ta.getResourceId(
       R.styleable.Gallery1_android_galleryItemBackground, 1); 
     ta.recycle(); 
    } 

    @Override 
    public int getCount() { 

     return imageLocation.length; 
    } 

    @Override 
    public Object getItem(int arg0) { 

     return arg0; 
    } 

    @Override 
    public long getItemId(int arg0) { 

     return arg0; 
    } 

    @Override 
    public View getView(int arg0, View arg1, ViewGroup arg2) { 
     ImageView iv = new ImageView(ctx); 

     iv.setImageBitmap(getBitmapFromURL(imageLocation[arg0])); 
     iv.setScaleType(ImageView.ScaleType.FIT_XY); 
     iv.setLayoutParams(new Gallery.LayoutParams(150, 120)); 
     iv.setBackgroundResource(imageBackground); 
     return iv; 
    } 
} 

public static Bitmap getBitmapFromURL(String src) { 
     try { 
      URL url = new URL(src); 
      HttpURLConnection connection = (HttpURLConnection) url 
        .openConnection(); 
      connection.setDoInput(true); 
      connection.connect(); 
      InputStream input = connection.getInputStream(); 
      Bitmap myBitmap = BitmapFactory.decodeStream(input); 
      return myBitmap; 
     } catch (IOException e) { 
      e.printStackTrace(); 
      return null; 
     } 
    } 

}

+0

Not Worked "iv.setImageResource"에서 여전히 같은 오류가 표시됩니다. –

+0

죄송합니다. 내 대답을 편집 중입니다. –

+0

iv.setImageBitmap을 사용하십시오. –

관련 문제