相关疑难解决方法(0)

单击编辑文本时推送内容

我到处寻找解决我的问题但找不到答案的方法.这是问题所在.

我的布局看起来像这样

图像在这里

现在当我点击编辑文本(搜索栏)时,我希望发生以下情况

图像在这里

软键盘基本上需要向上推整个屏幕内容,以便搜索栏位于顶部,其列表视图位于其下方,以便在搜索内容时显示结果.我已尝试设置android:windowSoftInputMode="adjustPan"Activity清单中,但这不起作用.我将滚动视图设置为主布局中的主容器,其中包含片段,但也无效.我已经尝试将编辑文本(搜索栏)作为标题添加到列表视图中,但这也不起作用.每次键盘向上推动编辑文本但覆盖列表视图.有没有办法让这项工作?

android

57
推荐指数
6
解决办法
8万
查看次数

44
推荐指数
2
解决办法
6万
查看次数

如何保持RecyclerView始终滚动到底部

我使用Recyclerview替换列表视图我想保持Recyclerview始终滚动到底部.

ListView可以使用此方法 setTranscriptMode(AbsListView.TRANSCRIPT_MODE_ALWAYS_SCROLL)

RecyclerView我用的方法 smoothScrollToPosition(myAdapter.getItemCount() - 1)

但是当软键盘弹出时,它取代了RecyclerView的内容.

android android-recyclerview

39
推荐指数
4
解决办法
4万
查看次数

软键盘打开时调整布局

我在一些应用程序中看到,当显示软键盘时,布局会发生变化.这当然不是adjustPan因为整个布局(可能是内部布局)的变化,而不仅仅是当前的变化EditText.例如,这是在Evernote登录屏幕中.你能告诉我这是怎么做的吗?

android

37
推荐指数
3
解决办法
6万
查看次数

如何使用adjustResize设置隐藏键盘下方的BottomNavigationView

根据材料设计规范,当键盘出现时,BottomNavigationView应该隐藏在它下面.但是,如果我android:windowSoftInputMode="adjustResize"在Activity的清单中设置BottomNavigationView了键盘上方的移动.

我需要设置adjustResize为在键盘打开时滚动到屏幕底部.但是,我不希望它BottomNavigationView是可见的.可以这样做吗?

它目前的样子:

在此输入图像描述

布局XML(实际上会有一个FrameLayout在哪里,EditText并且EditText将在其中):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    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="match_parent">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Input"
        android:layout_gravity="center"
        android:layout_centerVertical="true"/>

    <android.support.design.widget.BottomNavigationView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:itemBackground="@color/colorPrimary"
        app:menu="@menu/menu_bottom_navigation"
        app:itemIconTint="@android:color/white"
        app:itemTextColor="@android:color/white"/>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

android android-softkeyboard bottomnavigationview

29
推荐指数
3
解决办法
9806
查看次数

android:windowSoftInputMode ="adjustResize"没有任何区别?

我有一个使用这种布局的虚假对话框:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout    xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_height="match_parent"
                android:layout_width="match_parent"
                android:id="@+id/containerPageConatiner">

    <FrameLayout    android:id="@+id/dialogHolder"
                    android:layout_height="wrap_content"
                    android:layout_width="wrap_content"
                    android:padding="15dp"
                    android:layout_gravity="center"
                    android:background="@drawable/panel_picture_frame_bg_focus_blue"/>    
</FrameLayout> 
Run Code Online (Sandbox Code Playgroud)

<FrameLayout>根据打开的对话框放置一个片段- 控制Dialog的活动如下所示:

<activity
    android:label="@string/app_name"
    android:name=".activity.DialogActivity"
    android:theme="@style/CustomTheme.Screen.Transparent" 
    android:windowSoftInputMode="adjustResize">
Run Code Online (Sandbox Code Playgroud)

不幸的是,当您单击对话框内的编辑文本时,不会进行大小调整.在windowSoftInputMode字面上没有什么区别的功能是一样的全景模式.

文档说"这当然只适用于具有可调整区域的应用程序,可以缩小以留出足够的空间",但不会告诉您"可调整区域"的含义,并让我认为在某种程度上我喜欢Ť有一个可调整大小的面积?

如果有人知道什么事可以帮助我吗?

编辑

如此围绕对话框不会改变任何东西:

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

    <View
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="1" />

    <FrameLayout    
        android:id="@+id/dialogHolder"
        android:layout_height="wrap_content"
    android:layout_width="wrap_content"
        android:padding="15dp"
        android:layout_gravity="center"
        android:background="@drawable/panel_picture_frame_bg_focus_blue"/>

    <View
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="1" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

EDIT2

Scrollview作为父级也无济于事:

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

    <FrameLayout
            android:id="@+id/dialogHolder"
            android:layout_width="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-keypad android-layout android-input-method

28
推荐指数
2
解决办法
4万
查看次数

获得软键盘的尺寸

有没有办法知道屏幕上显示的键盘大小?

我正在使用Cocos2dx进行编程,但我想知道Android部分或Cocos部分屏幕中显示的键盘高度,这没关系.

我知道Keyboard有一个getHeight()方法,但我不想创建新的键盘,我想使用默认键盘.

keyboard android cocos2d-x

25
推荐指数
4
解决办法
5万
查看次数

当应用程序进入前台时,保持EditText的键盘打开/关闭状态

我有一个Activity在配置更改(所需)上重新创建的.我有一个在布局中使用单个DialogFragment调用.setRetainInstance(true)EditText

在DialogFragment中,onActivityCreated我打电话给:

getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
Run Code Online (Sandbox Code Playgroud)

A)如果我打开键盘然后当我将应用程序放入背景然后将其带到foregournd然后我希望键盘仍然显示.

B)如果我关闭键盘(EditText仍有焦点并显示所需行为的光标),那么如果我将应用程序放入背景然后将其带到前台,我希望键盘仍然关闭.

我似乎无法同时实现A)和B).当我将应用程序带到前台时,键盘始终处于关闭状态.我试过.SOFT_INPUT_STATE_ALWAYS_VISIBLE但键盘始终打开.

提前感谢您对我如何实现这一目标的任何建议.我也希望在旋转时保持这种键盘状态,但是我要离开那一天了.彼得.

编辑 请注意,我希望防止在配置改变而重新创建活动.

我还试验了WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED在手机上旋转时保持键盘打开/关闭状态(单窗格布局)但是a)不适用于双窗格布局b)在将应用程序带到前台时没有保持键盘状态.

android android-widget

24
推荐指数
2
解决办法
9510
查看次数

在EditText上获取关键事件

如何在EditText上键入时按下后退键的事件?当显示虚拟键盘并且用户按下时,它将被隐藏.我想处理此事件,但在EditText中设置OnKeyListener没有帮助.

android listener android-edittext

22
推荐指数
3
解决办法
4万
查看次数

Android:如何判断软键盘是否显示?

继承人的困境:我正在显示一个屏幕,其中有一个输入字段和一个标签内的2个按钮(共有3个标签,它们位于屏幕的底部).2个按钮设置在屏幕的左下方和右下方,位于选项卡的正上方.当我点击输入字段时,标签和按钮都被推到键盘顶部.

我希望只按下按钮,并将标签保留在原来的位置,在底部.一旦我确定软键盘正在显示,我正在考虑将标签的可见性设置为GONE,并且一旦软键盘消失就可以看到VISIBLE.

是否有某种类型的软键盘监听器,或者输入字段?也许OnFocusChangeListener是编辑文本的一些棘手的用法?如何确定键盘是否可见?

android

20
推荐指数
1
解决办法
2万
查看次数