Aru*_*tha 15 android dialog android-activity
我使用android:theme ="@ android:style/Theme.Dialog"创建了一个非最大化的活动,使它看起来像一个对话框.我需要在屏幕上更改活动的位置,但我没有找到如何做到这一点......
Joe*_*Joe 23
要更改位置(主题设置为Theme.Dialog),您可以在活动附加到窗口后覆盖活动装饰视图的LayoutParams的重力,大小和坐标.这是一个例子:
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
View view = getWindow().getDecorView();
WindowManager.LayoutParams lp = (WindowManager.LayoutParams) view.getLayoutParams();
lp.gravity = Gravity.LEFT | Gravity.TOP;
lp.x = 10;
lp.y = 10;
lp.width = 300;
lp.height = 300;
getWindowManager().updateViewLayout(view, lp);
}
Run Code Online (Sandbox Code Playgroud)
创建一个自定义主题作为Theme.Dialog其父主题:
<style name="CustomDialogTheme" parent="@android:style/Theme.Dialog">
Run Code Online (Sandbox Code Playgroud)
因此,对于对话框主题中要更改的每个项目,请使用CustomDialogTheme而不是Theme.Dialog在 Android Manifest 中使用。有关详细信息,请参阅Android 开发人员文档。
| 归档时间: |
|
| 查看次数: |
8694 次 |
| 最近记录: |