☆Button衍生控件:ToggleButton, switch开关.
ImageView:加载网络图片
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
public class ImageViewMainActivity extends AppCompatActivity {
private ImageView mIv4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_view_main);
mIv4 = findViewById(R.id.Iv_4);
// Glide从github上下载; with(this)此类; load(...)网上图片链接,into到所在的ImageView中,即mIv
Glide.with(this).load("https://t10.baidu.com/it/u=4014384843,874945944&fm=173&s=B98AB55F4CB166944199502503007064&w=640&h=1088&img.JPG").into(mIv4);
}
}
控件中的属性:
(1)属性src显示的图片;
(2)scaleType:填充方式常用的三个:
①fixXY 填保持宽高比满空间的X和Y, 但可能会导致宽高比发生变化;
②fitCenter 保持宽高比缩放,直到完全显示;
③centerCrop 根据宽高比缩放,直至完全覆盖控件,并将多余的裁剪
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background_5"
android:padding="20dp">
<ImageView
android:id="@+id/Iv_1"
android:layout_width="300dp"
android:layout_height="150dp"
android:src="@drawable/background_4"
android:scaleType="fitXY"/>
<ImageView
android:id="@+id/Iv_2"
android:layout_width="300dp"
android:layout_height="150dp"
android:layout_below="@id/Iv_1"
android:src="@drawable/background_4"
android:scaleType="fitCenter"/>
<ImageView
android:id="@+id/Iv_3"
android:layout_width="300dp"
android:layout_height="150dp"
android:layout_below="@id/Iv_2"
android:src="@drawable/background_4"
android:scaleType="centerCrop"/>
<ImageView
android:id="@+id/Iv_4"
android:layout_width="300dp"
android:layout_height="200dp"
android:layout_below="@id/Iv_3"
android:background="#888888"/>
</RelativeLayout>
Github的Glibe的链接根据使用说明,有几种方式可以使用.由于Android Studio可以通过bulid.gradle配置,所以选择此方式.
Step1:将repositories所有copy到
repositories {
google()
mavenCentral()
}
dependencies {
implementation 'com.github.bumptech.glide:glide:4.12.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
}
Step2: 将implementation 'com.github.bumptech.glide:glide:4.12.0'
和annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
添加到bulid.gradle对应的dependencies中.如上图所示.
Step3:在**AndroidManifest.xml**
中**<uses-permission android:name="android.permission.INTERNET"/>**
Step4: 点击工具栏中[Sync Project with Gradle Files]自动适配.
注意:
由于在build.gradle文件中适配可能会和setting.gadle产生冲突,所以会导致在适配的过程中报错.
若出现这种情况.
setting.gadle的的内容:
// setting.gradle中的repositories设置和bulid.gradle(:app)的repositories设置有冲突;
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
jcenter() // Warning: this repository is going to shut down soon
}
}
rootProject.name = "TextView_test"
include ':app'
解决办法将其中 dependencyResolutionManagement部分全部删除即可解决.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
jcenter() // Warning: this repository is going to shut down soon
}
}