Articles of edittext

在Android中使用千位分隔符(,)键入时如何格式化EditText的input?

我有一个edittext ,它只能得到没有十进制数字的数字。 android:inputType="number" 我打字的时候要分开数千个。 例如25,000。 我知道我应该使用TextWatcher ,我已经使用这个代码,但我不能让它工作: @Override public void afterTextChanged(Editable viewss) { String s = null; try { // The comma in the format specifier does the trick s = String.format("%,d", Long.parseLong(viewss.toString())); } catch (NumberFormatException e) { } } 你能帮我这么做吗?

EditText如何在电话方向改变时保留它的值而不是textview?

Edittext有什么特别的地方,它可以保留这个值而不是Textview和其他一些小部件,我们必须为它们使用onSavedInstance()方法。 EditText的特殊之处在于它可以保留这些值吗? 如果有人可以说出它是如何工作的。 <—- —-更新> 它如何在内部工作,请指出解释这种情况的那部分代码。

调整Resize不在棒棒糖和以上半透明状态/ Nav工作

有问题在谈论这个问题,但我没有解决我现有的答案。 这是我的styles-v21.xml: <style name="MainTheme" parent="Theme.AppCompat.NoActionBar"> <item name="android:windowTranslucentStatus">true</item> <item name="android:windowTranslucentNavigation">true</item> <item name="android:colorBackground">#EEEEEE</item> </style> 我已经为相关的Activity设置了windowSoftInputMethod =“adjustResize”当然。 这是我的layout.xml,请注意,根FrameLayout用于特定的function,因此它是需要的: <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:id="@+id/rl_background" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <!–This View is used to fill the space of status bar–> <View android:id="@+id/statusbar" android:layout_width="match_parent" android:layout_height="@dimen/statusbar_size"/> <!–I've set this toolbar as Actionbar–> <android.support.v7.widget.Toolbar android:id="@+id/actionbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_below="@id/statusbar"/> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@id/actionbar"> <RelativeLayout […]

CoordinatorLayout搞乱setErrorpopup位置

我遇到了EditText setErrorpopup位置的问题。 我正在使用下面的代码来创build布局: activity_profile.xml <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".ProfileActivity" android:orientation="vertical"> <android.support.design.widget.AppBarLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" /> </android.support.design.widget.AppBarLayout> <include layout="@layout/profile" /> </android.support.design.widget.CoordinatorLayout> 是profile.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context=".ProfileActivity" tools:showIn="@layout/activity_profile"> <EditText android:id="@+id/etProfileName" android:layout_width="match_parent" android:layout_height="50dp" android:capitalize="words" android:hint="@string/et_hint_profile_name" android:textAlignment="center" /> </RelativeLayout> […]

android:TextInputLayout隐藏drawText的子EditText

我总是更新库更新,这是它的结果。 在build.gradle(Project:xxx)中: classpath 'com.android.tools.build:gradle:2.2.0-beta1' 在build.gradle(模块:应用程序) compile 'com.android.support:appcompat-v7:24.2.0' compile 'com.android.support:design:24.2.0' 并把密码字段如下所示: <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> Taadaa …我的密码字段现在看起来如下: 你也可以简单地使用EditText 。 但是,这个更新有一些小故障。 问题:如果我把任何drawableRight放在EditText中,它什么也不显示。 TextInputLayout也有属性来禁用切换function。 我也是这样做了,但没有成功: <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> 任何人都可以帮助我。

Android EditText,通过inputType =“number | numberSigned | numberDecimal”减去转换为点事件

我有一个用户谁拥有Android 4.4.2的LG VS890 4G 。 显然每次当他试图在我的纬度/经度坐标inputEditText插入一个减号时,他的减号被转换成一个点。 如果他将负坐标粘贴到EditText他会遇到同样的问题。 <EditText android:id="@+id/long_degrees_et_id" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:inputType="number|numberSigned|numberDecimal" > 问题是他只在使用软键盘时遇到这种情况。 在硬盘上按预期工作。 这里是他的手机在尝试input坐标时的屏幕截图: 我知道这是一个inputType问题,因为我给了他一个没有inputType的构build,它很好(除了他的键盘不打开数字types)。 他是唯一一个报告这个问题的人,我不能复制它。 我真的想保持inputtypes的数字,以便键盘自动打开数字。 任何想法如何解决这个问题?

Android的EditText混合到背景

我的应用程序使用Theme.Holo.Light.DarkActionBar作为父主题。 当我使用我的Android 3.2平板电脑模拟器时,EditText形状几乎不可见。 它看起来像试图画白色的白色。 在这里看到: 当我在我的Android 4.0平板模拟器上使用它时,EditText形状看起来很好。 您可以看到EditText底部的深灰色线条。 如果你看上面的图像,你只是几乎看不到白色的线在同一个地方,因为它穿过浅灰色的背景水印。 这是我的EditText在布局中: <EditText android:id="@+id/fieldName" style="@style/PlayerDetails.Field" android:capitalize="words" /> 这里是风格: <style name="PlayerDetails.Field"> <item name="android:layout_weight">0.65</item> <item name="android:paddingLeft">10dp</item> <item name="android:layout_width">0dp</item> <item name="android:layout_height">fill_parent</item> <item name="android:layout_marginLeft">10dp</item> </style> 为什么我的EditText得到错误的颜色? 我不重写绘图代码或背景绘制。

自定义EditText在通过setInputType()设置其inputtypes后无法工作

我创build了一个自定义的EditText ,并覆盖了onDraw()函数。 一切工作正常(我可以在EditText中绘制任何东西),直到我想改变这个EditText的input方法,并调用这个函数: setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); 不pipe何时何地,我调用它后,我的自定义EditText消失,只显示原始的EditText ,虽然我重写的onDraw()函数,并在其中,其超级函数被调用(不pipe在哪里正是我援引它)。 我也尝试玩一些在这里的一些postbuild议透明的颜色: setBackgroundColor(Color.TRANSPARENT)在基类,也paint.setColor(0x80FF0000)在我的Paint对象onDraw()函数,但他们没有效果。 编辑:我发现问题不在于设置inputtypes,而是同时设置inputtypes和EditText重力: setGravity(Gravity.CENTER_HORIZONTAL); 如果它们中的任何一个没有设置,我的自定义视图按预期绘制。 另外(甚至更奇怪):与Gravity.CENTER_VERTICAL没有问题,只有Gravity.CENTER_HORIZONTAL和Gravity.CENTER 。 看起来这两个设置是相互排斥的。 这可能吗?

当软键盘出现时,状态栏出现,但是当进入沉浸模式时软键盘消失时不会隐藏状态栏

最初,我使用下面的代码将我的Activity设置为Immersive Mode: View decorView = getWindow().getDecorView(); decorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 一切正常,直到用户点击一个EditText并出现软键盘。 它会导致状态栏粘在顶部,即使软键盘消失后也不会再隐藏。 奇怪的是,我只在LG /三星手机上遇到这个问题,索尼手机对此没有任何问题。 任何人有这个想法吗?

新的密码可见性切换为EditTexts打破了现有的drawableRight?

编辑我只是尝试了一个没有TextInputLayout的EditText ,它按预期工作。 所以这个问题必须在TextInputLayout有新的改变。 我已经使用一个自定义的EditText类作为一个TextInputLayout孩子大约一个月。 当用户键入时, x将出现在drawableRight字段中。 我已经成功地显示了drawableLeft , drawableTop和drawableBottom ,但是设置drawableRight为我提供了一个空白。 注意:单击X SHOULD所在的空白区域可以正常工作,文本被清除。 这第一张照片是它原来的样子: 自升级到support-v4:24.2.0 ,function已被打破。 它现在放置在带有drawableBottom的可绘制集合出现的“x”处。 第二张图片显示了新的行为: XML代码 <android.support.design.widget.TextInputLayout android:id="@+id/til_delivery_info_state" android:hint="@string/state_hint" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/large_margin" android:layout_marginRight="@dimen/large_margin"> <com.example.ui.edittexts.ClearableEditText android:id="@+id/et_state" android:inputType="textCapWords|text|textNoSuggestions" android:nextFocusDown="@+id/et_di_zip_code" android:text="@={deliveryViewModel.state}" android:gravity="center_vertical|left" android:singleLine="true" android:textSize="@dimen/text_size"/> </android.support.design.widget.TextInputLayout> Java的 final Drawable drawable = ContextCompat.getDrawable(context, R.drawable.ic_clear_text_gray_x); final Drawable wrappedDrawable = DrawableCompat.wrap(drawable); mClearTextIcon.setBounds(0, 0, mClearTextIcon.getIntrinsicWidth(), mClearTextIcon.getIntrinsicHeight()); mClearTextIcon.setVisible(true, false); final Drawable[] compoundDrawables […]