gpt4 book ai didi

android - onFocusChange 代码示例?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:56:56 28 4
gpt4 key购买 nike

我有一个包含 2 个字段的表单,您可以在其中输入月份或年份。我如何设置表单,以便如果您输入年份,月份 edittext 字段将自动计算并输入到它自己的框中。同样,如果您输入月份,我希望计算年份

谁能给我示例代码?

最佳答案

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

  1. 对一个字段进行逐字符处理,计算出另一个字段

    为此,您可以将 addTextChangedListener 与文本观察器结合使用,您可以在其中更改 onTextChanged 方法来处理数据。

    //from editHandle = (EditText) findViewById(R.id. <<your EditText>> );

    editHandle.addTextChangedListener(redoWatcher);

    // listener
    private TextWatcher redoWatcher = new TextWatcher() {


    public void beforeTextChanged(CharSequence s, int start, int count,
    int after) {
    }

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

    @Override
    public void afterTextChanged(Editable s) {

    }

    };

现在可以编写recalculate方法来处理数据了。

2。另一种方法是在用户将焦点转移到其他字段时计算数据。

这里需要使用onFocusChangeListener:

<Your EditView>.setOnFocusChangeListener(new OnFocusChangeListener() {

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

无论哪种方式,根据您可能想要检查有效输入的设计。

关于android - onFocusChange 代码示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2841973/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com