Java 如何解决此错误“屏蔽相关str”;此变量必须是最终变量,才能在本地类中使用;

Java 如何解决此错误“屏蔽相关str”;此变量必须是最终变量,才能在本地类中使用;,java,android,Java,Android,尝试添加final修饰符 final TextView str=(TextView) 而不是 TextView str=(TextView)或者,您可以将TextView设置为本地 public class saeidactivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceSt

尝试添加
final
修饰符

final TextView str=(TextView)
而不是
TextView str=(TextView)

或者,您可以将TextView设置为本地

public class saeidactivity extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.saeid);
        Button btn=(Button) findViewById(R.id.saeidbtn1);
        TextView str=(TextView) findViewById(R.id.saeidtxtv1);
        btn.setOnClickListener(new OnClickListener(){

                @Override
                 public void onClick(View v)
                {
                    str.setTextColor(0xFF00FF00);
                }

            });
    }
}

正如其他人所说,您可以使textview成为最终版本,甚至更好,如果您只在单击侦听器中使用textview,则在其中声明它。
btn.setOnClickListener(new OnClickListener(){
    @Override
     public void onClick(View v)
    {
        TextView str=(TextView) findViewById(R.id.saeidtxtv1);
        if(str != null)
            str.setTextColor(0xFF00FF00);
    }
});