1 Android 控制手机横屏或者竖屏的方法
1.1 配置 AndroidManifest.xml
以横屏模式为例:
在 Android 开发中,如果想让应用或某个特定的 Activity 在运行时以横屏模式显示,可以通过修改 Activity 的 AndroidManifest.xml 文件中的配置来实现。
下面是如何在 AndroidManifest.xml 中为特定的 Activity 设置横屏模式的步骤:
- 打开 Android 项目,并找到 AndroidManifest.xml 文件。
- 找到你想要设置为横屏模式的 <activity> 标签。
- 在这个 <activity> 标签内部,添加 android:screenOrientation 属性,并将其值设置为 landscape。
例如:
<activity android:name=".MyActivity">
<!-- 其他配置 -->
android:screenOrientation="landscape"
</activity>
在这个例子中,MyActivity 是想要设置为横屏模式的 Activity 的名字。
注意:这种方法会强制 Activity 始终保持横屏模式,无论设备的物理方向如何。
如果向修改为竖屏模式,则 AndroidManifest.xml 文件的修改为:
<activity android:name=".MyActivity">
<!-- 其他配置 -->
android:screenOrientation="portrait"
</activity>
1.2 运行时动态地改变屏幕方向
如果需要在运行时动态地改变屏幕方向,则可以在 Activity 或 Fragment 的代码中调用如下代码。
横屏模式:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
竖屏模式:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
2 提供 js 调用 Android 方法
(1)创建 JavaScriptInterface 类
首先,需要创建一个 Java 类,实现 WebView.JavascriptInterface 接口。这个类将作为 JavaScript 和 Android 原生代码之间的桥梁。
import android.content.Context;
import android.webkit.JavascriptInterface;
import android.widget.Toast;
public class WebAppInterface {
Context mContext;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
}
// 设置横屏或者竖屏
@JavascriptInterface
public void setScreenOrientation(String orientation) {
if(orientation