2017-05-01 2 views
0

Je veux quand le bouton est cliqué dans une rangée il lancera une autre activité qui montrera le détail de la rangée spécifique.!
Comment régler le bouton d'écoute sur chaque ligne.J'ai ListView personnalisé ayant deux textviews et un bouton que je veux lancer une autre activité sur chaque clic de bouton dans la rangée?

Activité principale:

MainActivity public class étend AppCompatActivity {

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    String[] friendList = {"Javad","Usama","Umar","Bilal","Bhutta sb","Zain Ul Abidin"}; 

    ListAdapter listAdapter = new CustomClass(this,friendList); 
    ListView listView = (ListView)findViewById(R.id.listview); 
    listView.setAdapter(listAdapter); 



    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, final View view, int position, long id) { 

      String name = String.valueOf(parent.getItemAtPosition(position)); 

      Toast.makeText(MainActivity.this,name,Toast.LENGTH_SHORT).show(); 

     } 
    }); 

} 

}

+1

intérieur onItemClick() utiliser si (view = R.id.BUTTONID) {start new Activity} –

Répondre

0

intérieur onItemClick

if(view=R.id.ButtonID) 
{ 
launch new Activity 
} 
+0

son donnant une erreur – Zain

+0

vous pouvez utiliser switch ou sinon. positon = 0 signifie que le premier bouton a été cliqué, donc lancez la première activité avec les autres boutons –

0

vous pouvez lier cliquage écouteur adaptateur non onItemClick
avant vue de retour dans un getView method.If vous ne comprenez pas cette réponse alors que votre code adaptateur personnalisé

 @Override 
     public View getView(final int position, View convertView, ViewGroup parent) { 
      LayoutInflater myCustomInflater = LayoutInflater.from(getContext()); 
      View customView = myCustomInflater.inflate(row, parent, false); 
      String singleFoodItem = getItem(position); 
      TextView itemText = (TextView) customView.findViewById(R.id.textView); 
      ImageView buckysImage = (ImageView) customView.findViewById(R.id.imageView); 
      itemText.setText(singleFoodItem); 
Button button = customView.findViewById(R.id.button); 
button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if(position == 0){ 
        //go for next activity 
       } 
      } 
     }); 
      itemText.setText(singleFoodItem); 
      buckysImage.setImageResource(R.mipmap.doctorcartoon); 
      return customView; 
     } 
+0

@Override public View getView (position int, Voir convertView, ViewGroup parent) { LayoutInflater myCustomInflater = LayoutInflater.from (getContext()); Afficher customView = myCustomInflater.inflate (ligne, parent, false); String singleFoodItem = getItem (position); TextView itemText = (TextView) customView.findViewById (R.id.textView); ImageView buckysImage = (ImageView) customView.findViewById (R.id.imageView); itemText.setText (singleFoodItem); buckysImage.setImageResource (R.mipmap.doctorcartoon); return customView; } – Zain

0
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    String[] friendList = {"Javad","Usama","Umar","Bilal","Bhutta sb","Zain Ul Abidin"}; 

    ListAdapter listAdapter = new CustomClass(this,friendList); 
    ListView listView = (ListView)findViewById(R.id.listview); 
    listView.setAdapter(listAdapter); 



    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, final View view, int position, long id) { 

      String name = String.valueOf(parent.getItemAtPosition(position)); 
      Intent i = new Intent(this,SecondActivity.class); 
      i.putExtra("selectedValue",friendList[position]); 
      startActivity(i); 
      Toast.makeText(MainActivity.this,name,Toast.LENGTH_SHORT).show(); 

     } 
    }); 

deuxième activité sous OnCreate

if(getIntent().getExtras() != null) 
{ 
    String strData = getIntent().getExtras().getString("selectedValue") 
}