您好我不想设置活动方向我想仅限制对话框。 让我知道是否可能。
**
仅适用于对话不活动
。**
Dialog d = new Dialog(context);
Window window = d.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,
WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
d.requestWindowFeature(Window.FEATURE_NO_TITLE);
//d.setCancelable(false);
d.setContentView(R.layout.viewpager_main_for_printing);
WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
lp.copyFrom(d.getWindow().getAttributes());
lp.width = WindowManager.LayoutParams.MATCH_PARENT;
lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
lp.gravity = Gravity.CENTER;
lp.screenOrientation=WindowManager.LayoutParams./// Here how to set orentation
d.getWindow().setAttributes(lp);
答案 0 :(得分:1)
您应该检查要显示对话框的地方的方向。
如果方向是纵向,则显示对话框。
答案 1 :(得分:0)
第1步:使用屏幕方向使您的活动成像通过清单
<activity
android:name="com.example.test.MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
第2步:需要创建对话框,如下所示
Dialog dialogBoxAbout = new Dialog(this);
dialogBoxAbout.setContentView(R.layout.activity_about);
dialogBoxAbout.show();
这是用于通过XML进行对话。
另一个选项
创建一个新活动并使其成为一个对话框。
如下所述在清单文件中声明它。
<activity
android:name="com.test.dialog"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Dialog" />
答案 2 :(得分:0)
锁定方向
if (activity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
} else {
activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
解锁:
activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);