【问题标题】:Soft keyboard hides edit text inside scroll view(Xamarin Android)软键盘隐藏滚动视图内的edittext(Xamarin Android)
【发布时间】:2020-09-15 19:52:24
【问题描述】:

我是“Xamarin Android”的新开发人员,我遇到了一个问题,现在我将解释一下。

滚动视图内部有多个编辑文本,当我单击或聚焦显示软键盘的最后编辑文本时,什么问题意味着软键盘隐藏了最后编辑文本,但光标被聚焦并输入了。

现在我需要在单击或聚焦时编辑文本意味着编辑文本仅显示在软键盘上方。

我已经在 android studio 中使用 window Soft Input Mode = 'adjust pan|adjust resize' 修复了同样的问题,但是在 'Xamarin android' 我添加了两个软输入参数,但我无法获得输出,请任何人帮助我。

Example Class

    LlLayout = FindViewById<LinearLayout>(Resource.Id.ABL_Runtime);

                ScrollView sv = new ScrollView(this);
                //sv.LayoutParameters = linearLayoutParams;

                ABlayout = new AbsoluteLayout(this);
                //ABlayout.LayoutParameters = linearLayoutParams;

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pSpaceBetweenControl;
                EditText txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 1";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 2";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 3";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 4";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 5";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pSpaceBetweenControl;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 6";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 7";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 8";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 10";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 11";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 12";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 13";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 14";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 15";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 16";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 17";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 18";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 19";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 20";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 21";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 22";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 23";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 24";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 25";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 26";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 27";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 28";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                AppConstant.pLastControlTop = AppConstant.pLastControlTop + AppConstant.pControlHeight;
                txtTitle = new EditText(this);
                txtTitle.Text = "Job ID 29";
                txtTitle.Tag = "Job ID sent from HO";
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                txtTitle.SetX(AppConstant.pControlLeft);
                txtTitle.SetY(AppConstant.pLastControlTop);
                txtTitle.SetWidth((int)AppConstant.pFieldLen);

                LObj.Add(txtTitle);

                //txtTitle.SetTextColor(Color.ParseColor(""+ColorValue));
                txtTitle.SetHeight((int)AppConstant.pControlHeight);
                //int ColorValue = System.Drawing.Color.FromName("blue").GetHashCode();
                txtTitle.SetTextColor(Android.Graphics.Color.ParseColor(redHex));
                ABlayout.AddView(txtTitle);

                LlLayout.AddView(ABlayout);

Example XML File

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent">


    <android.support.v4.widget.NestedScrollView android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:visibility="visible"
        android:fillViewport="true">

    <LinearLayout android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/ABL_Runtime">

        </LinearLayout>

    </android.support.v4.widget.NestedScrollView>

</LinearLayout>

我使用示例类和 xml 编辑了我的问题,我创建了编辑文本运行时并获取值运行时。这里我使用绝对布局来设置基于 x、y 位置的编辑文本。

【问题讨论】:

    标签: android xamarin.android android-softkeyboard


    【解决方案1】:

    请尝试只使用其中一个:

    Window.SetSoftInputMode(SoftInput.AdjustPan);
    

    Activity 的主窗口没有调整大小来为软键盘腾出空间。相反,窗口的内容会自动平移,因此当前焦点永远不会被键盘遮挡,用户始终可以看到他们正在输入的内容。这通常不如调整大小可取,因为用户可能需要关闭软键盘才能到达窗口的模糊部分并与之交互。

    Window.SetSoftInputMode(SoftInput.AdjustResize);
    

    Activity 的主窗口总是会调整大小,以便为软体腾出空间 屏幕上的键盘。

    如果您正在处理 Xamarin.forms 项目,您可以阅读this document 了解更多信息。

    【讨论】:

    • 早上好,感谢您的回复,我测试了它也不起作用,Buz 在滚动视图中我使用了 AbsoluteLayout,然后我添加了基于 X Y 位置的编辑文本。
    • @saravanan 你能分享我一个最小的、可重现的例子,以便我可以测试它吗?或者添加一些关于该页面的相关代码?
    • 请检查我上面的示例类和 xml 文件,我创建了多个添加到绝对布局的编辑文本。
    • 这里的 LObj 和 AppConstant 是什么?
    • List LObj = new List();
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    • 1970-01-01
    • 2014-08-07
    相关资源
    最近更新 更多