HorizontalScrollView в PopupWindow

я пытаюсь создать popupWindow с предварительным просмотром, где пользователь может видеть изображения из галереи. Но первое и второе изображения скрыты, а в конце scrollView пустое место, как на скриншоте.

введите здесь описание изображения

Я пытаюсь использовать
layout.addView(imageView);

private void showAttachmentPopup() {
    LayoutInflater layoutInflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View popupView = layoutInflater.inflate(R.layout.attachemnts_file_popup, null, false);
    PopupWindow pw = new PopupWindow(popupView, LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT, true);
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
    params.addRule(RelativeLayout.BELOW, findViewById(R.id.layout_sent).getId());
    popupView.setLayoutParams(params);
    LinearLayout layout_attachment = (LinearLayout) popupView.findViewById(R.id.layout_attachment);
        RoundedImageView roundedImageView = new RoundedImageView(this);
        LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, Gravity.CENTER);
        lp.setMargins(5, 5, 5, 5);
        roundedImageView.setLayoutParams(lp);
        roundedImageView.setScaleType(RoundedImageView.ScaleType.FIT_XY);
        roundedImageView.setImageBitmap(bitmap);
        layout_attachment.addView(roundedImageView);

    pw.setOutsideTouchable(true);
    pw.setBackgroundDrawable(new BitmapDrawable());
    pw.showAtLocation(mBtnAttach, Gravity.BOTTOM | Gravity.LEFT, locateView(mBtnAttach).bottom, locateView(mBtnAttach).right);
}

И если я попытаюсь добавить это растровое изображение несколько раз, эта ошибка произойдет. В моем xml сюда входят только HorizontalScrollView и LinearLayout


person Kostya Rudenko    schedule 27.06.2012    source источник
comment
не могли бы вы опубликовать часть своего кода.   -  person Aqif Hamid    schedule 27.06.2012


Ответы (1)


У меня (наверное) была такая же проблема, выглядел так же.

Что мне помогло, так это установить AdjustViewBounds:

roundedImageView.setAdjustViewBounds(true);

Надеюсь, это подходит для вашего случая!

person Ostkontentitan    schedule 01.08.2012