如何将EditText的输入存储到变量?

时间:2015-10-11 08:24:43

标签: java android textfield

我是Java的初学者并尝试制作随机数生成器,但我似乎无法弄清楚如何将EditText的输入存储到变量中。这是我的代码:

Long MinNb;
Long MaxNb;

EditText RndNbGenNbs1, RndNbGenNbs2;




@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    RndNbGenNbs1 = (EditText) findViewById(R.id.RndNbGenNbs1);
    RndNbGenNbs2 = (EditText) findViewById(R.id.RndNbGenNbs2);
    final Button RndNbGenBtn1 = (Button) findViewById(R.id.RndNbGenBtn1);

    RndNbGenNbs1.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
} 

提前致谢!

3 个答案:

答案 0 :(得分:0)

所以你有两个编辑文本,供用户使用吗?因为你正在使用onchange列表器,这意味着一旦editText被更改,它应该做一些事情。 你的意图是什么?

答案 1 :(得分:0)

您可以使用:

try { Long myNum = Long.parseInt(RndNbGenNbs1.getText().toString()); } catch(NumberFormatException nfe) { System.out.println("Could not parse " + nfe); }

虽然在解析时出现问题,但您需要捕获NumberFormatException,因此请使用:

(setq clang_args '("-isystem/usr/include/glib-2.0"
                   "-isystem/usr/lib/glib-2.0/include"))
((c-mode . ((company-clang-arguments . clang_args)
            (flycheck-clang-args . clang_args))))

答案 2 :(得分:0)

您可以通过以下方式获取EditText的文本: String strNumber = editText.getText()。toString(); 然后转换为Integer使用Integer.valueOf(strNumber);要么 func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { return 100.0;//Choose your custom row height }