首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onFocusChange代码示例?

onFocusChange代码示例?
EN

Stack Overflow用户
提问于 2010-05-15 22:28:18
回答 1查看 33.8K关注 0票数 12

我有一个有两个字段的表单,你可以在几个月或几年内输入。如何设置表单,以便如果您在数年中输入,月份编辑文本字段将自动计算并输入它自己的框中。同样,如果你在几个月中进入,我想要计算你的年数。

有人能给我这个示例代码吗?

EN

回答 1

Stack Overflow用户

发布于 2010-05-16 08:36:17

你有两种方法可以做到这一点:

  1. 按字符处理一个字段来计算另一个字段

为此,您可以使用addTextChangedListener和文本观察者一起更改onTextChanged方法来处理数据。

//从editHandle = (EditText) findViewById(R.id.;editHandle.addTextChangedListener(redoWatcher);//侦听器私有TextWatcher redoWatcher =新TextWatcher() { public TextWatcher()(CharSequence s,int start,int count,int后){} @Override (CharSequence s,int start,int TextWatcher,int count) { recalculate();}@重写公共void (可编辑的){ };

现在您可以编写重新计算方法来处理数据。

2.另一种方法是在用户将焦点更改到另一个字段时计算数据。

在这里,您需要使用onFocusChangeListener:

代码语言:javascript
复制
<Your EditView>.setOnFocusChangeListener(new OnFocusChangeListener() {

    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        recalculate();
    }
});

不管是哪种方式,取决于设计,您可能希望检查有效的输入。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2841973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档