我为我的应用程序使用了三个选项卡,每个选项卡显示了一些用于用户输入的edittext框。为了方便用户,我在每个屏幕上都有一些相同的edittext框,这样用户就不必返回tab1来输入值。例如,我在所有三个选项卡屏幕上都有一个edittext框,询问用户的年龄。我在tab1屏幕上命名了edittext框age1,在tab2屏幕上命名了age2,在tab3屏幕上命名了age3。然后我使用代码来读取三个框中的哪一个具有值,我将该值复制到另外两个edittext框。
有没有办法在所有三个屏幕中保留相同的edittext框名称,以便在一个中显示一个值,并且可以使用单个age.getValue()命令检索单个值?
答案 0 :(得分:3)
每个标签都嵌套一个Activity,这是它自己的上下文。
由于EditText
在其构造函数中需要Context
,并且仅与Context
相关,因此您无法在多个上下文中使用它。
答案 1 :(得分:0)
您不需要每个标签的活动 我想你不能两次添加一个视图(但值得一试)
或者你可以创建一个扩展editText类的类,让它命名为
在类(theList)中创建一个静态列表
在构造函数中将每个实例添加到列表
更改on text更改方法(或类似的东西) 并将文本设置为列表中的每个项目 { for(EditText e:theList) e.setText(this.getText());
}
换句话说,每个实例都有相同的文字