java - 如何在多个 TextView 中输入?

标签 java android

我是开发新手。我正在创建一个具有高级功能的 android 计算器应用程序。问题是我正在使用 TextView 来获取和显示输入/输出。我的问题是,如何在多个 Textview 中接受多个输入。

例如我有 3 个 TextView ,当用户将在第一个 TextView 中输入第一个输入(默认情况下)并且当用户按下特定按钮时它会自动移动到下一个 TextView 。在某些情况下我想接受 2 个输入,在某些情况下我想接受 3 个, 我怎样才能做到这一点

注意:我不想使用编辑文本,因为我的应用程序中已有可用的所有按钮。使用编辑文本将使软键盘出现,然后为了隐藏软键盘,我需要在每个类中使用隐藏代码行

最佳答案

您可以执行以下操作:

private TextView[] textViews;

private TextView tvCurrentEditing;
private Button btnNext;
private Button btnPrev;
private Button btnSetText;
private int index = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
    textViews = new TextView[3];

    //Initialize all your textviews like textViews[0] = findViewById(<textview-id1>);
    //textViews[1] = findViewById(<textview-id2>);
    //textViews[2] = findViewById(<textview-id3>);

    tvCurrentEditing = textViews[index];// I am assuming this is your first 

    //initialzie btnSettext
    btnSettext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            tvCurrentEditing.setText("<what ever you want");
        }
    });

    //initialize next buton
    btnNext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(index < textViews.length) {
                index++;
            }
            tvCurrentEditing = textViews[index];
        }
    });

    //Initialize previous button
    btnPrev.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(index > 0) {
                index--;
            }
            tvCurrentEditing = textViews[index];
        }
    });

}

View 的名称可以不同。重点是,只要您想更改 TextView 的数据,请始终使用 tvCurrentEditing。并在需要时更新 tvCurrentEditing

关于java - 如何在多个 TextView 中输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49963404/

相关文章:

java - JPA 序列化/反序列化嵌套自动生成字段

java - 返回假;声明没有 "return"

java - 使用内存分析器在 Java heapdump 中查找打开的文件

android - 权限拒绝 :broadcasting Intent is not exported

android - Jetpack Compose Surface 点击波纹没有根据形状剪裁?

android - Android 中的树 ListView

JavaFX 入门 : Modifying Label Text on other window from Main Window

java - 如何阻止元素影响 View 页面内的其他元素?

Firebase Cloud Messaging 的 Android P 后台限制

java - Android 的自定义类加载器?