相关疑难解决方法(0)

以编程方式将EditText的输入类型从PASSWORD更改为NORMAL,反之亦然

在我的应用程序中,我有一个EditText默认输入类型android:inputType="textPassword"由deault 设置为.它有一个CheckBox右边的,当被选中时,将EditText的输入类型更改为NORMAL PLAIN TEXT.代码是

password.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
Run Code Online (Sandbox Code Playgroud)

我的问题是,当取消选中CheckBox时,它应该再次将输入类型设置为PASSWORD.我用它完成了 -

password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
Run Code Online (Sandbox Code Playgroud)

但是,该edittext中的文本仍然可见.令人惊讶的是,当我更改orienatation时,它会自动将输入类型设置为PASSWORD,并且内部的文本是项目符号(显示为密码).

有没有办法实现这个目标?

passwords android android-edittext

177
推荐指数
9
解决办法
18万
查看次数

EditText,inputType值(xml)

我在哪里可以找到InputType可以拥有的值?

我知道http://developer.android.com/reference/android/text/InputType.html,但是布局xml文件中的值应如何?

layout android android-edittext android-inputtype

121
推荐指数
2
解决办法
16万
查看次数

使用EditText显示密码

我使用EditText输入密码.还有一个CheckBox来显示密码.以下功能是部分:

public void ShowPassword() {
    if (cb.isChecked()) {
        password.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
    } else {
        password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
    }
}
Run Code Online (Sandbox Code Playgroud)

检查时,显示密码.但是当它没有被检查时,它确实显示了星星.如何在未选中cb的情况下修改它以显示星标?

android android-edittext

28
推荐指数
4
解决办法
4万
查看次数

android中的android:inputType ="textPassword","textVisiblePassword","textWebPassword"和"numberPassword"之间的区别?

任何人都可以解释之间的差异

   android:inputType="textPassword",
   android:inputType="textVisiblePassword",
   android:inputType="textWebPassword",
   android:inputType="numberPassword"
Run Code Online (Sandbox Code Playgroud)

Android版面中的EditText ViewGroup?

android android-layout android-edittext

24
推荐指数
3
解决办法
1万
查看次数

编辑文本密码切换Android

我试图在编辑文本中向用户显示输入类型为文本密码的键入密码.

我在这个切换图标上实现了gesturelistener,如下所示

public boolean onTouch(View view, MotionEvent motionEvent) {
        switch (view.getId())
        {
            case R.id.ivPasswordToggle:

                switch ( motionEvent.getAction() ) {
                    case MotionEvent.ACTION_DOWN:
                        Toast.makeText(getContext(),"show",Toast.LENGTH_SHORT).show();
                        etPassword.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
                        break;
                    case MotionEvent.ACTION_UP:
                        etPassword.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD | InputType.TYPE_CLASS_TEXT);
                        Toast.makeText(getContext(),"hide",Toast.LENGTH_SHORT).show();
                        break;
                }
                break;
        }
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

我不知道什么是错的,任何帮助将不胜感激.

android android-edittext gesturelistener

16
推荐指数
4
解决办法
2万
查看次数

如何以编程方式将输入类型设置为编辑文本的密码

大家好我正在使用带编辑文本的警告对话框.所以我想以编程方式将输入类型设置为编辑文本的密码.我在谷歌搜索了很多并找出这两种方法:

final EditText input = new EditText(getActivity()); 

input.setTransformationMethod(PasswordTransformationMethod.getInstance());

input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); 
Run Code Online (Sandbox Code Playgroud)

但它不适合我,它显示文本.但我想要点缀文字.我不知道的问题是什么.所以请建议我做.感谢所有提前.这是带编辑文本的对话框代码:

public void showDialog(){

           /* Alert Dialog Code Start*/     
                AlertDialog.Builder alert = new AlertDialog.Builder(getActivity());
//              alert.setTitle("JPOP"); //Set Alert dialog title here
                alert.setMessage("              Please enter password"); //Message here

                Log.e("dialog in password ","passworddddddddddddddddd");

                // Set an EditText view to get user input 
                final EditText input = new EditText(getActivity());
//              input.setInputType(InputType.TYPE_CLASS_TEXT);
//              input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
//              input.setTransformationMethod(PasswordTransformationMethod.getInstance());

//              final EditText input = new EditText(getActivity()); 
                input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
                input.setTransformationMethod(new PasswordTransformationMethod());


                input.setHint("Password");
                input.setSingleLine();
                input.setTextSize(14);
                alert.setView(input);

                alert.setPositiveButton("OK", new DialogInterface.OnClickListener() …
Run Code Online (Sandbox Code Playgroud)

android android-edittext

10
推荐指数
3
解决办法
3万
查看次数

以编程方式在EditText中设置密码点

我一直在尝试以编程方式将我的edittext设置为密码字段,如下所示:

方法1:

password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
Run Code Online (Sandbox Code Playgroud)

方法2:

password.setTransformationMethod(PasswordTransformationMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)

方法3:

password.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
Run Code Online (Sandbox Code Playgroud)

方法4:

    public class MyPasswordTransformationMethod extends PasswordTransformationMethod {
    @Override
    public CharSequence getTransformation(CharSequence source, View view) {
        return new PasswordCharSequence(source);
    }

    private class PasswordCharSequence implements CharSequence {
        private CharSequence mSource;
        public PasswordCharSequence(CharSequence source) {
            mSource = source; // Store char sequence
        }
        public char charAt(int index) {
            return '*'; // This is the important part
        }
        public int length() {
            return mSource.length(); // Return default
        }
        public CharSequence subSequence(int start, int end) { …
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
1
解决办法
5383
查看次数

Android在运行时获取EditText输入类型

我有一个编辑文本类的自定义实现.

基于这些XML属性.....

android:inputType="textPersonName"
android:inputType="textPersonName"
android:inputType="textEmailAddress"
android:inputType="textPassword"
Run Code Online (Sandbox Code Playgroud)

我希望能够在运行时知道这一点(在Java代码中)

我找到了这个方法,它给了我输入类型

getInputType()
Run Code Online (Sandbox Code Playgroud)

这些是基于我上面发布的XML返回的值.

97,97,33,129

但是,这些与此处列出的常量值不对应

http://developer.android.com/reference/android/text/InputType.html

如何在运行时知道编辑文本的输入类型?

android android-edittext android-inputtype

5
推荐指数
1
解决办法
3258
查看次数

如何使用数据绑定设置android:inputType

我正在尝试使用以下数据绑定表达式在显示密码的旧方法之间切换:

android:password="@{isMyFlagTrue}"
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用inputType现在不建议使用的password属性代替时,我似乎无法成功设置密码类型。我试过了:

android:inputType="@{isMyFlagTrue? InputType.TYPE_TEXT_VARIATION_PASSWORD : InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD)}"
Run Code Online (Sandbox Code Playgroud)

但这对EditText视图的inputType没有影响。即使当我尝试将其直接设置为不可见的品种时,它仍然可见。

有什么建议么?

data-binding android

3
推荐指数
1
解决办法
1516
查看次数

EditText属性以编程方式 - 文本不会换行

我有以下EditText按预期工作.

        <EditText
                android:id="@+id/etMensagem"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="@string/hint_message"
                android:minLines="4"
                android:text="@string/send"
                android:inputType="textCapSentences|textMultiLine"/>
Run Code Online (Sandbox Code Playgroud)

但是需要以编程方式设置属性(除了layout_width和height之外).

这是我的尝试:

    edit_text.setText(context.getString(R.string.enviar_mensagem));
    edit_text.setMinLines(4);
    edit_text.setHint(context.getString(R.string.hint_message));
    edit_text.setInputType(InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,文本不会包装.尽管它是一个多行的EditText,它将文本保存在一行中,与XML版本不同.

我错过了什么?

android

1
推荐指数
1
解决办法
2406
查看次数