Android:键入时将TextInputEditText保留在视图中

Android:键入时将TextInputEditText保留在视图中,第1张

概述我正在尝试使用几个TextInputEditText元素创建一个活动.这些放置在页面的大约一半处,导致它们在出现时被键盘覆盖.因此,我正在尝试在AppManifest.xml中使用windowSoftInputMode=“adjustPan”来使屏幕滚动以在输入时保持文本框在视图中.然而,所有这一尝试似乎都失败了.下面是我正

我正在尝试使用几个TextinputEditText元素创建一个活动.这些放置在页面的大约一半处,导致它们在出现时被键盘覆盖.因此,我正在尝试在AppManifest.xml中使用windowsoftinputMode =“adjustPan”来使屏幕滚动以在输入时保持文本框在视图中.

然而,所有这一尝试似乎都失败了.下面是我正在使用的布局层次结构,接下来是一些我已经尝试无效的解决方案示例.

布局xml

<ScrollVIEw    androID:layout_height="match_parent"    androID:layout_wIDth="match_parent"    xmlns:androID="http://schemas.androID.com/apk/res/androID"    androID:fillVIEwport="true"    androID:isScrollContainer="false">    <androID.support.constraint.ConstraintLayout        xmlns:androID="http://schemas.androID.com/apk/res/androID"        xmlns:app="http://schemas.androID.com/apk/res-auto"        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content">        <androID.support.design.Widget.TextinputLayout            androID:ID="@+ID/inputA"            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content">            <androID.support.design.Widget.TextinputEditText                androID:ID="@+ID/inputAText"                androID:layout_wIDth="match_parent"                androID:layout_height="match_parent"/>        </androID.support.design.Widget.TextinputLayout>        <androID.support.design.Widget.TextinputLayout            androID:ID="@+ID/inputB"            androID:layout_wIDth="match_parent"            androID:layout_height="wrap_content">            <androID.support.design.Widget.TextinputEditText                androID:ID="@+ID/inputBText"                androID:layout_wIDth="match_parent"                androID:layout_height="match_parent"/>        </androID.support.design.Widget.TextinputLayout>   </androID.support.constraint.ConstraintLayout></ScrollVIEw>

AndroIDManifest.xml片段

<activity    androID:name=".activitIEs.MyActivity"    androID:windowsoftinputMode="adjustPan"    androID:screenorIEntation="sensorPortrait"    androID:theme="@style/Apptheme.NoActionbar" />

试图解决方案

>将windowsoftinputMode =“adjustPan”添加到AppManifest.xml中的相关活动(我也根据其他StackOverflow建议尝试了adjustResize和adjustPan | adjustnothing)
>将ConstraintLayout放在ScrollVIEw中
>向所述ScrollVIEw添加androID:isScrollContainer =“false”
>重新创建布局文件,仅将ConstraintLayout和TextinputEditText约束到所述布局的底部
>将TextinputEditText更改为EditText并删除TextinputLayout
>将ConstraintLayout更改为relativeLayout

对于什么应该是一个相当简单的实现我不知所措.任何进一步的建议表示赞赏如有必要,我很乐意提供更多代码示例.

解决方法:

发现问题了!在我的主题中,我声明了< item name =“androID:windowTranslucentStatus”> true< / item>.由于某种原因,这打破了windowsoftinputMode =“adjustPan”,因此我删除了它.

为了保持状态栏透明,我使用< item name =“androID:statusbarcolor”> @ color / transparent< / item>.

希望某人有一天会觉得这很有用.

总结

以上是内存溢出为你收集整理的Android:键入时将TextInputEditText保留在视图中全部内容,希望文章能够帮你解决Android:键入时将TextInputEditText保留在视图中所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1118572.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存