ViewPager Problem

Panikmeister

Mitglied
Hallöchen,

hab die Fragments nun geschmissen. In meiner MainActivity sind erstmal 3 Grund-Listviews vorhanden, der per Viewpager durchgegangen werden können.

Aus jedem dieser Listviews soll per Klick auf ein Item eine "Detailansicht" dieses Items angezeigt werden (auch als Listview). Nur bin ich mir da mit der Vorgehensweise nicht so ganz sicher...

Ich hätte 6 Listviews, diese aber alle in den Viewpager zu packen, geht nicht, da ich ja über die 3 Detailansichten nur über den ItemKlick zugreifen können soll.

Bei Klick auf ein Detail-Item nen Listener der MainActivity zu starten, der dann ein Listview in ... (wo rein eigentlich? In den Viewpager würde wohl Probleme geben.), ist wohl auch nicht das Gelbe vom Ei.

Der Projektname ist das Ergebnis meines heutigen Frustes :-(

Wäre super, wenn Ihr ein paar Tipps hättet..

Viele Grüße,

Jan



MyActivity
Code:
package jan.****teuch;

import android.content.Context;
import android.os.Parcelable;
import android.support.v7.app.ActionBarActivity;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

import java.util.List;
import java.util.Vector;

import jan.****teuch.Adapter.ListeOverviewAdapter;
import jan.****teuch.Adapter.RezeptOverviewAdapter;
import jan.****teuch.Adapter.VorratOverviewAdapter;
import jan.****teuch.Model.ListeOverviewModel;


public class MyActivity extends ActionBarActivity {

    private Context context;
    private Datasource datasource;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);

        context = this;
        this.datasource = new Datasource(this);

        ListView lvListeOverview = new ListView(context);
        ListView lvRezeptOverview = new ListView(context);
        ListView lvVorratOverview = new ListView(context);
        //ListView lvListe = new ListView(context);
        //ListView lvRezept = new ListView(context);
        //ListView lvVorrat = new ListView(context);

        lvListeOverview.setAdapter(new ListeOverviewAdapter(context, this.datasource.getListeOverviewData()));
        lvRezeptOverview.setAdapter(new RezeptOverviewAdapter(context, this.datasource.getRezeptOverviewData()));
        lvVorratOverview.setAdapter(new VorratOverviewAdapter(context, this.datasource.getVorratOverviewData()));

        Vector<View> pages = new Vector<View>();

        pages.add(lvListeOverview);
        pages.add(lvRezeptOverview);
        pages.add(lvVorratOverview);
        //pages.add(lvListe);
        //pages.add(lvRezept);
        //pages.add(lvVorrat);

        ViewPager vp = (ViewPager) findViewById(R.id.pager);
        CustomPagerAdapter adapter = new CustomPagerAdapter(context,pages);
        vp.setAdapter(adapter);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.my, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    public class CustomPagerAdapter extends PagerAdapter {

        private Context mContext;
        private Vector<View> pages;

        public CustomPagerAdapter(Context context, Vector<View> pages) {
            this.mContext=context;
            this.pages=pages;
        }

        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            View page = pages.get(position);
            container.addView(page);
            return page;
        }

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

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

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

    }

}

ListeOverviewAdapter
Code:
package jan.****teuch.Adapter;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

import java.util.List;
import jan.****teuch.R;

import jan.****teuch.Model.ListeOverviewModel;


public class ListeOverviewAdapter extends ArrayAdapter<ListeOverviewModel> {

    Context context;
    List<ListeOverviewModel> data;

    public ListeOverviewAdapter(Context con, List<ListeOverviewModel> objects) {
        super(con, R.layout.listeoverview_adapter , objects);

        this.context = con;
        this.data = objects;
    }


    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // Get the data item for this position
        ListeOverviewModel ekListe = getItem(position);
        // Check if an existing view is being reused, otherwise inflate the view
        ViewHolder viewHolder;

        if (convertView == null) {

            viewHolder = new ViewHolder();

            convertView = LayoutInflater.from(getContext()).inflate(R.layout.listeoverview_adapter, parent, false);

            viewHolder.tvName = (TextView) convertView.findViewById(R.id.listeOverview_tvName);
            viewHolder.tvProgress = (TextView) convertView.findViewById(R.id.listeOverview_tvProgress);
            convertView.setTag(viewHolder);
        }
        else {
            viewHolder = (ViewHolder) convertView.getTag();
        }

        // Populate the data into the template view using the data object
        viewHolder.tvName.setText(ekListe.getName());
        viewHolder.tvProgress.setText(ekListe.getProgress());
        // Return the completed view to render on screen
        return convertView;
    }

    private static class ViewHolder {

        TextView tvName;
        TextView tvProgress;

    }

}

Activity-Layout
Code:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context=".MyActivity">

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</RelativeLayout>
 

dzim

Top Contributor
So ganz verstehe ich dein Problem gerade nicht. Erst recht mit dem FragmentViewPager ist die Arbeit eigentlich sehr einfach.
Fang doch mal mit dem an, zu erklären, was du eigentlich erreichen möchtest. Die Lernkurve ist gerade für GUI-Einsteiger noch recht steil, das gebe ich zu (auch ich hab anfangs nichts mit den Layouts und so anfangen können, weil mir das Konzept der deklarativen UIs neu war), aber kein Grund auf ein *****euch-Package... o_O
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Android Probleme mit ViewPager? Android & Cross-Platform Mobile Apps 5
J Probleme mit ViewPager und Activity Android & Cross-Platform Mobile Apps 1
B Android Fragen zu ViewPager? Android & Cross-Platform Mobile Apps 0
E Android Fragmentanimation mit ViewPager - Architekturproblem? Android & Cross-Platform Mobile Apps 3
N Viewpager Fragments replace Android & Cross-Platform Mobile Apps 2
W Prüfen, ob App auf Gerät installiert ist Problem S10 Android & Cross-Platform Mobile Apps 11
W In App Purchase Problem? Android & Cross-Platform Mobile Apps 36
W Problem mit Android Studio Android & Cross-Platform Mobile Apps 0
T Android R.string.test+i Problem Android & Cross-Platform Mobile Apps 2
K Android to Pi | Websocket Problem Android & Cross-Platform Mobile Apps 3
N Intent und finish() Problem Android & Cross-Platform Mobile Apps 5
B Android App Programmierung Einsteiger Problem Android & Cross-Platform Mobile Apps 4
emeraldo Android Problem mit Bottomnavmenu Android & Cross-Platform Mobile Apps 10
I Das Problem mit der Tastatur... android:windowSoftInputMode="adjustPan" Android & Cross-Platform Mobile Apps 1
M Android App → Problem mit dem Speichern von einem Bitmap–Objekt. Android & Cross-Platform Mobile Apps 1
A Android Android Studio Emulator Problem Android & Cross-Platform Mobile Apps 1
S Android Studio Bluetooth App Problem Android & Cross-Platform Mobile Apps 6
J TicTacToe Problem bei kontrolle Android & Cross-Platform Mobile Apps 7
J Button array ID Problem Android & Cross-Platform Mobile Apps 2
M Problem bei Werteübergabe, MSQL verbindung Android & Cross-Platform Mobile Apps 3
S Android Problem mit Android Virtual Device erstellung. Android & Cross-Platform Mobile Apps 2
Anfänger2011 Text to Speech Problem Android & Cross-Platform Mobile Apps 1
S Android Android java onclick listener Problem Android & Cross-Platform Mobile Apps 9
A Android Problem mit ListView und OnItemClickListener.. Android & Cross-Platform Mobile Apps 10
K Problem mit arraylist und button Android & Cross-Platform Mobile Apps 16
R W-Lan Problem über Sockets Android & Cross-Platform Mobile Apps 1
A Android Problem mit Video von Youtube abspielen Android & Cross-Platform Mobile Apps 4
A Android Problem mit Zurücktaste und ausgabe der Aktuellen Seite Android & Cross-Platform Mobile Apps 6
B Android Problem mit Soundwiedergabe Android & Cross-Platform Mobile Apps 2
T Android Android Sensor: Java Problem Android & Cross-Platform Mobile Apps 1
G Problem beim Rendern von 3D-Objekt Android & Cross-Platform Mobile Apps 0
L Android Gyroscope Sensor Problem Android & Cross-Platform Mobile Apps 2
S Android GPS Problem Android & Cross-Platform Mobile Apps 24
J Eclipse Emulator Problem Android & Cross-Platform Mobile Apps 1
J Eclipse Emulator Problem Android & Cross-Platform Mobile Apps 0
B Android Problem mit Rückgabewert Android & Cross-Platform Mobile Apps 13
L Android komisches Bitmap-Größe-Problem Android & Cross-Platform Mobile Apps 8
D Android Layout Problem Android & Cross-Platform Mobile Apps 2
R Problem mit View in ScrollView Android & Cross-Platform Mobile Apps 6
R Eclipse + AndroidSDK - Problem mit Referenzen Android & Cross-Platform Mobile Apps 6
M Problem mit setOnClickListener Android & Cross-Platform Mobile Apps 4
DaniSahne96 Problem beim Appdebuggen auf Smartphone Android & Cross-Platform Mobile Apps 3
P Android Problem beim Widget - Denkfehler ? Android & Cross-Platform Mobile Apps 2
M GCM IntentService Problem Android & Cross-Platform Mobile Apps 3
D Android Gallery Problem Android & Cross-Platform Mobile Apps 5
P Problem mit Cell id Android & Cross-Platform Mobile Apps 6
L Android Problem mit "spinner" Android & Cross-Platform Mobile Apps 10
D Android problem mit geschwindigkeitsberechnung app Android & Cross-Platform Mobile Apps 2
E Android Problem mit Contact Provider Android & Cross-Platform Mobile Apps 1
H Android Problem mit ListActivity Android & Cross-Platform Mobile Apps 3
S Android Layout Problem mit fill_parent Android & Cross-Platform Mobile Apps 5
F Android ExpandableList, SimpleCursorTreeAdapter, Cursor Problem Android & Cross-Platform Mobile Apps 2
A Android Problem mit Long.getLong() bzw. Integer.getInteger() Android & Cross-Platform Mobile Apps 2
A Problem mit HTTP- Verbindung Android & Cross-Platform Mobile Apps 4
V [Java] und [JavaME] ClientServer StreamConnection . Problem beim lesen / schreiben Android & Cross-Platform Mobile Apps 2
F Eclipse JAD File erzeugen -- Problem Android & Cross-Platform Mobile Apps 10
R Ein Problem beim ausführen von folgendem Quelltext Android & Cross-Platform Mobile Apps 11
M Problem mit dem Auslesen von System Properties Android & Cross-Platform Mobile Apps 7
P wtk problem Android & Cross-Platform Mobile Apps 3
G Math exp() Problem Android & Cross-Platform Mobile Apps 4
G S40 Problem Android & Cross-Platform Mobile Apps 8
A Problem beim Subtrahieren eines Double von einem Double Android & Cross-Platform Mobile Apps 5
C Problem Device/Emulator wird nicht erkannt Android & Cross-Platform Mobile Apps 3
S Image Problem Android & Cross-Platform Mobile Apps 11
M Problem mit den Softkeys Android & Cross-Platform Mobile Apps 4
G J2ME jar-problem Android & Cross-Platform Mobile Apps 10
S Komisches Problem Android & Cross-Platform Mobile Apps 3
F Problem beim Erstellen der Jar File Android & Cross-Platform Mobile Apps 4
A Problem: Canvas-Grösse Motorola RAZR v3r Android & Cross-Platform Mobile Apps 8
S Problem mit Einbindung einer externer Bibliothek Android & Cross-Platform Mobile Apps 2
G Random - Problem Android & Cross-Platform Mobile Apps 5
E problem mit den resourcen Android & Cross-Platform Mobile Apps 2
O Problem mit Datagramconnection Android & Cross-Platform Mobile Apps 2
P Problem mit der Uhrzeit Android & Cross-Platform Mobile Apps 2
S Problem auf dem Handy Android & Cross-Platform Mobile Apps 3

Ähnliche Java Themen

Neue Themen


Oben