2013-08-23 2 views
1

В моем проекте listview содержит viewpager для загрузки изображений. Фактически этот список просматривается в фрагменте, который использует скользящее меню.Listview Содержит Viewpager внутри SlidingMenu -Android

Здесь проблема заключается в том, что макет не загружается и не показывает никаких ошибок.

Я использовал pagecontainer как это S: //gist.github.com/devunwired/8cbe094bb7a783e37ad1

Мой класс Adapter

public class SampleAdapter extends BaseAdapter { 

private Activity activity; 
private String[] titleData; 
private int[] imageData; 
private ArrayList<Request> List; 
PagerContainer mContainer; 
MyPagerAdapter adapter; 

public SampleAdapter(Activity a, ArrayList<Request> list) { 
    activity = a; 
    List = new ArrayList<Request>(); 
    List = list; 


} 

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

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

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

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 

    LayoutInflater inflater = (LayoutInflater) activity.getSystemService(
        Context.LAYOUT_INFLATER_SERVICE); 
    View rowView = inflater.inflate(R.layout.cus_hub_list, parent, false); 

    mContainer = (PagerContainer) rowView.findViewById(R.id.pager_container); 

    ViewPager pager = mContainer.getViewPager(); 


    adapter = new MyPagerAdapter(); 


    pager.setAdapter(adapter); 


    pager.setOffscreenPageLimit(adapter.getCount()); 
    pager.setPageMargin(15); 
    pager.setClipChildren(false); 

    return rowView; 
} 

public class MyPagerAdapter extends PagerAdapter { 

    @Override 
    public Object instantiateItem(ViewGroup container, int position) 
    { 
     TextView view = new TextView(activity); 
     view.setText("Item " + position); 
     view.setGravity(Gravity.CENTER); 
     view.setBackgroundColor(Color.argb(255, position * 50, 
       position * 10, position * 50)); 

     container.addView(view); 
     return view; 
    } 

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

    @Override 
    public int getCount() { 
     return 5; 
    } 

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

    @Override 
    public int getItemPosition(Object object) { 
      return POSITION_NONE; 
     } 
} 

}

Но проблема ListView не показывает какой-либо список Предметы .

Может ли кто-нибудь выяснить проблему.

Спасибо заранее.

+0

Мой список зрения все показывает, как пустой :( –

ответ

0

В вашем пейджера, вместо wrap_content, указать высоту в высоту dp.This может поместиться в соответствии с экрана

+0

@GauravArora Если этот ответ поможет, пожалуйста, примите этот ответ. –

0

Ваш SampleAdapter, имея список элементов, которыми он управляет, никогда ничего не делает с ними в методе getView. Можно ожидать, что ничего не появится!

Я хотел бы предложить вам использовать ViewHolder как объяснено in this question заполнить все элементы, которые вы хотите показать, а затем визуализировать их с помощью параметра метода getViewconvertView.

Пожалуйста, обратите внимание this tutorial для введения на Holder Pattern и как установить содержимое List для View.

+0

Но GetCount() содержит значение 2 как размер.Таким образом, он должен отображать два элемента списка, не так ли? –

+0

Ваш список может быть заполнен, но где вы расскажете, как их показать? Я добавил ссылку на учебник для своего ответа. – Eric

+0

Но это не показывает никакой разницы ... Все еще не отображаются какие-либо листинги –

Смежные вопросы