J'ai un LazyAdapter qui s'étend deBaseAsapter, dans lequel j'ai implémenté un clickListener. Si l'utilisateur clique sur Facebook, cela devrait ouvrir le Facebook et si l'utilisateur clique sur Twitter, cela devrait passer à l'activité suivante.
Mon code dans LazyAdapter est
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(item.equalsIgnoreCase(Constants.Facebook))
{
SocialActivity obj1=new SocialActivity();
obj1.startFB(context);
}
else if(item.equalsIgnoreCase(Constants.Twitter))
{
SocialActivity obj=new SocialActivity();
obj.startTwitter(context);
}
}
});
et c'est le Code dans SocialActivity
Méthode Twitter
void startTwitter(Context con)
{
Intent intent = new Intent(con,TwitterInterface.class);
startActivity(intent);
}
Méthode Facebook
void startFb(Context con)
{
Intent intent = new Intent(con,FaceBook.class);
startActivity(intent);
}
Au lieu de cela, j'ai également essayé ce code dans LazyAdapter
, mais à chaque fois ça me donne Null Pointer Exception
. Donc, toute aide pour résoudre ce problème sera très appréciée et merci d'avance.
if(item.equalsIgnoreCase(Constants.Facebook))
{
SocialActivity obj1=new SocialActivity();
Intent in = new Intent(context,Facebook.class);
obj1.startActivity(in);
}
else if(item.equalsIgnoreCase(Constants.Twitter))
{
SocialActivity obj=new SocialActivity();
Intent intent = new Intent(context,TwitterInterface.class);
obj.startActivity(intent);
}
Réponses:
1 pour la réponse № 1j'ai résolu en utilisant
v.getContext().startActivity(intent)
Intent intent = new Intent(context,TwitterInterface.class);
v.getContext().startActivity(intent);
0 pour la réponse № 2
Essayez ceci, c'est plus simple et une bonne pratique de codage
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(item.equalsIgnoreCase(Constants.Facebook))
{
SocialActivity obj1=new SocialActivity();
obj1.startFB(mContext);
}
else if(item.equalsIgnoreCase(Constants.Twitter))
{
SocialActivity obj=new SocialActivity();
obj.startTwitter(mContext);
}
}
});