Будучи нищим в андроиде, я застрял при использовании Toast.makeText, вот код.Почему Toast.makeText не принимает отформатированный текст?
public class CustomOnSelectedListen implements OnItemSelectedListener{
public void onItemSelected(AdapterView<?> parent, View view,int pos,long id){
Toast.makeText(parent.getContext(),
"OnItemSelectedListener :" + parent.getItemAtPosition(pos).toString(),
Toast.LENGTH_SHORT).show();
}
public void onNothingSelected(AdapterView<?> arg0){
Toast.makeText(CustomOnSelectedListen.this,"Please select place and class".toString(),Toast.LENGTH_SHORT).show();
}
}
и ошибка
Error:(19, 15) error: no suitable method found for
makeText(CustomOnSelectedListen,String,int)
method Toast.makeText(Context,CharSequence,int) is not applicable
(argument mismatch; CustomOnSelectedListen cannot be converted to Context)
method Toast.makeText(Context,int,int) is not applicable
(argument mismatch; CustomOnSelectedListen cannot be converted to Context)
Здесь CustomOnSelectedListen не могут быть преобразованы, что может быть не так?
EDIT 1: Да CustomOnSelectedListen не экземпляр контекста, мне нужно, чтобы отобразить сообщение в функции onNothingSelected() с помощью тостов, каковы различные способы сделать это?
** CustomOnSelectedListen не может быть преобразован в Context ** получить подсказку. Проверить прямые подклассы и косвенные подклассы вверху https://developer.android.com/reference/android/content/Context.html. – Raghunandan
Вам необходимо передать ** context instance ** в качестве первого параметра в вашем методе makeText, а не ** CustomOnSelectedListen instance **. –
В каком классе вы печатаете это? – NehaK