Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Fb配置文件图片没有提供更好的质量_Android - Fatal编程技术网

Android Fb配置文件图片没有提供更好的质量

Android Fb配置文件图片没有提供更好的质量,android,Android,我使用了下面的代码,可以得到图像,但当我试图把它放在布局背景(线性布局),图像质量下降,它显示了模糊的图像 URL img_value = null; try { img_value = new URL("http://graph.facebook.com/"+userId+"/picture?type=large"); } catch (MalformedURLException e) { // TODO Auto-generated cat

我使用了下面的代码,可以得到图像,但当我试图把它放在布局背景(线性布局),图像质量下降,它显示了模糊的图像

URL img_value = null;

    try {
        img_value = new URL("http://graph.facebook.com/"+userId+"/picture?type=large");

    } catch (MalformedURLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    Bitmap mIcon1 = null;
    try {
        BitmapFactory.Options opt=new BitmapFactory.Options(); 
        opt.inSampleSize=1;
        // mIcon1 = BitmapFactory.decodeFile(pathoffile,opt);

        mIcon1 = BitmapFactory.decodeStream(img_value.openConnection().getInputStream(),null,opt);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    ll=(LinearLayout) findViewById(R.id.ll);
    BitmapDrawable background = new BitmapDrawable(mIcon1);
    ll.setBackgroundDrawable(background);

看起来您正试图将该图像设置为线性布局的背景。我将假设这个背景大概是手机屏幕的大小

我刚刚试过facebook的URL,我得到的图片大小是180x195

考虑到我所知道的最小的安卓屏幕是240x320,这个图像必须在每一部安卓手机上放大。这将导致图像看起来模糊,因为图像的分辨率远低于Android屏幕


我建议您为您的背景找到更高分辨率的图像。

我在这里使用graph API,它有一些限制,例如图像大小可以是小的、大的、中等的。除了graph API调用之外,还有其他方法可以实现吗。不过,你还可以和其他人一起玩。例如,照片通常比较大,但要想得到你想要的照片就更难了。