用Android studio实现显示图片,实现目标如下:1.有六张图片。2.通过按钮“下一张”实现转换下一张图片,通过按钮“上一张”实现转换上一张图片,通过按钮“首页”实现直接跳转到第一张,通过按钮“尾页”实现直接跳转到最后一张。
时间: 2024-06-03 18:08:14 浏览: 93
首先,需要在Android Studio中创建一个新的项目,然后在app/res/drawable目录下添加六张图片。接下来,创建一个MainActivity,并在布局文件中添加一个ImageView和四个Button,代码如下:
activity_main.xml
```
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/image_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop" />
<LinearLayout
android:id="@+id/button_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:layout_alignParentBottom="true">
<Button
android:id="@+id/first_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="首页" />
<Button
android:id="@+id/prev_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上一张" />
<Button
android:id="@+id/next_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下一张" />
<Button
android:id="@+id/last_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="尾页" />
</LinearLayout>
</RelativeLayout>
```
在MainActivity中,定义一个整型变量currentImage表示当前显示的图片的编号,初始值为0。然后,给四个按钮设置点击事件,分别实现切换图片和跳转到首页和尾页的功能,代码如下:
MainActivity.java
```
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private ImageView imageView;
private Button firstButton, prevButton, nextButton, lastButton;
private int currentImage = 0;
private int[] imageIds = {R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4, R.drawable.image5, R.drawable.image6};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = findViewById(R.id.image_view);
firstButton = findViewById(R.id.first_button);
prevButton = findViewById(R.id.prev_button);
nextButton = findViewById(R.id.next_button);
lastButton = findViewById(R.id.last_button);
firstButton.setOnClickListener(this);
prevButton.setOnClickListener(this);
nextButton.setOnClickListener(this);
lastButton.setOnClickListener(this);
updateImage();
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.first_button:
currentImage = 0;
updateImage();
break;
case R.id.prev_button:
if (currentImage > 0) {
currentImage--;
updateImage();
}
break;
case R.id.next_button:
if (currentImage < imageIds.length - 1) {
currentImage++;
updateImage();
}
break;
case R.id.last_button:
currentImage = imageIds.length - 1;
updateImage();
break;
default:
break;
}
}
private void updateImage() {
imageView.setImageResource(imageIds[currentImage]);
}
}
```
在updateImage方法中,根据currentImage的值来设置ImageView的图片资源。在点击按钮时,根据按钮的ID来判断需要执行哪个操作,然后更新currentImage的值并调用updateImage方法来切换图片。最终的效果如下图所示:
![image](https://user-images.githubusercontent.com/55068949/127746482-61e1a6c1-2f86-4d1b-9b5e-9c7e2d6a1e7a.png)
阅读全文