当用户在EditText中聚焦或键入时,是否可以使TextInputLayout标签垂直显示在EditText的左侧drawable上方.
这是EditText的xml:
<android.support.design.widget.TextInputLayout
android:id="@+id/completion_date_layout2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="1"
android:orientation="horizontal">
<EditText
android:id="@+id/etTaskDate"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:hint="@string/title_completion_date"
android:inputType="text"
android:drawableLeft="@drawable/ic_date"
android:paddingBottom="15dp"
android:drawablePadding="5dp"
android:textSize="@dimen/fields_text_size"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
这是所需的输出:
这是我得到的输出:
我总是更新库更新,这就是它的结果.
在build.gradle(Project:xxx)中:
classpath 'com.android.tools.build:gradle:2.2.0-beta1'
Run Code Online (Sandbox Code Playgroud)
在build.gradle中(模块:app)
compile 'com.android.support:appcompat-v7:24.2.0'
compile 'com.android.support:design:24.2.0'
Run Code Online (Sandbox Code Playgroud)
并输入密码字段如下:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.AppCompatEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword" />
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
Taadaa ...我的密码字段现在如下所示:
你也可以随便去EditText.
但是,此更新中存在一些问题.
问题: 如果我在EditText中放置任何drawableRight,它什么都不显示.TextInputLayout还具有禁用切换功能的属性.我也是这样做的,但没有成功:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:passwordToggleEnabled="false">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableRight="@drawable/ic_alarm_on_black_24dp"
android:inputType="textPassword" />
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我.
android android-edittext android-design-library android-textinputlayout
我对TextInputLayout和Spinner有一个对齐问题,我希望Spinner下划线与TextInputLayout内的EditText下划线对齐.这就是我正在做的事情:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="bottom">
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<EditText
android:id="@+id/txt_discipline_code"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/lbl_input_discipline_code"/>
</android.support.design.widget.TextInputLayout>
<Spinner
android:id="@+id/spnnr_color_discipline_register"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Base.Widget.AppCompat.Spinner.Underlined">
</Spinner>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但是Spinner 有点低于.有人可以帮帮我吗?提前致谢.
编辑:
我达到此对齐设置Spinner layout_marginBottom为1.5dp:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="bottom">
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<EditText
android:id="@+id/txt_discipline_code"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Code"/>
</android.support.design.widget.TextInputLayout>
<Spinner
android:id="@+id/spnnr_color_discipline_register"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Base.Widget.AppCompat.Spinner.Underlined"
android:layout_marginBottom="1.5dp">
</Spinner>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但我担心这在其他设备上不能正常工作,尺寸不同.这是唯一的解决方案吗?
android android-layout android-spinner android-textinputlayout
我有一个TextInputEditText周围包裹TextInputLayout,如谷歌建议做:https://developer.android.com/reference/android/support/design/widget/TextInputLayout.html
但是,我的TextInputEditText上设置了一个OnClickListener,因此当用户点击它时,可以弹出一个DatePickerDialog.
我的问题是,事实上,在第一次点击时除了提示标签移动到TextInputEditText之外没有任何反应.第二次点击时,会显示DatePickerDialog.
我怎么能在第一次点击时显示DatePickerDialog?
在TextInutLayout而不是TextInputEditText上设置onClickListener不起作用.有人有想法吗?
android android-layout android-edittext datepickerdialog android-textinputlayout
当我预先填充EditText字段时,我希望能够将浮动标签放在适当的位置.加载视图时,在将文本设置为浮动标签之前,提示仍会显示在文本后面.在支持库的TextInputLayout中似乎没有这方法.有什么想法吗?
android android-support-library android-design-library androiddesignsupport android-textinputlayout
TextInputLayout显示在获得焦点时提示转换为标签的动画.当用户键入第一个字符时,我想要这个动画.
我想让用户无法编辑textinputlayout,当用户单击它时,我想执行一个操作。我android:focusable="false"在textinputlayout的edittext里面添加了使其无法编辑,但是现在当我单击它时,它在textinputlayout的onclicklistener内没有得到回调。
<android.support.design.widget.TextInputLayout
android:id="@+id/tipVideoFilePath"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/uploadVideo"
android:layout_toLeftOf="@+id/uploadVideo">
<EditText
android:id="@+id/etVideoFilePath"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/dp5"
android:singleLine="true"
android:focusable="false"
android:hint="@string/videoPath"
android:textColor="@color/black"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud) android android-edittext onclicklistener android-textinputlayout
我想要EditText上图中的那个。问题是,如果我使用TextInputLayout它在底部显示默认栏,我希望它周围有自定义边框。
我也尝试使用以下示例,
我想删除AutoCompleteTextView在我使用TextInputLayout和使用样式时创建的下拉箭头:ExposedDropdownMenu

下面是我的代码:
<com.google.android.material.textfield.TextInputLayout
android:layout_marginTop="10dp"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:hint="Marital Status"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:boxStrokeColor="@color/colorPrimaryDark">
<AutoCompleteTextView
android:background="@null"
android:focusable="false"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/edt_marital" />
</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud) android autocompletetextview android-textinputlayout material-components material-components-android
我正在使用以下代码显示或隐藏密码
pwdLayout.setEndIconMode(TextInputLayout.END_ICON_PASSWORD_TOGGLE);
Run Code Online (Sandbox Code Playgroud)
我能够实现显示或隐藏密码。但是带有十字符号的眼睛图标显示密码,没有十字符号的眼睛图标隐藏密码。我需要颠倒这个逻辑怎么做?
android android-edittext android-textinputlayout material-components material-components-android