如何将应用程序图标添加到ExpandableListView

时间:2015-03-29 19:41:15

标签: android expandablelistview

我想在expandableListView中列出所有已安装的应用程序以及相应的应用程序图标。已安装的应用程序列表有效,但我无所谓,如何插入ListView的应用程序图标。

以下是我expandableListView的代码:

public class GestureAnyWhere extends ExpandableListActivity {

private ArrayList<String> elternElemente = new ArrayList<String>();
private ArrayList<Object> kindElemente = new ArrayList<Object>();
...
 ExpandableListView liste_schritt1 = getExpandableListView ();

    // Zeilenabstand bestimmen
    liste_schritt1.setDividerHeight ( 10 );

    // Pfeil an der Seite rechts anzeigen lassen durch setGroupIndicator
   // liste_schritt1.setGroupIndicator ( getResources().getDrawable(R.drawable.expandiconempty) );
    liste_schritt1.setClickable ( true );

    elternElementTexte ();
    kindElementTexte();

    MyExpandableAdapter adapter = new MyExpandableAdapter(elternElemente, kindElemente);

    adapter.setInflater ( ( LayoutInflater ) getSystemService ( Context.LAYOUT_INFLATER_SERVICE ), this );
    liste_schritt1.setAdapter ( adapter );
    liste_schritt1.setOnChildClickListener ( this );

...
 private void elternElementTexte(){

    elternElemente.add("Anwendung starten");


}


private void kindElementTexte(){

    ArrayList<String> kinder = new ArrayList<String>();

    final PackageManager pm = getPackageManager();
    List<ApplicationInfo > packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);

    String packetName = null;

    for (ApplicationInfo packageInfo : packages) {


        packetName = packageInfo.packageName;

        kinder.add(packetName);
    }

    kindElemente.add(kinder);
}

非常感谢您的帮助

1 个答案:

答案 0 :(得分:1)

致电loadIcon() on the ApplicationInfo,传递PackageManager作为参数,让Drawable加入ImageView