在经过简单的学习后,通过学习B站大佬【极客开发者】的视频后,跟着写了这样的小相册,话不多说,上代码:
MainActivity.java类:
package com.zzx;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private ImageView mImage;
private TextView mText;
private int num;
private int index;
private String[] title;
private int[] images;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//初始化控件
initView();
//初始化数据
initDate();
}
private void initDate() {
//准备数据
title = new String[]{"第1张图片", "第2张图片", "第3张图片", "第4张图片", "第5张图片", "第6张图片", "第7张图片", "第8张图片", "第9张图片"};
images = new int[]{R.drawable.a, R.drawable.b, R.drawable.c, R.drawable.d, R.drawable.e, R.drawable.f, R.drawable.g, R.drawable.h, R.drawable.i};
//设置默认数据
mImage.setImageResource(images[0]);
mText.setText(title[0]);
//数据
num = title.length;//图片张数
index = 0;//当前显示图片的索引
}
private void initView() {
mImage = findViewById(R.id.iv_show);
mText = findViewById(R.id.tv_show);
findViewById(R.id.btn_previous).setOnClickListener(this);
findViewById(R.id.btn_next).setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_previous:
//上一张
if (index == 0) {
index = title.length - 1;
}else {
index--;
}
break;
case R.id.btn_next:
//下一张
if(index==(title.length-1)){
index=0;
}else{
index++;
}
break;
}
updateImagesAndTitle();
}
private void updateImagesAndTitle() {
mImage.setImageResource(images[index]);
mText.setText(title[index]);
}
}
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<ImageView
android:id="@+id/iv_show"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_weight="1"
android:background="@android:color/background_dark"/>
<TextView
android:id="@+id/tv_show"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="10dp"
android:text="图片信息"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center">
<Button
android:id="@+id/btn_previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上一张"/>
<Button
android:id="@+id/btn_next"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下一张"/>
</LinearLayout>
</LinearLayout><!-- 线性布局-->
其中,图片可以是自己放进去的图片。
图片格式最好用.png,同时命名不要以数字方式命名。