草庐IT

java - 显示软键盘时无法让 ScrollView 滚动

coder 2023-09-03 原文

我一直试图让这个 ScrollView 滚动,但没有成功。 我尝试了多种类型的修复,但似乎无法使一种修复工作。我希望能够在选择编辑框并且键盘占据屏幕的一半时滚动浏览页面。这样我就可以导航到页面底部的其余编辑框和接受按钮,而不必每次都手动隐藏键盘。

这是我的 xml 代码:

    <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:background="@drawable/asuswallpaper4"
       android:orientation="vertical"
       android:weightSum="1"
      >



        <TextView
          android:id="@+id/textView1"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:background="#AAA"
          android:text="Input Configuration"
          android:textAppearance="?android:attr/textAppearanceLarge"
          android:textColor="#000" >
         </TextView>

             <ScrollView
               android:id="@+id/input_scroll_view"
               android:layout_width="fill_parent"
               android:layout_height="wrap_content" >

               <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >



                      <LinearLayout
                       android:id="@+id/linearLayout10"
                       android:layout_width="match_parent"
                       android:layout_height="wrap_content"
                       android:layout_marginTop="20dp"
                       android:orientation="horizontal" >

                      <TextView
                       android:id="@+id/textView13"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:text="TextView"
                       android:textAppearance="?android:attr/textAppearanceMedium"
                       android:textColor="#000"
                       android:textStyle="bold" >
                      </TextView>

            <TextView
                android:id="@+id/textView11"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Enable or Disable"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF" >
            </TextView>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearLayout11"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp" >

            <RadioGroup
                android:id="@+id/DisableEnable"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:addStatesFromChildren="true"
                android:orientation="horizontal" >

                <RadioButton
                    android:id="@+id/disableButton"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:checked="true"
                    android:text="Disable"
                    android:textColor="#FFF" >
                </RadioButton>

                <RadioButton
                    android:id="@+id/enableButton"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="100dp"
                    android:text="Enable"
                    android:textColor="#FFF" >
                </RadioButton>
            </RadioGroup>
        </LinearLayout>

        <!-- <LinearLayout -->
        <!-- android:id="@+id/linearLayout3" -->
        <!-- android:layout_width="match_parent" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:layout_marginTop="20dp" -->
        <!-- android:orientation="horizontal" > -->


        <!-- <TextView -->
        <!-- android:id="@+id/textView14" -->
        <!-- android:layout_width="wrap_content" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:text="TextView" -->
        <!-- android:textAppearance="?android:attr/textAppearanceMedium" -->
        <!-- android:textColor="#000" -->
        <!-- android:textStyle="bold" -->
        <!-- android:visibility="invisible" > -->
        <!-- </TextView> -->


        <!-- <TextView -->
        <!-- android:id="@+id/textView3" -->
        <!-- android:layout_width="wrap_content" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:text="Positive/Negative Trigger" -->
        <!-- android:textAppearance="?android:attr/textAppearanceMedium" -->
        <!-- android:textColor="#FFF" -->
        <!-- android:visibility="invisible" > -->
        <!-- </TextView> -->
        <!-- </LinearLayout> -->


        <!-- <LinearLayout -->
        <!-- android:id="@+id/linearLayout4" -->
        <!-- android:layout_width="match_parent" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:orientation="vertical" > -->


        <!-- <RadioGroup -->
        <!-- android:id="@+id/PosNeg" -->
        <!-- android:layout_width="wrap_content" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:orientation="horizontal" -->
        <!-- android:visibility="invisible" android:clickable="false"> -->


        <!-- <RadioButton -->
        <!-- android:id="@+id/positive_trigger" -->
        <!-- android:layout_width="wrap_content" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:checked="true" -->
        <!-- android:text="Positive" -->
        <!-- android:textColor="#FFF" android:clickable="false"> -->
        <!-- </RadioButton> -->


        <!-- <RadioButton -->
        <!-- android:id="@+id/negative_trigger" -->
        <!-- android:layout_width="wrap_content" -->
        <!-- android:layout_height="wrap_content" -->
        <!-- android:layout_marginLeft="100dp" -->
        <!-- android:text="Negative" -->
        <!-- android:textColor="#FFF" android:clickable="false"> -->
        <!-- </RadioButton> -->
        <!-- </RadioGroup> -->
        <!-- </LinearLayout> -->

        <LinearLayout
            android:id="@+id/linearLayout5"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="25dp"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/textView15"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="TextView"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#000"
                android:textStyle="bold"
                android:visibility="invisible" >
            </TextView>

            <TextView
                android:id="@+id/textView4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Type of Trigger"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearLayout6"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <RadioGroup
                android:id="@+id/TypeTrigger"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:visibility="invisible" >

                <RadioButton
                    android:id="@+id/constant_trigger"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:checked="true"
                    android:text="Constant"
                    android:textColor="#FFF"
                    android:visibility="visible" >
                </RadioButton>

                <RadioButton
                    android:id="@+id/pulse_trigger"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="100dp"
                    android:text="Pulse"
                    android:textColor="#FFF" >
                </RadioButton>
            </RadioGroup>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearLayout2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="25dp" >

            <TextView
                android:id="@+id/textView16"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textStyle="bold"
                android:visibility="invisible" />

            <TextView
                android:id="@+id/textView17"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text=": Continuous or One Time (One Time Only Available for                         Pulsed Input(s))"  
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:visibility="invisible" />
            </LinearLayout>

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

            <RadioGroup
                android:id="@+id/contOneTime"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:visibility="invisible" >

                <RadioButton
                    android:id="@+id/continuous_trigger"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:checked="true"
                    android:text="Continuous" />

                <RadioButton
                    android:id="@+id/oneTime_trigger"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="80dp"
                    android:text="One Time" />
            </RadioGroup>
           </LinearLayout>

           <LinearLayout
            android:id="@+id/linearLayout7"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="25dp"
            android:orientation="vertical"
            android:visibility="visible" >

            <TextView
                android:id="@+id/textView5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Timer Configuration For Selected Input"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>
           </LinearLayout>


           <LinearLayout
            android:id="@+id/linearLayout8"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/textView6"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Number of Pulses"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>

            <EditText
                android:id="@+id/NumberOfPulses"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:hint="0"
                android:inputType="number"
                android:numeric="integer"
                android:visibility="invisible" >

                <requestFocus>
                </requestFocus>
            </EditText>

            <TextView
                android:id="@+id/textView7"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.34"
                android:text=" within,"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>
           </LinearLayout>

           <LinearLayout
            android:id="@+id/linearLayout9"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:visibility="visible" >

            <EditText
                android:id="@+id/Minutes"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.00"
                android:hint="0"
                android:inputType="number"
                android:numeric="integer"
                android:visibility="invisible" >
            </EditText>

            <TextView
                android:id="@+id/textView8"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.00"
                android:text="Minutes,"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>

            <EditText
                android:id="@+id/Seconds"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.00"
                android:hint="0"
                android:inputType="number"
                android:numeric="integer"
                android:visibility="invisible" >
            </EditText>

            <TextView
                android:id="@+id/textView9"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Seconds,"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>

            <EditText
                android:id="@+id/Milliseconds"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.00"
                android:hint="0"
                android:inputType="number"
                android:numeric="integer"
                android:visibility="invisible" >
            </EditText>

            <TextView
                android:id="@+id/textView10"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Milliseconds."
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#FFF"
                android:visibility="invisible" >
            </TextView>

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.00"
                android:text="Medium Text"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:visibility="invisible" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearLayout13"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:weightSum="1" >

            <Button
                android:id="@+id/inputAccept"
                android:layout_width="159dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.04"
                android:text="Accept" >
            </Button>

            <Button
                android:id="@+id/button3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Button"
                android:visibility="invisible" >
            </Button>

            <Button
                android:id="@+id/inputSave"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.06"
                android:text="Save"
                android:visibility="invisible" >
            </Button>

            <Button
                android:id="@+id/button5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Button"
                android:visibility="invisible" >
            </Button>

            <Button
                android:id="@+id/inputLoad"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="0.05"
                android:text="Load"
                android:visibility="invisible" >
                </Button>
            </LinearLayout>
         </LinearLayout>
       </ScrollView>

    </LinearLayout>

(请有人帮我解决这个问题,这让我发疯!!)。 我还想提一下,我已经与有类似问题的人一起尝试了大部分修复,例如填充视口(viewport)和启用垂直滚动条,但这些都没有帮助我解决问题。我也尝试将它们添加到父布局,但似乎也没有用。

最佳答案

添加android:windowSoftInputMode="adjustResize"<activity> AndroidManifest.xml 中的标记。这将导致屏幕调整到显示软键盘后剩余的空间。因此,您将能够滚动,因为屏幕不会以任何方式被键盘覆盖。

编辑:

我已经编写了一个最小示例并对其进行了测试。除非有很大的误解,否则请尝试这段代码,然后找出为什么你的代码不起作用:

xml布局:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    >

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >

        <TextView
            android:layout_height="2000dp"
            android:layout_width="wrap_content"
            android:gravity="top"
            android:text="Scroll Down!"/>

        <EditText
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:hint="Enter Text"
            />
    </LinearLayout>
</ScrollView>

list :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example"
          android:versionCode="1"
          android:versionName="1.0">
    <uses-sdk android:minSdkVersion="15"/>
    <application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
        <activity android:name="MyActivity"
                  android:label="@string/app_name"
                android:windowSoftInputMode="adjustResize"
                >
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

关于java - 显示软键盘时无法让 ScrollView 滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11298479/

有关java - 显示软键盘时无法让 ScrollView 滚动的更多相关文章

  1. ruby-on-rails - 由于 "wkhtmltopdf",PDFKIT 显然无法正常工作 - 2

    我在从html页面生成PDF时遇到问题。我正在使用PDFkit。在安装它的过程中,我注意到我需要wkhtmltopdf。所以我也安装了它。我做了PDFkit的文档所说的一切......现在我在尝试加载PDF时遇到了这个错误。这里是错误:commandfailed:"/usr/local/bin/wkhtmltopdf""--margin-right""0.75in""--page-size""Letter""--margin-top""0.75in""--margin-bottom""0.75in""--encoding""UTF-8""--margin-left""0.75in""-

  2. ruby-on-rails - Rails 编辑表单不显示嵌套项 - 2

    我得到了一个包含嵌套链接的表单。编辑时链接字段为空的问题。这是我的表格:Editingkategori{:action=>'update',:id=>@konkurrancer.id})do|f|%>'Trackingurl',:style=>'width:500;'%>'Editkonkurrence'%>|我的konkurrencer模型:has_one:link我的链接模型:classLink我的konkurrancer编辑操作:defedit@konkurrancer=Konkurrancer.find(params[:id])@konkurrancer.link_attrib

  3. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  4. ruby-on-rails - 无法使用 Rails 3.2 创建插件? - 2

    我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby​​1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在

  5. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  6. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  7. ruby - 无法让 RSpec 工作—— 'require' : cannot load such file - 2

    我花了三天的时间用头撞墙,试图弄清楚为什么简单的“rake”不能通过我的规范文件。如果您遇到这种情况:任何文件夹路径中都不要有空格!。严重地。事实上,从现在开始,您命名的任何内容都没有空格。这是我的控制台输出:(在/Users/*****/Desktop/LearningRuby/learn_ruby)$rake/Users/*******/Desktop/LearningRuby/learn_ruby/00_hello/hello_spec.rb:116:in`require':cannotloadsuchfile--hello(LoadError) 最佳

  8. ruby-on-rails - 使用 Sublime Text 3 突出显示 HTML 背景语法中的 ERB? - 2

    所以我在关注Railscast,我注意到在html.erb文件中,ruby代码有一个微弱的背景高亮效果,以区别于其他代码HTML文档。我知道Ryan使用TextMate。我正在使用SublimeText3。我怎样才能达到同样的效果?谢谢! 最佳答案 为SublimeText安装ERB包。假设您安装了SublimeText包管理器*,只需点击cmd+shift+P即可获得命令菜单,然后键入installpackage并选择PackageControl:InstallPackage获取包管理器菜单。在该菜单中,键入ERB并在看到包时选择

  9. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  10. ruby-on-rails - link_to 不显示任何 rails - 2

    我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article

随机推荐