2016-01-17 4 views
2

У меня есть фрагмент, который содержит ListView, и несколько изображений (7-10) смещаются при каждом запуске фрагмента.Добавить Zoom in/List to ListView изображений?

Я пробовал использовать различные библиотеки для масштабирования цели, но ListView не будет отображаться, как и тогда мне придется заменить ImageView с библиотекой, определенной ImageView

Как я могу добавить увеличения/уменьшения масштаба для этих изображений?

EDIT: Я хочу добавить увеличение/уменьшение к ListView, которые содержат различное количество изображений при каждой загрузке, как мой вопрос.

EDIT 2: Это getview метод моего Custom Adapter. Как мне добавить PhotoViewAttacher?

public View getView(int position, View convertView, ViewGroup parent) { 
    View iv = convertView; 
    ViewHolder holder = null; 

    if (iv == null) { 
     LayoutInflater inflater = ((Activity) context).getLayoutInflater(); 
     iv = inflater.inflate(layoutResourceId, parent, false); 
     holder = new ViewHolder(); 

     holder.image = (ImageView) iv.findViewById(R.id.imagview); 
     iv.setTag(holder); 
    } else { 
     holder = (ViewHolder) iv.getTag(); 
    } 

    Picasso.with(context) 
      .load((Integer) data.get(position)) 
      .resize(999, 720) 
      .onlyScaleDown() 
      .centerInside() 
      .into(holder.image); 

    return iv; 
} 

static class ViewHolder { 
    ImageView image; 
    PhotoViewAttacher mAttacher; 
} 

}

+0

Возможный дубликат [Как реализовать эффект масштабирования для просмотра изображений в android?] (Http://stackoverflow.com/questions/8399296/how-to-implement-zoom-effect-for-image-view-in- android) – Rami

+0

@Rami Я написал, что мои изображения находятся в 'ListView', и если я использую lib (как описано в ответе на этот вопрос) для масштабирования, он не будет загружать' ListView', libs i cam through для один «ImageViews». – Max

+0

можете ли вы добавить код с помощью метода масштабирования, который вы внедрили, чтобы мы могли попытаться выяснить, что случилось? –

ответ

1

Это, как я сделал его работу

После импорта PhotoView

В файл макета (если вы используете la Yout):

<uk.co.senab.photoview.PhotoView 
    android:id="@+id/your_photo_view" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    ... /> 

И адаптер

PhotoView photoView = (PhotoView) findViewById(R.id.your_photo_view); 

Picasso.with(context) 
    .load(file) 
    ... 
    .into(photoView); 

Спасибо всем за ваше время.

+0

+1 для хорошего qtn ..- 1 для плохих ответов. Пожалуйста, напишите ответ на эту ссылку .. эта ссылка может быть недоступна в будущем. –

+1

@ RanjithKumar Мой плохой я его обновил – Max

+0

отменить мой down vote.where is uk.co.senab.photoview.PhotoView ссылку библиотеки? –

0

Вместо того, чтобы просто ImageView в getView элемент списка BaseAdapter «s добавить TouchImageView