Java 按对话框中的按钮时更改对话框上的视图

Java 按对话框中的按钮时更改对话框上的视图,java,android,Java,Android,假设我在一个布局中有两个视图-一个按钮和一个文本视图 是否可以更改单击listener按钮时按钮内的文本视图文本 大概是这样的: button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textview.settext("changedText"); }

假设我在一个布局中有两个视图-一个按钮和一个文本视图

是否可以更改单击listener按钮时按钮内的文本视图文本

大概是这样的:

 button.setOnClickListener(new View.OnClickListener() 
    {
        @Override
        public void onClick(View v) 
        {
            textview.settext("changedText");
        }
    });

明显的错误是,OnClickListener方法无法识别textview,将其设置为final将使其无法更改。

将textview设置为final仍将允许您设置文本。
只能进行一次赋值。

您正在生成最终文本视图,因此无法将此引用赋值给其他对象 但是你可以对这个物体做任何操作

您可以更改textview的任何属性
thanx.

最后一个属性只是限制他的初始化一次。您可以在方法之后访问is。如果你需要的话

您还可以在类中创建一个字段,它将在侦听器中可用。比如:

private TextView textview;

在布局中为textview提供一些ID, 创建新变量TextView tv=new TextView;在创建对话的同一活动中

tv=TextViewfindviewbyidR.id\U文本视图的id\U


然后您应该能够使用tv.settextchange文本

在类级别声明textview,如下所示

Class CLASSNAME{

public TextView textview;

//your onclickListener code inside method or wherever u have written
}

您必须在类级别声明textView,以便变量是全局变量