Android的,毕加索。没有从网址加载图片

时间:2014-12-07 08:19:35

标签: android image picasso

我刚开始使用Picasso下载,存储和检索图像,但我在第一步就陷入困境。 我写了最简单的代码,但它没有加载任何东西! 这是代码:

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button b = (Button) findViewById(R.id.button1);
    final ImageView imageView = (ImageView) findViewById(R.id.imageView1);
    b.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Picasso.with(getApplicationContext()).load("http://www.farsnews.com/shares/img/PLogo.jpg").into(imageView);
        }
    });
}

,布局为:

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" 
android:layout_gravity="center"
android:gravity="center">

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:src="@drawable/ic_launcher"
    tools:ignore="ContentDescription"/>

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/imageView1"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="26dp"
    android:text="Button" />

那么,为什么它不起作用?

使用Picasso lib下载,存储和检索图像真的是一个不错的选择吗?

2 个答案:

答案 0 :(得分:31)

尝试删除此行:

android:src="@drawable/ic_launcher"

编辑:忘记互联网权限会导致毕加索失败!

<uses-permission android:name="android.permission.INTERNET" />

答案 1 :(得分:4)

Picasso.with(this).load("http://webneel.com/wallpaper/sites/default/files/images/04-2013/island-beach-scenery-wallpaper.jpg").placeholder(R.mipmap.ic_launcher).fit().into(imageView, new Callback() { 
    @Override public void onSuccess() {} 
    @Override public void onError() {}
});