对launcher二次开发,想在空白处,长按时,调出自己所写的widget的分类,这个widget分类是与窗口小部件、快捷方式等等是并列的。急求解决方法
谢谢

解决方案 »

  1.   

    应该是在AddAdapter类里进行改写的,求指教
      

  2.   

    原有launcher是通过调用AppWidgetPickActivity.java里的putAppWidgetItems方法获取了系统所有的Widget,求问可有什么方法来获取自己的Widget,而不是所有的。
      

  3.   

     /***
         * Create list entries for the given {@link AppWidgetProviderInfo} widgets,
         * inserting extras if provided.
         */
        void putAppWidgetItems(List<AppWidgetProviderInfo> appWidgets,
                List<Bundle> customExtras, List<PickAdapter.Item> items) {
            if (appWidgets == null) return;
            final int size = appWidgets.size();
            for (int i = 0; i < size; i++) {
                AppWidgetProviderInfo info = appWidgets.get(i);
                
                CharSequence label = info.label;
                Drawable icon = null;            if (info.icon != 0) {
                    icon = mPackageManager.getDrawable(info.provider.getPackageName(), info.icon, null);
                    if (icon == null) {
                        Log.w(TAG, "Can't load icon drawable 0x" + Integer.toHexString(info.icon)
                                + " for provider: " + info.provider);
                    }
                }
                
                PickAdapter.Item item = new PickAdapter.Item(this, label, icon);
                
                item.packageName = info.provider.getPackageName();
                item.className = info.provider.getClassName();
                
                if (customExtras != null) {
                    item.extras = customExtras.get(i);
                }
                
                items.add(item);
            }
        }
      

  4.   

    全部得到后,先调用hide方法,将其隐藏,然后长按空白处,将其show出来
      

  5.   

    请问如何区分自己所写的Widget和系统安装的widget,以及其他人的
      

  6.   

    因为每个widget在manifiest里注册为
    #  <intent-filter>     
    #    <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />     
    #      </intent-filter>    
    可否有方法来区分?
      

  7.   

    网上不是有吗你搜下android 创建快捷方式