Java 编辑另一个类的文本

Java 编辑另一个类的文本,java,android,android-edittext,Java,Android,Android Edittext,我正在创建一个带有自定义脚本引擎的专家系统引擎,其中一些命令与主XMLGUI集成。例如,有一个“respond”命令,它接受字符串并在EditText中设置它们。respond命令对于应用程序的功能至关重要,但我无法使用findviewbyd访问EditText,因为命令例程驻留在另一个类中。即使格式不好,如何从其他类访问GUI元素 多谢各位 如何从其他类访问GUI元素 如果另一个类是活动,则不能。您应该以意图或其他方式传递EditText的内容。 如果另一个类不是活动,只需将EditText设

我正在创建一个带有自定义脚本引擎的专家系统引擎,其中一些命令与主XMLGUI集成。例如,有一个“respond”命令,它接受字符串并在EditText中设置它们。respond命令对于应用程序的功能至关重要,但我无法使用findviewbyd访问EditText,因为命令例程驻留在另一个类中。即使格式不好,如何从其他类访问GUI元素

多谢各位

如何从其他类访问GUI元素

如果另一个类是活动,则不能。您应该以意图或其他方式传递EditText的内容。
如果另一个类不是活动,只需将EditText设置为公共字段变量即可。或者,您可以将另一个类a引用传递给您的活动或根视图,并使用类似
findviewbyd()
的方法,而无需太多麻烦

如何从其他类访问GUI元素

如果另一个类是活动,则不能。您应该以意图或其他方式传递EditText的内容。

如果另一个类不是活动,只需将EditText设置为公共字段变量即可。或者,您可以将这个其他类的引用传递给您的活动或根视图,并使用类似于
findViewById()
的方法,而无需太多麻烦。

通过使用自定义方法(如
public void setEditText(EditText myEditText)
或类似方法)将EditText对象提供给“其他类”,或者作为其构造函数中的参数(取决于您的情况)


另一种可能是发送定义EditText的完整活动,因此可以使用
findViewById()
获取EditText。但我不推荐使用它(我认为这是一种糟糕的做法),除非您需要访问大量对象。

通过使用自定义方法(如
public void setEditText(EditText myEditText)
或类似方法)或作为其构造函数中的参数(取决于您的情况),将EditText对象提供给“其他类”


另一种可能是发送定义EditText的完整活动,因此可以使用
findViewById()
获取EditText。但我不推荐使用它(我认为这是一种糟糕的做法),除非您需要访问很多对象。

我也遇到了同样的问题。我的活动中的代码有太多的代码,我想创建外部类来执行其中的一些处理。但是,有一个进程使用了
EditText
,您不能在没有UI的类中实例化它。因此,最简单的解决方案是在活动中使您的
EditText myEditText
变量
public
static
,然后当您在外部类中使用它时,只需在它来自的原始活动中使用点符号,它就可以工作了。
static
关键字使其成为一个全局变量,可供其他类/活动访问

公共静态EditText myEditText//将其放入您的活动中


ActivityName.myEditText.someMethod()//在外部类中使用EditText时,我遇到了同样的问题。我的活动中的代码有太多的代码,我想创建外部类来执行其中的一些处理。但是,有一个进程使用了
EditText
,您不能在没有UI的类中实例化它。因此,最简单的解决方案是在活动中使您的
EditText myEditText
变量
public
static
,然后当您在外部类中使用它时,只需在它来自的原始活动中使用点符号,它就可以工作了。
static
关键字使其成为一个全局变量,可供其他类/活动访问

公共静态EditText myEditText//将其放入您的活动中


ActivityName.myEditText.someMethod()//在外部类中使用EditText

如何使其成为公共字段变量(我假设XML中有某种属性)?字段变量是在类内声明的变量,但不在任何方法外
public
private
是描述谁应该有权访问此特定变量的关键字。在
PICK\u CONTACT\u REQUEST
中,是一个字段变量,暗示为
public
,也是
静态final
。如何将其设置为公共字段变量(我假设XML中有某种属性)?字段变量是在类内部但在任何方法外部声明的变量
public
private
是描述谁应该有权访问此特定变量的关键字。在
PICK\u CONTACT\u REQUEST
中,它是一个字段变量,暗示为
public
,也是
静态final