2017-10-25 3 views
0

#beginner ... habe ich die Karten Liste here is the image Liste mit Blick i frm dem Klick auf der Karte, um den neuen Bildschirm zu bekommen gemacht in Listenansicht ... bitte helfen Sie mir, dieses Problem zu lösen .... bitte geben Sie mir die vollständigen Details der Möglichkeiten, mit denen ich die Aufgabe lösen kann, um meine Probleme zu lösen .... .... hier ist was ich codiert ::::von einer Aktivität Umzug in einer anderen durch Klick auf der Karte in einer Listenansicht erstellt

Main_Activity.java

package com.android.mezohn.nepstudy.app; 

import android.os.Bundle; 
import android.support.design.widget.FloatingActionButton; 
import android.support.design.widget.Snackbar; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.View; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

import com.android.mezohn.nepstudy.Adapter.subjectAdapter; 
import com.android.mezohn.nepstudy.R; 
import com.android.mezohn.nepstudy.model.ListDetails; 
import com.android.mezohn.nepstudy.model.model; 

import java.util.ArrayList; 

public class MainActivity extends AppCompatActivity { 

    private ListView listView; 
    private ArrayList<model>models; 
    private subjectAdapter subjectAdapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     listView = (ListView)findViewById(R.id.list_view); 
     models = ListDetails.getList(); 

     subjectAdapter = new subjectAdapter(MainActivity.this,models); 
     listView.setAdapter(subjectAdapter); 

     FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
     fab.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
         .setAction("Action", null).show(); 
      } 
     }); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.menu_main, 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(); 

     //noinspection SimplifiableIfStatement 
     if (id == R.id.action_settings) { 
      return true; 
     } 

     return super.onOptionsItemSelected(item); 
    } 
} 

model.java

package com.android.mezohn.nepstudy.model; 

/** 
* Created by ecspc on 25/10/2017. 
*/ 

public class model { 

    private int subjectImage; 
    private String subjectTitle; 
    private String count; 

    public model(int subjectImage, String subjectTitle, String count) { 
     this.subjectImage = subjectImage; 
     this.subjectTitle = subjectTitle; 
     this.count = count; 
    } 

    public int getSubjectImage() { 
     return subjectImage; 
    } 

    public void setSubjectImage(int subjectImage) { 
     this.subjectImage = subjectImage; 
    } 

    public String getCount() { 
     return count; 
    } 

    public void setCount(String count) { 
     this.count = count; 
    } 

    public String getSubjectTitle() { 
     return subjectTitle; 

    } 

    public void setSubjectTitle(String subjectTitle) { 
     this.subjectTitle = subjectTitle; 
    } 
} 

subjectAdapter.java

package com.android.mezohn.nepstudy.Adapter; 

import android.content.Context; 
import android.graphics.ColorSpace; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.ImageView; 
import android.widget.TextView; 

import com.android.mezohn.nepstudy.R; 
import com.android.mezohn.nepstudy.model.model; 

import java.util.ArrayList; 

/** 
* Created by ecspc on 25/10/2017. 
*/ 

public class subjectAdapter extends BaseAdapter { 

    private Context context; 
    private ArrayList<model> models; 

    public subjectAdapter(Context context, ArrayList<model> models) { 
     this.context = context; 
     this.models = models; 
    } 

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

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

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

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

     if(convertView ==null){ 
      convertView = View.inflate(context, R.layout.list_view,null); 

      ImageView images = convertView.findViewById(R.id.cardImage); 
      TextView title = convertView.findViewById(R.id.cardTitle); 
      TextView count = convertView.findViewById(R.id.count); 
      model model = models.get(position); 
      images.setImageResource(model.getSubjectImage()); 
      title.setText(model.getSubjectTitle()); 
      count.setText(model.getCount()); 
     } 

     return convertView; 
    } 
} 

ListDetails.java

package com.android.mezohn.nepstudy.model; 

import com.android.mezohn.nepstudy.R; 

import java.util.ArrayList; 

/** 
* Created by ecspc on 25/10/2017. 
*/ 

public class ListDetails { 

    public static ArrayList<model> getList(){ 
     ArrayList<model> subjectList = new ArrayList<>(); 
     subjectList.add(new model(R.drawable.phy,"Physics","4 chapters available")); 
     subjectList.add(new model(R.drawable.che,"Chemistry","5 chapters available ")); 
     subjectList.add(new model(R.drawable.que,"Model Questions","10 model Questions available")); 

     return subjectList; 
    } 
} 

Ich bin ein Anfänger, also hoffe ich, dass ich genügend Hilfe davon bekommen würde.

+0

entfernen Sie den # Anfänger Kommentar (und alle Erwähnungen von Anfänger), es fügt nichts zur Frage hinzu; Erzählen Sie uns auch, was Sie erwartet haben, und was tatsächlich passiert –

Antwort

0

Es scheint also, dass Sie nicht versucht haben, Ihrem ListView einen Listener hinzuzufügen. Sie können diese AdapterView.OnItemClickListener

listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){ 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id){ 
     //.. launch your new activity here using Intent 
     Intent intent = new Intent(MainActivity.this, NewActivity.class); 
     startActivity(intent); 
    } 
}); 

Noch ein Hinweis über tun, sollten Sie wirklich besser auf Ihre Klassen zu benennen. Empfohlener Wert: Effective Java

Sie sollten auch lesen: Making a listview scroll smooth, die über das ViewHolder-Muster spricht, oder einfach zu einem RecyclerView bewegen, sobald Sie ein bisschen mehr Android kennen.

+0

sir ..danke für Ihre Antwort Ich habe zwei Verwirrungen in Bezug auf diese ,,,,, 1) Muss ich diesen Code in mainactivity.java Datei oder Listendetails platzieren .java Datei ???? 2) Ich habe einen Adapter im vorherigen Code, muss ich einen neuen erstellen ... – mezohn

+0

diesen Code zu MainActivity hinzufügen, wo Sie eine ListView-Referenz haben, und nein, Sie müssen keinen neuen Adapter erstellen –

Verwandte Themen