我正在研究 Android 源代码上的一个 View
。我想知道如何将多个重力设置到自定义的 View
。
以下是 XML 代码:
<com.android.systemui.statusbar.policy.Clock
android:id="@+id/clock"
android:textAppearance="@style/TextAppearance.StatusBar.Clock"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:singleLine="true"
android:paddingLeft="6dip"
android:gravity="center_vertical|left"
/>
你可以看到, 默认重心是center_vertical|left,所以我的Java代码应该是这样的
View clock = mStatusBarView.findViewById(R.id.clock);
if (clock != null) {
SOMEHOW SET GRAVITY -> mCenterClock ? Gravity.CENTER : (Gravity.CENTER_VERTICAL | Gravity.LEFT);
}
setGravity方法不能在View
上工作。那么有没有一种替代方法可以设置重力而不会丢失默认的宽度和高度?
先行致谢。