本次要点:
1.首先获取图片
2.将图片添加进集合
3.点击随机生成一张图片
下面直接展示代码:
package com.example.mydeomresourcemanager.slice;
import com.example.mydeomresourcemanager.ResourceTable;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.components.Button;
import ohos.agp.components.Component;
import ohos.agp.components.Image;
import ohos.agp.components.Text;
import ohos.global.resource.NotExistException;
import ohos.global.resource.Resource;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Random;
public class MainAbilitySlice extends AbilitySlice implements Component.ClickedListener {
Button btn;
Image img1;
String[] joker;
ArrayList<Integer> list;
@Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(ResourceTable.Layout_ability_main);
//定义数据或者集合存储图片路径
list = new ArrayList<>();
list.add(ResourceTable.Media_dianzan_active);
list.add(ResourceTable.Media_dianzan);
list.add(ResourceTable.Media_dianzan1);
list.add(ResourceTable.Media_dianza1_acitve);
//获取Image标签展示数据,button标签随机获取一个数据
btn = (Button) findComponentById(ResourceTable.Id_btn1);
img1 = (Image) findComponentById(ResourceTable.Id_img1);
//给btn组件绑定一个点击事件
btn.setClickedListener(this);
}
@Override
public void onActive() {
super.onActive();
}
@Override
public void onForeground(Intent intent) {
super.onForeground(intent);
}
@Override
public void onClick(Component component) {
//随机生成一个保存图片的随机数
Random r=new Random();
int i = r.nextInt(list.size());
int imgList=list.get(i);
//吧获取的随机图片赋值给image组件
img1.setImageAndDecodeBounds(imgList);
}
}
效果如下:
点击前:点击后:
知识点:
1.new ArrayList<>():ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素
2.list.add():集合添加一个数据
3.list.get(i):获取下标i的内容
4.setImageAndDecodeBounds():设置图片的路径
5.list.size():获取集合的大小
以上就是本次所应用到的知识点,点击[Harmonyos随机生成图片.rar-Java文档类资源-CSDN下载]
下载源代码!
分享不易,都观看到这里了,还不点赞收藏嘛!