Ho una vista elenco con 20 righe e voglio impostare un cercapersone come ogni riga in una vista elenco. Poiché gli elementi che entrano nella mia fila della vista elenco possono uno o più di uno, e voglio mostrare gli elementi della riga della vista elenco usando un pager di visualizzazione.Visualizza cercapersone come lista Visualizza riga articolo
Per questo sto usando il seguente codice:
layout personalizzato che deve essere indicato nella riga vista elenco (come la voce di cercapersone)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/inner_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal" >
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6.0dip"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="Example Value"
android:textAppearance="?android:textAppearanceMedium" />
principale Visualizza elenco Oggetto riga personalizzato con View Pager
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<android.support.v4.view.ViewPager
android:id="@+id/mypager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
MyPagerAdapter Classe
public class MyPagerAdapter extends PagerAdapter {
private Context context;
public MyPagerAdapter(Context context) {
this.context = context;
}
@Override
public int getCount() {
return 4;
}
@Override
public Object instantiateItem(View container, int position) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout view = inflater.inflate(R.layout.inner_layout_file, null);
((ViewPager) container).addView(view, position);
return view;
}
@Override
public boolean isViewFromObject(View view, Object obj) {
return view == ((View) obj);
}
@Override
public void destroyItem(View container, int position, Object object) {
// TODO Auto-generated method stub
((ViewPager) container).removeView((View) object);
}
}
elenco Visualizza adattatore GET vista del metodo di
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.horizontal_list_item, null,false);
MyPagerAdapter adapter = new MyPagerAdapter(context);
ViewPager myPager = (ViewPager) convertView.findViewById(R.id.mypager);
myPager.setAdapter(adapter);
myPager.setCurrentItem(0);
return convertView;
}
sto ottenendo alcun errore e la vista che è reso dopo l'esecuzione è sempre vuota.
Sto affrontando lo stesso problema .. puoi dirci se lo aggiusti? – Coderji
Sì, posso aiutarti, mostrami il tuo codice dove stai ottenendo lo stesso. Vorrei suggerire di pubblicare una domanda con il tuo codice ur e la esaminerò e ti risponderò. –
per favore ecco la mia domanda http://stackoverflow.com/questions/20774098/viewpager-within-listview-row-item – Coderji