Gra*_*eme 18 android android-layout
windowIsFloating虽然一个伟大的一站式商店创建Dialog风格的UI有许多---错误---怪癖.
我现在正在努力的是它将顶部祖先的宽度/高度指定为"wrap_content"而不是屏幕的宽度/高度.这意味着使用的常用UI设计"match_parents"将向上传播成为"wrap_content".糟糕的时间.
所以,我真正想要的是创建一个活动,并有一个像这样的布局:
<LinearLayout android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="vertical"
android:id="@+id/containerPageConatiner"
android:background="@drawable/windowBackground">
<View android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<FrameLayout android:id="@+id/singlePane"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_gravity="center_horizontal|center_vertical"
android:padding="10dp"/>
<View android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这会生成一个UI,显示调用它的Activity上的单个窗口(@ id/singlePane).
有没有人拥有创建透明背景活动所需的恰当样式?
Gra*_*eme 30
感谢@PolamReddy,我想要回答我的想法:
主题Theme.Translucent.NoTitleBar.Fullscreen及其祖先包含创建半透明窗口所需的所有属性.为了得到一切,windowIsFloating我通过祖先堆栈并拉出了整个属性集:
<style name="Theme.CustomTheme.TransparentActivity">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowFullscreen">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)
这种风格必须分配到Activity的AndroidManifest.xml,而不是一个布局的根视图.
在清单文件中使用这样的活动(主题代表该活动的透明度.)
<activity android:name=".Settings"
android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13110 次 |
| 最近记录: |