获取Android通知面板宽度

时间:2016-07-20 18:23:32

标签: android android-notifications android-custom-view remoteview

我正在创建一些自定义的remoteViews,为了将自定义视图和布局绘制到与通知面板一样宽的位图,我需要它的确切宽度。

由于每个供应商都会更改通知面板的宽度,并且在大多数情况下会根据方向进行更改,因此很难找到常规模式。

有没有办法获得它的宽度?

enter image description here enter image description here

粉红色部分是纯粹的remoteViews,底部是imageview,我将自定义视图绘制到它,因为我没有父宽度,所有子视图都会崩溃。

2 个答案:

答案 0 :(得分:2)

最简单的方法是将LinearLayout与android:orientation="horizontal"android:layout_width="match_parent"一起使用,并为该布局中的每个视图添加android:layout_weight="1"android:layout_width="0dp"。这意味着该布局中的每个视图都具有相同的宽度。有关它的更多信息,请阅读here

更新:在here中,它表示通知托盘宽度 478dp 。 所以,试试吧。也许一些制造商有不同的尺寸,但这是一个很好的数字开始:)。

答案 1 :(得分:0)

您可以尝试此操作来获取宽度并计算自定义布局

DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = displaymetrics.heightPixels;
int width = displaymetrics.widthPixels;

使用宽度计算自定义布局