Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 当EditText未聚焦时,如何展开它?_Android_Android Edittext - Fatal编程技术网

Android 当EditText未聚焦时,如何展开它?

Android 当EditText未聚焦时,如何展开它?,android,android-edittext,Android,Android Edittext,我正在做一个类似whats应用程序的消息视图,我希望底部的EditText有一个“发送”按钮/图标,如果它聚焦了,如果没有聚焦,则隐藏/删除该按钮并展开编辑文本。我不知道如何在运行时执行扩展和删除操作。如果有人能提供一些线索,我会非常感激。使用OnFocusListener在EditText的焦点改变时触发您想要的事件 使用setVisibility隐藏和显示按钮,并通过getLayoutParams()更改EditText的宽度。宽度 m_editText.setOnFocusChangeLi

我正在做一个类似whats应用程序的消息视图,我希望底部的EditText有一个“发送”按钮/图标,如果它聚焦了,如果没有聚焦,则隐藏/删除该按钮并展开编辑文本。我不知道如何在运行时执行扩展和删除操作。如果有人能提供一些线索,我会非常感激。

使用
OnFocusListener
EditText
的焦点改变时触发您想要的事件

使用
setVisibility
隐藏和显示
按钮
,并通过
getLayoutParams()更改
EditText
的宽度。宽度

m_editText.setOnFocusChangeListener((v, hasFocus) -> {
            if (hasFocus) {
                m_button.setVisibility(View.GONE);
                m_editText.getLayoutParams().width=400;
            } else {
                m_button.setVisibility(View.VISIBLE);
                m_editText.getLayoutParams().width=200;
            }
        });
您还可以通过以下操作将尺寸设置为
dp

TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, YOUR_SIZE_HERE, getApplication().getResources().getDisplayMetrics());

请添加一个您已经拥有的示例