2016-07-28 5 views
-1

В моем приложении MainActivity содержит внутренний класс с именем ListIconListIcon .Отеля расширяет ArrayAdapter<Drawable>, теперь я хочу использовать этот класс ListIcon в другом классе обслуживания Window.Как использовать внутренний класс MainActivity в другом классе обслуживания

Мой Window класс содержит ListView. Адаптер для ListView является класс ListIcon так:

ListView listView = new ListView(this) 
MainActivity.ListIcon main; 
main=new MainActivity.new ListIcon(this); 
listView.setAdapter(main); 

Это не работает должным образом. Он не импортирует класс ListIcon правильно. Думаю, можно отправить класс ListIcon классу обслуживания с использованием намерения.

+0

Это вряд ли хорошая практика, чтобы создать внутренние классы в классах активность. – Vucko

ответ

0
public class MainActivity { 

    public static class ListIcon{ //Inner class with static 

    } 

} 

Мой класс Window содержит ListView.The адаптер для ListView является класс ListIcon так:

ListView listView =new ListView(this) 

MainActivity.ListIcon main; 

main=new MainActivity.ListIcon(this); //It should be like this 

listView.setAdapter(main); 
+0

Я пробовал этот путь, он дает мне красную строку, говоря, что «MainActivity не является закрывающим классом» – Adarsh

+0

, если я создаю свой статический класс, некоторые из его функций не будут работать – Adarsh

+0

Да, что может быть возможно, зависит от требований, поэтому будет хорошо, если вы создадите общий класс для адаптера. – ViramP

Смежные вопросы