代码之家  ›  专栏  ›  技术社区  ›  letsCode

以编程方式更改主屏幕小部件的大小

  •  0
  • letsCode  · 技术社区  · 5 年前

    我有一个小部件为我的应用程序,我正在寻找改变大小的小部件时,我们更新的应用程序。

    问题在于我是否安装了应用程序的旧版本并将应用程序更新为新版本。如果我有小部件的1x1或2x2等,它将保持这种方式,并且不会将其值更改为4x2。

    如果我这样做,它会将小部件更新到正确的大小,但它会将其保存在1x1容器中。

    private static void measureSpec(Context context, View layout, int appWidgetId) {
        int widthMeasureSpec;
        int heightMeasureSpec;
    
    
        widthMeasureSpec = View.MeasureSpec.makeMeasureSpec(420, View.MeasureSpec.EXACTLY);
        heightMeasureSpec = View.MeasureSpec.makeMeasureSpec(420/2, View.MeasureSpec.EXACTLY);
    
    
        layout.measure(widthMeasureSpec, heightMeasureSpec);
        layout.layout(0, 0, layout.getMeasuredWidth(), layout.getMeasuredHeight());
        layout.setDrawingCacheEnabled(true);
    }
    
    0 回复  |  直到 5 年前