亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

android橫向滾動圖片怎么實現

小億
110
2024-01-18 13:35:25
欄目: 編程語言

要實現Android中的橫向滾動圖片,可以使用RecyclerView或ViewPager來實現。

  1. 使用RecyclerView:

首先,在你的布局文件中添加一個RecyclerView組件:

<androidx.recyclerview.widget.RecyclerView
    android:id="@+id/recyclerView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" />

然后,在你的Activity或Fragment中,找到RecyclerView,并設置LayoutManager和Adapter:

RecyclerView recyclerView = findViewById(R.id.recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false));
recyclerView.setAdapter(new ImageAdapter(imageList));

其中,ImageAdapter是一個自定義的RecyclerView.Adapter實現類,用于綁定數據和創建視圖:

public class ImageAdapter extends RecyclerView.Adapter<ImageAdapter.ImageViewHolder> {
    private List<Drawable> imageList;

    public ImageAdapter(List<Drawable> imageList) {
        this.imageList = imageList;
    }

    @NonNull
    @Override
    public ImageViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_image, parent, false);
        return new ImageViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull ImageViewHolder holder, int position) {
        Drawable image = imageList.get(position);
        holder.imageView.setImageDrawable(image);
    }

    @Override
    public int getItemCount() {
        return imageList.size();
    }

    public static class ImageViewHolder extends RecyclerView.ViewHolder {
        ImageView imageView;

        public ImageViewHolder(@NonNull View itemView) {
            super(itemView);
            imageView = itemView.findViewById(R.id.imageView);
        }
    }
}

其中,item_image是一個自定義的布局文件,用于顯示單個圖片的視圖。

  1. 使用ViewPager:

首先,在你的布局文件中添加一個ViewPager組件:

<androidx.viewpager.widget.ViewPager
    android:id="@+id/viewPager"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

然后,在你的Activity或Fragment中,找到ViewPager,并設置PagerAdapter:

ViewPager viewPager = findViewById(R.id.viewPager);
viewPager.setAdapter(new ImagePagerAdapter(imageList));

其中,ImagePagerAdapter是一個自定義的PagerAdapter實現類,用于綁定數據和創建視圖:

public class ImagePagerAdapter extends PagerAdapter {
    private List<Drawable> imageList;

    public ImagePagerAdapter(List<Drawable> imageList) {
        this.imageList = imageList;
    }

    @Override
    public int getCount() {
        return imageList.size();
    }

    @Override
    public boolean isViewFromObject(@NonNull View view, @NonNull Object object) {
        return view == object;
    }

    @NonNull
    @Override
    public Object instantiateItem(@NonNull ViewGroup container, int position) {
        ImageView imageView = new ImageView(container.getContext());
        imageView.setImageDrawable(imageList.get(position));
        container.addView(imageView);
        return imageView;
    }

    @Override
    public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
        container.removeView((View) object);
    }
}

這樣,就可以實現Android中的橫向滾動圖片了。

0
石嘴山市| 库尔勒市| 福鼎市| 墨竹工卡县| 泸溪县| 阜宁县| 河间市| 梓潼县| 嘉定区| 潜江市| 张掖市| 蒙城县| 舞阳县| 乐昌市| 华蓥市| 安宁市| 天柱县| 石阡县| 安西县| 海兴县| 兴化市| 泰州市| 尼玛县| 威远县| 鹰潭市| 辽阳县| 镇宁| 五华县| 海阳市| 句容市| 徐水县| 子长县| 栾川县| 合阳县| 平度市| 土默特左旗| 彭州市| 新巴尔虎左旗| 马公市| 泗洪县| 宣汉县|