Ich habe eine Listenansicht mit 20 Zeilen und ich möchte einen Ansichtspager als jede Zeile in einer Listenansicht einrichten. Da die Elemente, die in meiner Zeile der Listenansicht angezeigt werden, eins oder mehr als eins sein können, und ich die Zeilenelemente der Listenansicht mithilfe eines Ansichtspagers anzeigen möchte.Pager als Listenansicht anzeigen Row Item
Dafür ich den folgenden Code verwenden:
benutzerdefiniertes Layout, die in der Listenansicht Zeile (als Pager Artikel)
<?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" />
Haupt gezeigt werden soll Listenansicht Benutzerdefiniertes Zeilenelement mit Sichtpager
<?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 Klasse
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);
}
}
Listenansicht Adapter GET VIEW METHODE
@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;
}
Ich erhalte keinen Fehler und die Ansicht, die nach dem Ausführen es gerendert wird immer leer.
Ich bin mit dem gleichen Problem konfrontiert .. können Sie bitte sagen, wenn Sie es beheben? – Coderji
Ja, ich kann Ihnen helfen, zeigen Sie mir Ihren Code, wo Sie das gleiche bekommen. Ich würde vorschlagen, eine Frage mit Ihrem Code zu stellen und ich werde es überprüfen und Ihnen antworten. –
bitte hier ist meine Frage http://stackoverflow.com/questions/20774098/viewpager-within-listview-row-item – Coderji