2017-11-11 131 views
-1

我在尝试使用Android工作室编写应用程序时,遇到了一个问题,计算特殊类型的GPA,实际上它是我国的医学生GPA。Android Studio中的静态成员问题

这是如下:

' 
public class MainPage extends AppCompatActivity { 

EditText smle,cv,gpa; 
TextView ans; 

Double s,c,g,sum; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main_page); 
    smle=(EditText)findViewById(R.id.smle); 
    cv=(EditText)findViewById(R.id.cv); 
    gpa=(EditText)findViewById(R.id.gpa); 
    TextView ans=(TextView)findViewById(R.id.ans); 
// here it says that the variable "ans" is never used. 
    s=Double.parseDouble(smle.getText().toString()); 
    c=Double.parseDouble(cv.getText().toString()); 
    g=Double.parseDouble(gpa.getText().toString()); 



} 
public void onCal(View view) 
{ 

    sum=(g*20*0.30)+c+(s*0.50); 
//Here it says static member 'java.lang.String.valueOf(java.lang.Object) is accessed via instance reference 
    ans.setText(toString().valueOf(ans)); 

' 我应该怎么做才能解决这个问题?

我很抱歉张贴大厅的事情,但我在编码的早期步骤。

回答

2

您声明ans两次。一次作为实例变量(第三行),然后再次在onCreate()中。更换

TextView ans=(TextView)findViewById(R.id.ans); 

ans=(TextView)findViewById(R.id.ans); 
中的onCreate()

所以分配给俺们变量,整个对象是可见的。