android custom dialog imageButton onclicklistener
- by Asaf Nevo
this is my custom dialog class:
package com.WhosAround.Dialogs;
import com.WhosAround.AppVariables;
import com.WhosAround.R;
import com.WhosAround.AsyncTasks.LoadUserStatus;
import com.WhosAround.Facebook.FacebookUser;
import android.app.Dialog;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
public class MenuFriend extends Dialog{
private FacebookUser friend;
private AppVariables app;
public MenuFriend(Context context, FacebookUser friend) {
super(context, android.R.style.Theme_Translucent_NoTitleBar);
this.app = (AppVariables) context.getApplicationContext();
this.friend = friend;
}
public void setDialog(String userName, Drawable userProfilePicture)
{
setContentView(R.layout.menu_friend);
setCancelable(true);
setCanceledOnTouchOutside(true);
TextView name = (TextView) findViewById(R.id.menu_user_name);
TextView status = (TextView) findViewById(R.id.menu_user_status);
ImageView profilePicture = (ImageView) findViewById(R.id.menu_profile_picture);
ImageButton closeButton = (ImageButton) findViewById(R.id.menu_close);
name.setText(userName);
profilePicture.setImageDrawable(userProfilePicture);
if (friend.getStatus() != null)
status.setText(friend.getStatus());
else
new LoadUserStatus(app, friend, status).execute(0);
closeButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
}
})
}
}
for some reason eclipse tells me the following errors on closeButton imageButton:
The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (new DialogInterface.OnClickListener(){})
The type new DialogInterface.OnClickListener(){} must implement the inherited abstract method DialogInterface.OnClickListener.onClick(DialogInterface, int)
The method onClick(View) of type new DialogInterface.OnClickListener(){} must override or implement a supertype method
why is that ?