Articles of android edittext

Android:在所有EditTexts中禁用软键盘

我正在Android上使用几个EditText进行对话。 我已经把这一行放在onCreate()为了禁用软键盘: Keypad.this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 问题是只有在对话出现时才会有效,什么也不做。 当我移动到下一个EditText ,键盘出现,不会下降。 有没有人有一个想法如何解决这个问题?

我怎样才能改变一个EditText和一个button的高度?

我有这个EditText和Button,我必须减less它的高度。 我尝试使用android:height="10px"但它不起作用。 顺便说一句android:width="180px"工作正常,那么我不知道为什么我不能调整高度。 这里是代码: <EditText android:id="@+id/Movile" android:layout_alignBaseline="@+id/MovileLabel" android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:width="180px" android:height="10px"/> <Button android:id="@+id/inviteButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/invite" android:width="100px" android:height="5px" android:layout_marginLeft="40dip"/>

在Listview android中编辑文本

我有与editext和textview的列表视图。 当我触摸edittext然后编辑文本失去了焦点! 我通过设置android:windowSoftInputMode="adjustPan"(AndroidManifest.xml)解决了这个问题。 现在我触摸edittext比editext获得焦点,但应用程序标签和一些原始的listview消失(顶部)。 我想获得焦点时,用户触摸edittext没有损失应用程序标签和一些原始的listview。 我已经实施的代码: 下面的代码会在用户触摸edittext时获得焦点,但是当软键盘popup时,应用程序标签和一些原始的listview消失。我想要在用户触摸edittext时获得焦点而不丢失应用程序标签和一些原始的listview。 1)的AndroidManifest.xml <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MyListViewDemoActivity" android:label="@string/app_name" android:windowSoftInputMode="adjustPan" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> 2)raw_layout.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:id="@+id/mEditText" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> 3)main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/mListView" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> 4)MyListViewDemoActivity public class MyListViewDemoActivity […]

validationEditText中的电子邮件

我想validation在EditText中引入的电子邮件,以及我已经拥有的代码: 最后EditText textMessage =(EditText)findViewById(R.id.textMessage); 最终的TextView文本=(TextView)findViewById(R.id.text); textMessage.addTextChangedListener(new TextWatcher() { public void afterTextChanged(Editable s) { if (textMessage.getText().toString().matches("[a-zA-Z0-9._-]+@[az]+.[az]+") && s.length() > 0) { text.setText("valid email"); } else { text.setText("invalid email"); } } public void beforeTextChanged(CharSequence s, int start, int count, int after) {} public void onTextChanged(CharSequence s, int start, int before, int count) {} }); 问题是,当我在“@”后面引入3个字符时,会出现“有效的电子邮件”消息,当我介绍完整的电子邮件时必须出现。 任何暗示? 谢谢你们!

迭代ListView并获取EditText字段值

我创build了一个ListView(myList),每行中有一个EditText-Field(R.id.mannschaften)。 在ListView下,我创build了一个Button,并在OnCreate()方法中为它设置了一个OnClickListener。 现在当button被点击时,我想遍历ListView并获取每一行中的EditText-Field的值,并将它们保存在一个String-List中。 但是我怎么做? 这是我的代码: private void ButtonClick() { /** get all values of the EditText-Fields */ View v; ArrayList<String> mannschaftsnamen = new ArrayList<String>(); EditText et; for (int i = 0; i < myList.getCount(); i++) { v = myList.getChildAt(i); et = (EditText) v.findViewById(R.id.mannschaften); mannschaftsnamen.add(et.getText().toString()); } ….. } 我已经知道,getChildAt只用于可见的行,但我不知道如何做不同。

EditText标签?

我想有一些这样的布局 [text tabel][edittext] 我不能find一个属性,如html的esque标签。 这似乎是我需要使用的情况 [TextView][EditText] 但我不能让他们走在同一行这是我的XML文件。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">" <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/boat_1"/> <EditText android:id="@+id/entry" android:hint="@string/IRC" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:drawable/editbox_background"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/boat_2"/> <EditText android:id="@+id/entry" android:hint="@string/IRC" android:minWidth="100dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:drawable/editbox_background"/> <Button android:id="@+id/close" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:text="@string/title_close" />

EditText Settext不能与片段一起工作

我有一个屏幕的3个状态的片段; 添加,编辑和查看。 在添加我创build一个实体并保存它。 下一次我在视图模式下打开它,并使用设置实体名称 EditText entityName = (EditText) view.findViewById(R.id.entityName); entityName.setText(entity.getEntityname()); 我从查看模式点击编辑button打开编辑模式。 我在这里更改实体名称并保存。 这使我回到查看屏幕。 但是我发现实体名称没有更新。 我debugging,发现entity.getEntityname()具有正确的值。 我不知道为什么编辑文本不会带来新的价值。 有任何想法吗? 注意:我使用的是Android 2.2版本

SoftKeyboard隐藏EditText

我有一个使用EditText让用户search数据库和填充ListView的布局。 EditText大约是屏幕顶部2/3的位置(位于ImageView上方,后面跟着一些介绍文字)。 问题是软键盘隐藏了EditText,所以用户看不到他在input什么内容。 (我禁用了自动提示。) 我已经尝试了LinearLayout,RelativeLayout,填充和不同的路线/中心,但我仍然无法让它正常工作。 EditText要么隐藏起来,要么从屏幕顶部被推开,或者被“挤压”和扭曲。 build议??? 一种可能的解决方法是将EditText移动到屏幕的顶部。 但是,这偏离了我所得到的平面devise。 另一个可能的解决方法是让我打开全屏软键盘(不知道如何,但)。 这仍然会隐藏EditText,但是我可以重新启用自动build议,以便用户可以看到他正在input什么内容……因为他只能看到他正在键入的build议 。 这是我最近的尝试。 请参阅“introFrame”。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="fill_parent" android:orientation="vertical"> <LinearLayout android:id="@+id/titleContainer" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:text="@string/title_string" android:textSize="15sp" android:textColor="#FFFFFF" android:textStyle="bold" android:paddingLeft="5dp" android:layout_height="fill_parent" android:layout_width="wrap_content" /> </LinearLayout> <FrameLayout android:id="@+id/introFrame" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" > <ImageView android:src="@drawable/main_search_image" android:scaleType="center" android:layout_gravity="center" android:layout_height="wrap_content" android:layout_width="wrap_content"/> <LinearLayout android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:paddingTop="140dp" […]

.length()与.getText()。length()与.getText()。toString()。length()

例如在下面的代码中, a和b和c是相等的。 EditText editText; editText = (EditText) findViewById(R.id.edttxt); editText.setText("1234"); int a, b, c; a = editText.length(); b = editText.getText().length(); c = editText.getText().toString().length(); length()和getText().length()和getText().toString().length()之间有什么区别?

Android上的电子邮件validationEditText

大家好我有一个编辑文本,我会写在我的Editttext电子邮件validation这是一个XML代码 <EditText android:id="@+id/mail" android:layout_width="match_parent" android:layout_height="48dp" android:layout_alignLeft="@+id/phone" android:layout_below="@+id/phone" android:layout_marginRight="33dp" android:layout_marginTop="10dp" android:background="@drawable/edit_background" android:ems="10" android:hint="E-Mail" android:inputType="textEmailAddress" android:paddingLeft="20dp" android:textColor="#7e7e7e" android:textColorHint="#7e7e7e" > </EditText> 这是一个Java代码 emailInput = mail.getText().toString().trim(); emailPattern = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"; if (emailInput.matches(emailPattern)) { Toast.makeText(getActivity(), "valid email address", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(getActivity(), "Invalid email address", Toast.LENGTH_SHORT).show(); mail.setBackgroundResource(R.drawable.edit_red_line); } 我无法validation。吐司消息总是“无效的电子邮件地址”我做错了什么? 如果有人知道解决scheme,请帮助我