首页 > 解决方案 > 软键盘隐藏滚动视图内的编辑文本(Xamarin Android)

问题描述

我是“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 位置的编辑文本。

标签: androidxamarin.androidandroid-softkeyboard

解决方案


Please try to use only one of them instead:

Window.SetSoftInputMode(SoftInput.AdjustPan);

The activity's main window is not resized to make room for the soft keyboard. Rather, the contents of the window are automatically panned so that the current focus is never obscured by the keyboard and users can always see what they are typing. This is generally less desirable than resizing, because the user may need to close the soft keyboard to get at and interact with obscured parts of the window.

Window.SetSoftInputMode(SoftInput.AdjustResize);

The activity's main window is always resized to make room for the soft keyboard on screen.

If you are working on a Xamarin.forms project, you can read this document for more information.


推荐阅读