标签: android-edittext

负数输入(EditText)变得无符号

我正在做一个电缆长度计算器,但我在处理负数时遇到了麻烦。

EditTexts 是这样的

<EditText android:layout_height="wrap_content" android:layout_weight="1" android:inputType="numberDecimal|numberSigned" android:layout_width="40px" android:id="@+id/rxmax">
        </EditText>
Run Code Online (Sandbox Code Playgroud)

然后我像这样使用它们:

final EditText rxmax = (EditText) findViewById(R.id.rxmax);
double RXmax = new Double(rxmax.getText().toString());
Run Code Online (Sandbox Code Playgroud)

在我做了一个简单的计算之后:

double OPBmax = TXmax - RXmax;
Run Code Online (Sandbox Code Playgroud)

某处输入的负数变为正数。我在猜测 toString 对话,但我没有找到任何关于如何防止这种情况的信息。

android numbers android-edittext

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

将焦点从一个 EditText 移到另一个

我为创建帐户活动设计了一个布局。

当一个人EditText失去焦点时,我会对输入进行一些检查,如果有什么不对的地方,我想重新集中注意力EditText

我已经看到了一些关于此的问题,但它对我不起作用(或者我做错了什么)。

当我触摸触发 requestFocus() 的不同 EditText 时,焦点仍停留在当前焦点上EditText,另一个焦点图标显示在EditText请求焦点中。

请帮忙

这是我的布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:custom="http://schemas.android.com/apk/res/com.cellap.tq"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:focusable="true" 
android:focusableInTouchMode="true"
android:background="@drawable/create_account_background" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:focusable="true" 
    android:focusableInTouchMode="true"
    android:layout_marginTop="70dp"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="10dp">

    <TextView 
        android:id="@+id/userTextView"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:textColor="#F4DFA7"
        android:layout_marginRight="5dp"
        android:text="Username"
        android:gravity="right"
        android:layout_gravity="center_vertical"/>

    <EditText
        android:id="@+id/userEditText"
        android:inputType="text|textEmailAddress"
        android:layout_width="fill_parent"

        android:layout_height="30dp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:maxLength="64"
        android:background="@drawable/edit_text"
        android:layout_gravity="center_vertical|right"
        android:textColor="@android:color/white">

    </EditText>
</LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:focusable="true" 
        android:focusableInTouchMode="true" 
        android:layout_marginTop="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="10dp">

        <TextView 
            android:id="@+id/passTextView"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:textColor="#F4DFA7"
            android:layout_marginRight="5dp"
            android:gravity="right"
            android:text="Password"/>

        <EditText
            android:id="@+id/passEditText"
            android:layout_width="fill_parent" …
Run Code Online (Sandbox Code Playgroud)

java xml android focus android-edittext

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

Android 大写字符在手机中不起作用

在我的应用程序中,我想允许用户只输入大写字母。所以我使用了大写财产。

这是代码的一部分

<EditText
    android:id="@+id/et5"
    android:layout_width="140dp"
    android:layout_height="wrap_content"
    android:layout_x="127dp"
    android:layout_y="219dp"
    android:maxLength="25"
    android:ems="10"
    android:singleLine="true"
    android:capitalize="characters"
    android:text="" />
Run Code Online (Sandbox Code Playgroud)

在某些情况下,我也试过这个

android:inputType="textCapCharacters"
Run Code Online (Sandbox Code Playgroud)

它在模拟器中运行良好,但在手机中不起作用。在电话中,它显示小写字母。这里的错误是什么以及如何克服?

android capitalize android-layout android-edittext

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

通过 EditText 输入 unicode

我在 EditText 框上有一个 TextWatcher。当用户键入时,我将 EditText Box 上的任何内容设置为 Button 标签。

EditText et = rootView.findViewById(R.id.userInput);
et.addTextChangedListener(this);
...

@Override public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override public void afterTextChanged(Editable s) {}

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
    Button btn = (Button) rootView.findViewById(R.id.myButton);
    btn.setText(s.toString());
    //btn.setText("\u00A9");
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何编写unicode 符号。注释行在取消注释时将Button文本设置为版权符号 © 。尽管在 EditText 框中输入相同的 unicode 代码不起作用。我试图在 EditText 中输入双反斜杠,仍然不好。

注:与此无关,btn.setText(s)不带toString()部件使用时,按钮内的文字有下划线。

澄清 由于一些评论和答案(现已删除),我意识到我不清楚。让我改写:

我不想以任何方式干扰用户输入的文本。现在,当用户在 EditText 中输入“Hello \u0089”时,我使用以下行将其复制到 …

unicode android button android-edittext

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

按下“返回”键时如何使编辑文本失去焦点?

当我按 'Return' 键时EditText,它会通过变大来创建新行。EditText按下“返回”键时如何失去焦点?换句话说,如何在按下“返回”时让键盘消失?

android return lost-focus android-edittext

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

以编程方式更改android edittext中的textcolor

我必须为 edittext 创建背景颜色意味着正确获取背景。

 TestPost.this.findViewById(R.id.revieew)  
            .setBackgroundColor(color);  
Run Code Online (Sandbox Code Playgroud)

但是我怎样才能获得这些 edittext 的 textcolor 。

 TestPost.this.findViewById(R.id.revieew)  
            .setTextColor(color); 
Run Code Online (Sandbox Code Playgroud)

请给我一个解决方案???

我必须选择绿色意味着必须输入文本为绿色....在这里我已经为背景颜色做了这些。我必须将背景颜色设置为绿色意味着必须从颜色选择器中选择绿色意味着 bexkground正在成功显示...如何从颜色选择器设置文本颜色???

编辑:

reviewEdit.setTextColor(color);
Run Code Online (Sandbox Code Playgroud)

意味着我得到的颜色是成功的...但我没有改变整个文本。

我想单独更改所选文本的颜色...

对于 EG:

文字是:客户正在等待您的回复的意思

必须选择绿色,必须写 客户正在等待必须单独为这些文本显示绿色。之后必须选择颜色粉红色意味着必须将您的回复显示为粉红色。

这正是我需要的......我该如何实现这些???

android textcolor android-edittext

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

如何让数字键盘上的“完成”按钮做一些动作?

我有一个EditText其中 InputType 是数字的,以及一个TextView. 我想知道的是,当用户插入一些integer valueEditText,使在数字键盘店插入值“完成”按钮,在显示它TextView。我怎么能意识到这一点?谢谢!!!

java android textview android-edittext

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

EditText.getText().toString()错误

我正在使用这个代码,日志显示有一个错误终止了应用程序

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference
                  at com.example.amuna.project1.addWord.confirmBtnClicked(addWord.java:25)
Run Code Online (Sandbox Code Playgroud)

而代码是

import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class addWord extends AppCompatActivity {
EditText wordEdit, defEdit;
Button confirmButton;
@Override
public void onCreate(Bundle savedInstanceState) {
    wordEdit=(EditText)findViewById(R.id.wordAdd);
    defEdit=(EditText)findViewById(R.id.defAdd);
    confirmButton=findViewById(R.id.confirmBtn);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_word);
}
public void confirmBtnClicked(View v){
    SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
    SharedPreferences.Editor editor = pref.edit();
    String newWord = wordEdit.getText().toString();
    String newDef = defEdit.getText().toString();
    editor.putString("word", newWord);
    editor.putString("def", …
Run Code Online (Sandbox Code Playgroud)

android android-edittext

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

如何从EditText禁用仅剪切选项?

我有两个用于UserName和Password的EditText.第一个UserName EditText将是Visible.it将检查Valid UserName.然后,Password EditText将可见.我希望用户复制用户名但不想剪切.如何禁用剪切选项.但是下面的代码禁用所有选项.代码:

     @Override
                                public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
                                    return false;
                                }

                                @Override
                                public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {

                                     return false;
                                }

                                @Override
                                public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
                                    return false;
                                }

                                @Override
                                public void onDestroyActionMode(ActionMode actionMode) {

                                }
                            });
Run Code Online (Sandbox Code Playgroud)

android android-widget android-layout android-edittext

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

使用反射方法设置EditText光标颜色

我一直在使用反射方法以EditText编程方式设置我的光标颜色,这是我从此答案中找到的(我也尝试过此答案)。但是,在进行了一些最近的更新后,不记得确切的时间了,该方法不再起作用,我认为Android可能已经更改了TextView该类中的某些内容。无论如何,有人可以帮我吗?现在是否存在mCursorDrawableRes和的新字段名mCursorDrawable,或者整个方法是否无效并且需要以其他方式实现?

更新:我刚刚发现此方法仅在Android P上停止工作,在以前的版本上仍然有效。

更新2:我自己解决了问题,请检查答案是否也卡住了。

java reflection android textview android-edittext

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