2016-07-14 5 views
0

Ich mache gerade eine Anwendung, die eine listView haben soll, die eine textView enthält und unter der textView soll es eine imageView haben, die viele Bilder enthält, aber dass ich nur ein Bild auf einmal sehen kann. Ich möchte in der Lage sein, auf dem imageView zu wischen, so dass ich von einem Bild zu einem anderen wechseln kann, ohne die Aktivität zu verlassen. Gibt es eine Möglichkeit, eine ViewPager wie in https://developer.android.com/training/animation/screen-slide.html zu sehen, aber haben Sie es in der listView oder etwas ähnliches, um dies zu erreichen? Falls es hilfreich ist, habe ich meinen benutzerdefinierten Adapter hinzugefügt, der momentan nur den Text und ein Bild unterstützt.Gibt es eine Möglichkeit, einen ViewPager in eine ListView einzufügen, um von einem Bild zum anderen zu wechseln?

public class MyAdapter extends BaseAdapter { 
    private Context mContext; 
    private List<Bean> mList; 
    private PopupWindow popUpWindow; 
private LayoutInflater inflater; 

    public MyAdapter(Context context,List<Bean> list){ 
     mContext=context; 
     mList=list; 


} 

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

@Override 
public Object getItem(int position) { 
    return mList.get(position); 
} 

@Override 
public long getItemId(int position) { 
    return position; 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    ViewHolder holder; 
    //use convertView recycle 
    if(convertView==null){ 
     holder=new ViewHolder(); 
     convertView = LayoutInflater.from(mContext).inflate(R.layout.content_orders, parent, false); 
     holder.textView= (TextView) convertView.findViewById(R.id.textView2); 
     holder.imageView= (ImageView) convertView.findViewById(R.id.imageView2); 
     holder.information= (Button) convertView.findViewById(R.id.button5); 
     convertView.setTag(holder); 
    }else{ 
     holder = (ViewHolder) convertView.getTag(); 
    } 

    //set text and url 
    final View finalConvertView = convertView; 
    holder.information.setOnClickListener(new View.OnClickListener() { 



     @Override 
     public void onClick(View v) { 
      inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      ViewGroup container = (ViewGroup) inflater.inflate(R.layout.information_popup, null); 
      popUpWindow = new PopupWindow(container, 800,400,true); 
      popUpWindow.showAtLocation(finalConvertView.findViewById(R.id.orders), Gravity.CENTER, 0,0); 

      container.setOnTouchListener(new View.OnTouchListener() { 
       @Override 
       public boolean onTouch(View view, MotionEvent motionEvent) { 
        popUpWindow.dismiss(); 
        return true; 
       } 
      }); 
     } 
    }); 

    holder.textView.setText(mList.get(position).getText()); 
    Picasso.with(mContext).load(mList.get(position).getUrl()).resize(500,500).into(holder.imageView); 

    return convertView; 
} 

class ViewHolder{ 
    TextView textView; 
    ImageView imageView; 
    Button information; 
    Button close; 

} 
} 

Antwort

0

Ich landete nicht in der Lage, herauszufinden, wie dies zu tun, um die viewPager, aber ich fand heraus, wie es zu tun, um ein horizontalScrollView verwenden. Hier ist der Link zu der Frage mit der Antwort, die ich gepostet habe.

Adding a Horizontal Scroll View to a ListView