0

さて、私はListView画像とテキストで を作ろうとしています。私はこの例に従っています: Android: ArrayAdapter を使用した画像とテキストを含むカスタム ListView しかし、インストールされているアプリとそのアイコンに関するリストが必要です。アイコンを取得するために、この他の例に従っています: Get installed Applications with Name, Package Name, Version and Icon

アイコンを使用してリストを作成できましたが、インストールされているアプリから取得できません。ドローアブルの写真を使用すると、コードは完全に機能します。問題は、どうすればアイコンを取得して自分のに追加できるかということListViewです。

コードは少し大きいので、後で小さくして投稿します。ありがとう

4

1 に答える 1

1

読みやすく、ここに投稿しやすくしようとしているときに、解決策を見つけました。これは魔法のコードです:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.apps_list_view);

    rowItems = new ArrayList<AppListRowItem>();

    List<PackageInfo> packs = getPackageManager().getInstalledPackages(PackageManager.GET_META_DATA);
    for(int i=0;i<packs.size();i++) {
        PackageInfo p = packs.get(i);

        Pinfo newInfo = new Pinfo();
        newInfo.appname = p.applicationInfo.loadLabel(getPackageManager()).toString();
        newInfo.pname = p.packageName;
        newInfo.versionName = p.versionName;
        newInfo.versionCode = p.versionCode;
        newInfo.icon = p.applicationInfo.loadIcon(getPackageManager());

            PackageNames = p.packageName;

            AppNames = p.applicationInfo.loadLabel(getPackageManager()).toString();

        test = p.applicationInfo.loadIcon(getPackageManager());

        AppListRowItem item = new AppListRowItem(test, AppNames, PackageNames);
        rowItems.add(item);

    }

他のすべては、上に投稿されたリンクと同じです。

于 2012-10-24T23:36:16.850 に答える