我正在使用它来显示一种Spinner视图类型TextInputLayout,但我不知道如何为其设置任何默认值。
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.FilledBox.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:hintTextColor="@color/primary_color_3">
<AutoCompleteTextView
android:id="@+id/accType_dropdown"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:backgroundTint="@android:color/transparent"
android:inputType="none"
android:text="@={viewModel.mytext}"
android:lineSpacingExtra="5sp"
android:textColor="@color/name_primary_color"
android:textSize="14sp" />
</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
占位符仅在处于焦点模式时有效,因此请提出解决方法。
编辑:
我在此文本视图中使用两种方式的数据绑定,因此似乎没有解决方案适用于我的情况。即使我尝试为绑定对象设置默认值,它也会在应用程序启动时自动弹出我不需要的微调器,所以请给我建议。
android autocompletetextview android-textinputlayout material-components-android
我在应用程序中使用 TextInputLayout,并且想更改 boxStroke 颜色。我使用 app:boxStrokeColor = "@color/white"来更改 Box Stroke 颜色,但 BoxStrokeColor 的颜色没有改变。
但是,当我将以下代码块添加到 color.xml 中时,当我在应用程序中使用它时,它会影响应用程序中所有 TextInputLayout 的 boxStrokeColor。
<colorname="mtrl_textinput_default_box_中风_color"tools:override="true">@color/white 如何解决该问题?相关代码块
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColorHint="@color/LightBlue"
android:theme="@style/ThemeOverlay.AppTheme.TextInputEditText.Outlined"
app:boxStrokeColor="@color/white"
app:boxStrokeWidth="3dp"
app:startIconTint="@color/white">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/numberOfPlayer_txt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:focusable="true"
android:focusableInTouchMode="true"
android:textColor="@color/gold"
/>
</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
很有型 :
<style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppBaseTheme" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
<item name="android:windowBackground">@color/Thistle</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
</style>
<style name="ThemeOverlay.AppTheme.TextInputEditText.Outlined" parent="">
<item name="colorPrimary">@color/white</item>
<item name="boxCornerRadiusBottomEnd">20dp</item>
<item name="boxCornerRadiusBottomStart">20dp</item>
<item name="boxCornerRadiusTopEnd">20dp</item>
<item name="boxCornerRadiusTopStart">20dp</item>
<item …Run Code Online (Sandbox Code Playgroud) 我正在使用创建一个下拉菜单AutoCompleteTextView。如何删除列表顶部和底部的默认边距?
重新创建:
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:boxBackgroundColor="@color/white"
android:focusable="false"
app:boxStrokeWidth="1.5dp"
app:layout_constraintTop_toBottomOf="@+id/spinner_network">
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView"
android:layout_width="250dp"
android:layout_height="match_parent"
android:inputType="none"
android:dropDownHeight="200dp"
android:text="Select age" />
</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
List<String> dropdownItems = new ArrayList<>();
for(int i = 1; i <= 100; i++){
dropdownItems.add(String.valueOf(i));
}
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<>(
this, R.layout.dropdown_item, dropdownItems
);
AutoCompleteTextView autoCompleteTextView = findViewById(R.id.autoCompleteTextView);
autoCompleteTextView.setAdapter(spinnerAdapter);
Run Code Online (Sandbox Code Playgroud)
R.layout.dropdown_item
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textView"
android:layout_width="match_parent"
android:textColor="@color/black"
android:padding="14dp"
android:layout_height="wrap_content"
android:text="TextView" />
Run Code Online (Sandbox Code Playgroud) android autocompletetextview material-design android-textinputlayout material-components-android
我正在使用TextInputLayout和浮动标签提示.但在正常状态下,我无法将提示颜色从白色更改为其他颜色.有没有办法做到这一点 ?
<android.support.design.widget.TextInputLayout
android:id="@+id/fullNameTextLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:layout_weight="0.75">
<EditText
android:id="@+id/etFullName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginLeft="15dp"
android:layout_marginEnd="15dp"
android:layout_marginRight="15dp"
android:singleLine="true"
android:hint="Full Name"
android:textColor="@color/gray_dark"
android:textColorHint="@color/green"
android:textColorHighlight="@color/green" />
</android.support.design.widget.TextInputLayout>Run Code Online (Sandbox Code Playgroud)
在背景改变的情况下附加两个屏幕截图.
android android-layout android-edittext android-textinputlayout
我使用EditText带TextInputLayout.TextInputLayout如果禁用EditText,我只想更改浮动提示颜色.我尝试使用选择器它不起作用.
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:textColor="@color/darkGray" />
<item android:state_pressed="false" android:state_focused="false" android:textColor="@color/lightGray"/>
</selector>
Run Code Online (Sandbox Code Playgroud) 我在我的Activity中以编程方式定义了TextInputLayout.我已经在TextInputLayout中添加了EditText,以编程方式.
现在,我必须设置该edittext的提示颜色.在这里,我只需要改变提示的单个字母的颜色.
Example - Hint is like, Firstname *. Here i want to change the color of "*" to Red and remaining hint as black in color.
Run Code Online (Sandbox Code Playgroud)
我已经尝试过Html和Spannable String,但两者都不适用于TextInputLayout.
对于Spannable我做了
SpannableString redSpannable = new SpannableString(red);
redSpannable.setSpan(new ForegroundColorSpan(Color.RED), 0, red.length(), 0);
Spanned hint = Html.fromHtml(string + redSpannable);
etDefault[j].setHint(hint);
Run Code Online (Sandbox Code Playgroud)
对于HTML,
I used "font-color"
Run Code Online (Sandbox Code Playgroud)
如果有人知道这一点,那么分享您的意见.
android android-edittext android-design-library android-textinputlayout
有没有办法强制 TextInputLayout 错误消息采用单行?
我尝试将app:errorTextAppearance="@style/error_appearance"包含以下内容的 error_appearance 样式放置在 TextInputLayout 上:
<item name="android:maxLines">1</item>
<item name="android:ellipsize">end</item>
<item name="android:inputType">text</item>
Run Code Online (Sandbox Code Playgroud)
它不起作用。然而,改变颜色是有效的。我不明白,mErrorView 只是一个 TextView,它应该可以工作。
我正在使用TextInputLayout和TetInputEditText来获取浮动提示.现在我想更改编辑文本的提示和底线的颜色.我想让用户点击编辑文本时进行更改.
所以我尝试更改编辑文本的onClickListener颜色.但我没有发现颜色有任何变化.
xml布局:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:orientation="vertical">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout_item_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="20dp"
android:paddingTop="05dp">
<android.support.design.widget.TextInputEditText
android:layout_width="240dp"
android:layout_height="45dp"
android:id="@+id/editTextItemName"
android:layout_gravity="center_horizontal"
android:hint="@string/item_name"
android:textSize="12sp" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
java代码:
public void setUpUI(){
edt_Item_Name = (TextInputEditText) findViewById(R.id.editTextItemName);
edt_Item_quantity = (TextInputEditText)findViewById(R.id.editTextItemQuantity);
edt_Item_Unit = (TextInputEditText)findViewById(R.id.editTextItemUnit);
textInput_Item_name = (TextInputLayout)findViewById(R.id.input_layout_item_name);
textInput_Item_quantity = (TextInputLayout)findViewById(R.id.input_layout_item_quantity);
textInput_Item_Unit = (TextInputLayout)findViewById(R.id.input_layout_item_unit);
edt_Item_Name.getBackground().mutate().setColorFilter(ContextCompat.getColor(this, R.color.edtColor), PorterDuff.Mode.SRC_ATOP);
edt_Item_Name.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
edt_Item_Name.setHintTextColor(ContextCompat.getColor(SearchActivity.this, R.color.edtColor));
edt_Item_Name.getBackground().mutate().setColorFilter(ContextCompat.getColor(SearchActivity.this, R.color.edtColor), PorterDuff.Mode.SRC_ATOP);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
java android colors android-textinputlayout android-textinputedittext
我在我的一个应用布局中使用TextInputLayout.我的应用程序在Lollipop(5.1)及更高版本的用户设备上崩溃.以下是错误
android.view.InflateException: Binary XML file line #34: Binary XML file line #2: Error inflating class android.support.design.widget.TextInputLayout arrow_drop_down
Caused by android.view.InflateException: Binary XML file line #34: Binary XML file line #2: Error inflating class android.support.design.widget.TextInputLayout arrow_drop_down
Caused by android.view.InflateException: Binary XML file line #2: Error inflating class android.support.design.widget.TextInputLayout arrow_drop_down
Caused by java.lang.reflect.InvocationTargetException: arrow_drop_down
Caused by android.content.res.Resources$NotFoundException: File res/drawable-v21/design_password_eye.xml from drawable resource ID #0x7f0200b1 arrow_drop_down
Caused by android.content.res.Resources$NotFoundException: File res/drawable-v21/avd_show_password.xml from drawable resource ID #0x7f02005c arrow_drop_down
Caused by android.content.res.Resources$NotFoundException: File res/drawable-v21/avd_show_password_1.xml from …Run Code Online (Sandbox Code Playgroud) android android-layout android-support-library android-support-design android-textinputlayout
我用来TextInputLayout从用户那里获取密码,如下所示:
<android.support.design.widget.TextInputLayout
android:id="@+id/RegisterPassInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
app:passwordToggleEnabled="true"
android:layout_marginRight="16dp"
android:layout_toStartOf="@+id/RegisterPassImg">
<EditText
android:id="@+id/RegisterPassET"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:hint="@string/Password"
android:inputType="textPassword"
android:maxLength="40" />
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
结果是:
但我想要这样的东西:
如何在editText左侧设置passwordToggle gravity align.
出于很多原因,我rtl在清单中禁用了支持
android:supportsRtl="false"
Run Code Online (Sandbox Code Playgroud)