android studio arraylist,Android Studio显示元素的Arraylist上ImageView

我想显示图像存储在一个arraylist到一个imageview.I使用picasso库来存储links.When我按下按钮,我希望图片更改为接下来image.I正在使用的循环,但我只得到了最后element.Here是代码:Android Studio显示元素的Arraylist上ImageView

ImageView image1;

Button bNext,

ArrayListll=new ArrayList<>();

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_fwtografies);

image1=(ImageView)findViewById(R.id.image1);

bNext=(Button)findViewById(R.id.bNext);

ll.add("http://i.imgur.com/QoUeA2I.jpg");

ll.add("http://i.imgur.com/21szRz9.jpg");

ll.add("https://upload.wikimedia.org/wikipedia/en/e/ec/Clip_Poster.jpg");

bBack.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

Intent fwtografiesActivityIntent = new Intent(Fwtografies.this,MainActivity.class);

Fwtografies.this.startActivity(fwtografiesActivityIntent);

}

});

bNext.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

for(int i=0;i

sp(ll.get(i),image1);

}

}

});

bPrevius.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

viewFlipper.showPrevious();

}

});

sp("http://i.imgur.com/gijIKJO.jpg",image1);

//sp("http://i.imgur.com/QoUeA2I.jpg",image2);

//sp("http://i.imgur.com/21szRz9.jpg",image3);

}

public void sp(String a,ImageView b){

Picasso

.with(getApplicationContext())

.load(a)

.into(b);

}}

要实现在 Android Studio 中插入多张图片并随机显示,你可以使用 RecyclerView 和 GridLayoutManager 来展示图片列表。下面是一个简单的实现示例: 首先,在你的布局文件中添加一个 RecyclerView: ```xml <androidx.recyclerview.widget.RecyclerView android:id="@+id/image_list" android:layout_width="match_parent" android:layout_height="match_parent"/> ``` 然后,在你的 Activity 或 Fragment 中,你可以创建一个包含图片资源 ID 和描述信息的 ImageModel 类: ```java public class ImageModel { private int imageId; private String description; public ImageModel(int imageId, String description) { this.imageId = imageId; this.description = description; } public int getImageId() { return imageId; } public String getDescription() { return description; } } ``` 接下来,你需要创建一个 RecyclerView.Adapter,用于填充 RecyclerView。 ```java public class ImageListAdapter extends RecyclerView.Adapter<ImageListAdapter.ViewHolder> { private List<ImageModel> imageList; public ImageListAdapter(List<ImageModel> imageList) { this.imageList = imageList; } @NonNull @Override public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()) .inflate(R.layout.list_item_image, parent, false); return new ViewHolder(view); } @Override public void onBindViewHolder(@NonNull ViewHolder holder, int position) { ImageModel imageModel = imageList.get(position); holder.imageView.setImageResource(imageModel.getImageId()); holder.descriptionView.setText(imageModel.getDescription()); } @Override public int getItemCount() { return imageList.size(); } public class ViewHolder extends RecyclerView.ViewHolder { public ImageView imageView; public TextView descriptionView; public ViewHolder(@NonNull View itemView) { super(itemView); imageView = itemView.findViewById(R.id.image_view); descriptionView = itemView.findViewById(R.id.description_view); } } } ``` 接下来,在你的 Activity 或 Fragment 中,你可以创建一个包含多张图片的 ImageList,并创建一个 ImageListAdapter: ```java public class MainActivity extends AppCompatActivity { private RecyclerView imageList; private ImageListAdapter imageListAdapter; private static final int[] IMAGES = { R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4, R.drawable.image5 }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); List<ImageModel> imageModelList = new ArrayList<>(); for (int imageId : IMAGES) { imageModelList.add(new ImageModel(imageId, "Image " + (imageModelList.size() + 1))); } imageList = findViewById(R.id.image_list); imageList.setLayoutManager(new GridLayoutManager(this, 2)); imageListAdapter = new ImageListAdapter(imageModelList); imageList.setAdapter(imageListAdapter); Random random = new Random(); int position = random.nextInt(imageModelList.size()); imageList.scrollToPosition(position); } } ``` 在这个示例中,我们创建了一个包含五张图片的 ImageList,然后创建一个 GridLayoutManager 来展示图片列表。我们还使用了随机数生成器来随机显示一张图片。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值