Android:仅旋转webview,而不是手机上的菜单按钮

时间:2016-11-29 19:01:37

标签: c# android mobile xamarin webview

在我的应用程序中,我显示的网页太大,无法放在纵向显示上,所以我想旋转它。我尝试在活动中使用RequestedOrientation = ScreenOrientation.Landscape;,但它会更改整个手机的轮播,而不仅仅是webview。我还尝试制作一个自定义的webview类:

 public class VerticalWebView : WebView
    {
        bool topDown = true;

    public VerticalWebView(Context context, IAttributeSet attrs) : base(context, attrs)
        {

        }


        public override void Draw(Canvas canvas)
        {
            if (topDown)
            {
                canvas.Translate(Height, 0);
                canvas.Rotate(90);
            }
            else
            {
                canvas.Translate(0, Width);
                canvas.Rotate(-90);
            }

            canvas.ClipRect(0, 0, Width, Height, Region.Op.Replace);
            base.Draw(canvas);
        }
    }

但我无法使用布局文件中的webview XML。任何意见都将非常感谢

1 个答案:

答案 0 :(得分:0)

如果我的要求不对,

纠正我

首先指导手机的方向 how to detect orientation of android device?

检查并在正确的条件下

根据需要旋转webView!如下所示

 WebView webView = (WebView) findViewById(R.id.web);
        webView.loadUrl("https://stackoverflow.com/questions/1930963/rotating-a-view-in-android");
        webView.setRotation(90);

虚拟结果如> enter image description here