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