2013-03-12 32 views
-1

我想将缩略图链接指向网址。这里的代码我目前正试图:如何将网址更改为缩略图

public class MainActivity extends ListActivity { 

ImageView imageView; 

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

    init(); 
} 

private void init() { 
    imageView = (ImageView)findViewById(R.id.imageView1); 

    ArrayList<String> videoLinks = new ArrayList<String>(); 
    String links1 = "http://www.tools4movies.com/dvd_catalyst_profile_samples/Harold Kumar 3 Christmas bionic.mp4"; 

    String links2 = "http://www.tools4movies.com/dvd_catalyst_profile_samples/The Amazing Spiderman bionic.mp4"; 

    String links3 = "http://www.tools4movies.com/dvd_catalyst_profile_samples/Twilight 4 Breaking Dawn bionic.mp4"; 
    String links4 = "http://www.tools4movies.com/dvd_catalyst_profile_samples/Harold Kumar 3 Christmas bionic fast.mp4"; 

    String links5 = "http://www.tools4movies.com/dvd_catalyst_profile_samples/The Amazing Spiderman bionic fast.mp4"; 

    videoLinks.add(links1); 
    videoLinks.add(links2); 
    videoLinks.add(links3); 
    videoLinks.add(links4); 
    videoLinks.add(links5); 


    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, videoLinks); 
    setListAdapter(adapter); 
    adapter.notifyDataSetChanged(); 

    Bitmap bm = ThumbnailUtils.createVideoThumbnail(links1, Thumbnails.MICRO_KIND); 
    imageView.setImageBitmap(bm); 
} 



} 
+0

首先阅读您正在使用的类和方法的文档 – njzk2 2013-03-12 13:05:14

+0

以获取缩略图 – 2013-03-12 13:06:03

回答

1

你把URL字符串作为ThumbnailUtils.createVideoThumbnail第一个参数值()。

但是,该文档指出该字符串应该是文件路径,而不是URL。

这个怎么样?

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; 
    } 
} 

然后像这样设置它。

Bitmap bm = getBitmapFromURL(links1.replace(".mp4", ".jpg").toLowerCase()); 
imageView.setImageBitmap(bm); 

不要忘记把用户权限的网络放在你的清单中。

尽管你应该把它放在一个AsyncTask中。连接到URL时,您不希望UI冻结。

编辑:

没关系检查它。你可以得到JPG文件。