Tag: android edittext

EditText和TextInputLayout以编程方式添加不采摘风格,不显示软键盘

我正在开发一个库模块,我希望允许客户端为EditText和TextInputLayout UI组件传递样式资源。 为了使用传递的布局,我需要在运行时对这两个组件进行充气,并将它们添加到父布局中。 当我这样做,一个奇怪的行为发生: InputTextLayout不会选择传递的样式; 点击EditText时,软键盘不会被触发。 父级布局 <android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar_wrapper" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar android:id="@+id/search_toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorPrimary" android:minHeight="?attr/actionBarSize" app:layout_scrollFlags="scroll|enterAlways"> <LinearLayout android:id="@+id/toolbar_inner_container" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:gravity="center_vertical" android:orientation="horizontal" android:padding="3dip" android:weightSum="7"> <ImageView android:id="@+id/back" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/ic_arrow_left_white_24dp" /> </LinearLayout> </android.support.v7.widget.Toolbar> <br.com.edsilfer.kotlin_support.presenter.layout.LineProgressBar android:layout_width="match_parent" android:layout_height="wrap_content" app:colorLine="@color/clr_theme_light_text" /> 样本预设样式: <!– THEME LIGHT –> <!– search bar input text –> <style name="TextInputThemeDark"> […]

如何以编程方式在我的EditText上设置焦点(并显示键盘)

我有一个布局,其中包含这样的一些意见: <LinearLayout> <TextView…> <TextView…> <ImageView …> <EditText…> <Button…> </linearLayout> 我怎样才能以编程方式在我的EditText上设置焦点(显示键盘)? 我试过这个,它只有当我正常启动我的Activity ,但是当我在一个TabHost启动它,它不起作用。 txtSearch.setFocusableInTouchMode(true); txtSearch.setFocusable(true); txtSearch.requestFocus();

如何改变Android中EditText的焦点颜色

如何更改EditText框上的焦点颜色(橙色)? 焦点颜色是整个控件周围的一个小圈,当控件具有焦点时,它是亮橙色。 我如何将焦点的颜色改变为不同的颜色? 任何人都可以帮我解决这个问题? 提前致谢,

如何在EditText中设置光标位置?

有两个EditText ,当加载页面时在第一个EditText中设置了一个文本,所以现在的光标将会在EditText的起始位置,我要在第二个EditText中设置光标位置,它不包含任何数据。 如何做到这一点?

Android仅为Edittext禁用空间

在我的android应用程序中,我只需要禁用空格键。 但是我没有找到解决这个问题的办法。 我需要禁用空格键,当用户输入空格不应该工作,特殊字符,字母,数字和所有其他应该工作。 我试过的是, etPass.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub String str = s.toString(); if(str.length() > 0 && str.contains(" ")) { etPass.setError("Space is not allowed"); etPass.setText(""); } } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // […]

EditText社会安全号码

我正在为加利福尼亚州的Android开发一个应用程序 现在我想在xxx-xx-xxxx格式的编辑文本中输入社会安全号码。 我已经尝试下面的代码来实现功能,但它不能正常工作清除文本..以下是我的代码。 任何帮助将不胜感激。 我想要自动格式功能。 etSocialSecurityNumber.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { String text = etSocialSecurityNumber.getText().toString(); textlength = etSocialSecurityNumber.getText().length(); if(text.endsWith(" ")) return; if(textlength == 4 || textlength == 7 ) { etSocialSecurityNumber.setText(new StringBuilder(text).insert(text.length()-1, "-").toString()); etSocialSecurityNumber.setSelection(etSocialSecurityNumber.getText().length()); } } @Override public void beforeTextChanged(CharSequence s, int start, int count, int […]

在Android EditText中,如何强制大写?

在我的Android应用程序中,我有不同的EditText用户可以输入信息。 但是我需要强制用户用大写字母来写。 你知道一个功能吗?

扩展EditText的视图会丢失样式,并且不可聚焦

我尝试使用kotlin为方便的原因(NumberEdit)继承EditText,但渲染后的View失去了大部分的EditText属性。 外观是一个TextView的,它不是用鼠标(在模拟器中)可以聚焦的。 当我点击活动时,我可以编辑第一个NumberEdit小部件,并可以使用Tab键循环到下一个小部件。 我添加了两个模拟器截图来说明不同之处。 一个EditText看起来像这样 新的NumberEdit看起来像这样 扩展类看起来像这样: import android.content.Context import android.text.InputType import android.util.AttributeSet import android.widget.EditText class EditNumber(context: Context, attributeSet: AttributeSet?, defStyleAttr: Int, defStyleRes: Int) : EditText(context, attributeSet, defStyleAttr, defStyleRes) { constructor(context: Context) : this(context, null, 0, 0) constructor(context: Context, attributeSet: AttributeSet?) : this(context, attributeSet, 0, 0) constructor(context: Context, attributeSet: AttributeSet?, defStyleAttr: Int) : this(context, attributeSet, […]

为什么在OnFocusChangeListener中调用setText()会清除视图中的文本?

当我从onFocusChangeListener中调用setText()而不是使字段显示文本“hello World”时,它是空白的。 当字段失去焦点时,如何获得文本更新? 代码在Kotlin: editText.setOnFocusChangeListener { view, hasFocus -> (view as EditText).setText("hello World") }

Android RecyclerView使用Kotlin处理数据:修改后的行切换索引

我正在Kotlin编写我的第一个Android项目,并与recyclerView很难。 MutableList <String>用作我的适配器的数据源,并具有编辑模式和正常模式。 onCreateViewHolder()用内部的editText膨胀一个视图,然后创建一个视图持有者来保存这个视图。 ViewHolder有一个包含我的逻辑的函数bindSkill()。 onBindViewHolder()调用viewHolder.bindSkill() bindSkill()具有在EditMode和Normal Mode之间转换的逻辑。 当我将EditMode设置为true时,应该发生三件事情: EditText字段应该设置为.isEnable = true(允许用户编辑文本字段) 应该将EditText字段的背景设置为.background = R.drawable.m_gray_border(向用户显示文本字段) 从mStringMutableList加载文本(如果需要?) 当再次按下时,倒过程应该运行(有一些修改: EditText字段应该设置为.isEnable = false EditText字段应该将背景设置为.background = null(隐藏文本字段边框) 保存来自mStringMutableList的文本(如果需要?) 使用•%1 $ s格式化字符串以制作项目符号列表 问题 当用我的数据加载适配器时,它将被编辑文本字段中的空字符串覆盖。 另外,当我进入编辑模式,并更改文本字段的recycleView行开始切换的地方。 文本按预期更改并存储和格式化,但会移至新索引。 如果你填写所有的文本字段,他们将被颠倒,但是如果你只改变了几个,他们就会随机地改变位置。 这种问题有没有普遍的做法? 它接缝很简单,但我不能弄明白。 任何帮助表示赞赏! 代码 活动: class ProfileActivity : BaseActivity() { private lateinit var recyclerViewProfile: RecyclerView private lateinit var linearLayoutManager: LinearLayoutManager private lateinit var […]