タブレット用プログラムの書き止め

android OS & iPadOS の記録。

基礎。RecyclerView、サムネイルのオフセットスタート&エンド。

2021-10-18 01:55:24 | Android studio 日記

とりあえず、最初と最後の余白を…どうとかという記事を思い出して細工。

【MyAdapter.java】

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {

        if ( iImagePaths != null ) {
            Bitmap bitmap = loadImage(iImagePaths.get(position));
            if (bitmap != null) {
                holder.imageView.setImageBitmap(bitmap);
            }
        }
        if ( iNames != null ) {
            holder.textView.setText(iNames.get(position));
        }

        if ( holder.getAdapterPosition() == 0 ) { // 最初の時
            int le = holder.linearLayout.getPaddingLeft(); // 元々の余白を保存
            int to = holder.linearLayout.getPaddingTop();
            int bo = holder.linearLayout.getPaddingBottom();
            holder.linearLayout.setPadding( le,to,500,bo ); // 余白を再設定
        }
        if ( holder.getAdapterPosition() == ( iImagePaths.size() - 1 ) ) { // 最後の時
            int ri = holder.linearLayout.getPaddingRight();
            int to = holder.linearLayout.getPaddingTop();
            int bo = holder.linearLayout.getPaddingBottom();
            holder.linearLayout.setPadding( 500,to,ri,bo );
        }

        holder.linearLayout.setId( holder.getAdapterPosition() );
        holder.linearLayout.setOnClickListener( new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                listener.onClick(v);
            }
        });
    }

 

これが正しいのか分からないが、デバイス上でパフォーマンスに問題なければOKかな…。