import android.app.Activity;
import android.os.Bundle;
import android.text.InputFilter;
import android.text.Spanned;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
/**
* Class which shows how to lock and unlock EditText component
*
* @author FaYnaSoft Labs
*/
public class Main extends Activity {
private EditText editText;
private boolean value = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
editText = (EditText) findViewById(R.id.textId);
editText.setText("EditText component");
Button b = (Button) findViewById(R.id.btnId);
b.setText("Lock/Unlock");
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (value) {
value = false;
} else {
value = true;
}
lockUnlock(value);
}
});
}
/**
* Method which locks and unlocks editText component
* @param value our boolean value which using in or if operator
*/
private void lockUnlock(boolean value) {
if (value) {
editText.setFilters(new InputFilter[] { new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start,
int end, Spanned dest, int dstart, int dend) {
return source.length() < 1 ? dest.subSequence(dstart, dend)
: "";
}
} });
} else {
editText.setFilters(new InputFilter[] { new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start,
int end, Spanned dest, int dstart, int dend) {
return null;
}
} });
}
}
}
分享到:
相关推荐
然而,有时我们可能需要创建一个特殊的EditText,其中一部分文本是可编辑的,而另一部分是不可编辑的。这在显示预设信息并允许用户在其后添加自定义内容时非常有用,例如电话号码格式化或日期输入。 标题“android ...
这个压缩包文件"安卓EditText输入框相关-前面部分可以编辑后面部分不可编辑的EditText.zip"似乎包含了一个示例,演示如何实现一个特殊的`EditText`,其中前一部分可以编辑,而后一部分则保持静态,不可修改。...
"前面部分可以编辑后面部分不可编辑的EditText"就是一个典型的自定义控件示例,它结合了可编辑与只读区域的功能,为用户提供了一种特殊的数据输入方式。这种控件可能在填写表单、密码输入等场景中有很好的应用。 ...
当我们谈论“前面部分可以编辑后面部分不可编辑的EditText”时,这通常涉及到对`EditText`控件的定制,使得一部分文本可编辑,另一部分则保持静态不可修改。这种功能常见于密码显示、电话号码输入等场景,例如,用户...
标题"Android应用源码之前面部分可以编辑后面部分不可编辑的EditText.rar"描述的正是这样一个定制化的EditText实现。下面我们将详细探讨如何实现这一功能。 首先,我们需要了解EditText的基本用法。EditText是...
在XML布局文件中,使用自定义的EditText类替换原始的EditText,并设置必要的属性,如初始文本和不可编辑部分的文本。 7. **优化用户体验** 考虑到用户体验,可以添加一些交互提示,如工具提示或者气泡提示,告知...
在这个压缩包文件"前面部分可以编辑后面部分不可编辑的EditText.zip"中,很可能包含了一些关于自定义EditText或者实现特定编辑功能的示例代码。 首先,我们来探讨一下EditText的基础知识。EditText是TextView的子类...
本压缩包提供了一份高级应用源码,重点展示了如何实现EditText的一个特殊功能:前面部分可编辑,后面部分不可编辑。这个特性在某些特定的应用场景下非常有用,比如在输入信用卡号时,用户可能需要输入前半部分数字,...
先将EditText的初始文本设置为包含两部分:可编辑和不可编辑。然后,对不可编辑部分应用NoCopySpan,这样即使用户输入,这部分也不会被选中或更改。 3. **监听输入事件** 使用`addTextChangedListener`添加一个`...
在某些特定的应用场景下,我们可能需要实现一个EditText,它的前面部分可以编辑,而后面的部分则是不可编辑的固定文本。这个需求在创建自定义输入框或者密码输入时尤为常见。本压缩包中的源码就展示了如何实现这样一...
这里我们将详细讨论如何在Android中实现EditText不可编辑,并探讨相关知识点。 首先,我们注意到“android:editable”属性在早期的SDK版本中被使用来控制EditText的可编辑性。然而,这个属性已经被弃用。官方推荐...
在某些应用场景中,我们可能需要实现一个特殊的 `EditText`,使得它的前一部分是可编辑的,而后面的部分则是不可编辑的。这样的功能可以用于创建密码输入框,其中已显示的密码字符不允许更改,或者在表单中,预填充...
1. **android:id**:为`EditText`设置唯一标识符,方便在代码中引用。 2. **android:hint**:设置提示文本,当输入框为空时显示。 3. **android:text**:设置初始文字内容。 4. **android:inputType**:定义用户可以...
在Android应用开发中,我们经常会遇到需要定制特定编辑框(EditText)的需求,比如这个案例中的“前面部分可以编辑,后面部分不可编辑”。这样的功能在很多应用场景下都很实用,例如密码输入、电话号码验证等,用户...
当一个item中的EditText被用户编辑后,如果不正确处理,滚动时可能会看到其他item的EditText显示了之前的数据,这就是所谓的“鬼数据”问题。 为了解决这个问题,我们需要实现以下关键步骤: 1. **自定义...
在某些场景下,我们可能需要实现一个特殊的EditText,它的功能是:前面部分的文本可以编辑,而后面的部分则不可编辑。这样的需求常见于密码输入、电话号码验证等场景,可以提高用户体验并确保数据的安全性。本文将...
在Android开发中,ListView与EditText的组合使用是一个常见的场景,比如在列表中添加可编辑的项。然而,这种结合往往会导致一些棘手的问题,特别是关于焦点和数据绑定的混乱。标题"ListView+EditText混乱问题"所提及...
1. **为EditText设置唯一标识符**:在给ListView的每个条目设置值时,我们可以通过设置EditText的id属性来关联其对应的数据集合位置。例如,`holder.editText.setId(position)`,这样我们就能够根据id找到EditText所...