ImageView和使用第三方库加载网络图片
1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 android:layout_width="match_parent" 3 android:layout_height="match_parent" 4 android:padding="10dp"> 5 6 <ImageView 7 android:id="@+id/imv_1" 8 android:layout_width="400dp" 9 android:layout_height="300dp" 10 android:background="#FF9900" 11 android:src="@drawable/xiuzhi" 12 android:scaleType="centerCrop"/> 13 14 15 16 <ImageView 17 android:id="@+id/imv_2" 18 android:layout_width="400dp" 19 android:layout_height="300dp" 20 android:background="#FF9900" 21 android:scaleType="fitXY" 22 android:layout_below="@id/imv_1" 23 android:layout_marginTop="20dp"/> 24 25 26 RelativeLayout>
关于scaletype详细说明:
使用github作为第三方库加载网络图片,可以使用jar包导入到lib中,也可以使用gradle,我觉得比较方便:
同步后遇到了这样的问题:
此时需要在settingsgradle文件中删去dependencyResolutionManagement一大段,问题解决。
然后在对应图片的Java文件中写类似Glide.with(this).load("http://goo.gl/gEgYUd").into(imageView);这样的语句来加载网络图片:
1 public class ImageViewActivity extends AppCompatActivity { 2 private ImageView imv_2; 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 setContentView(R.layout.activity_image_view); 7 imv_2=findViewById(R.id.imv_2); 8 Glide.with(this).load("https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png").into(imv_2); 9 }//加载网络地址图片 10 }
在手机中可以查看到,但是在电脑的虚拟AVD机中一般是显示不出来的,可以申请网络权限,就可以显示了,需要在AndriodMainfest.xml中申请网络权限,加入如下代码:
1 <uses-permission android:name="android.permission.INTERNET"/> 2
大概这样: