比较edittext输入和字符串(android)

问题描述:

我想比较我的edittext中的用户输入和代码中提供的字符串。如果它们匹配,我想增加整数分数的值。我读了许多类似的问题,并调整了我的代码,但仍然没有工作,因为整数的值不会改变。 我把它当点击一个按钮时调用的方法,这也让去另一个问题(其他城市布局)比较edittext输入和字符串(android)

int score=0; 
public void nextPage3(View v) { 
    findViewById(R.id.q2).setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v){ 
      EditText input = (EditText) findViewById(R.id.editText1); 
      String a = input.getText().toString(); 
      String p = "poet"; 
      if (p.equalsIgnoreCase(a)) 
       score++; 
     }}); 

    setContentView(R.layout.question3); 

} 
+0

您的'nextPage3'方法在xml'Button'中声明为'onClick'事件吗?如果是这样,你为什么要在方法'setOnClickListener'中调用?什么是'setContentView'在你的'onClick'事件中做什么? – Yupi

+0

你调试了你的代码吗?难道是分数增加了,但是你不刷新提高分数的标签(或其他)? –

+1

@Yupi是的。谢谢,我是初学者,我没有意识到这里完全没有必要。我删除它,现在它正在工作。谢谢! – Student

这样写

public class MainActivity extends AppCompatActivity 
{ 
    onCreate 
    { 
      setContentView(R.layout.question3); 
    } 
public void nextPage3(View v) { 
    findViewById(R.id.q2).setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v){ 
      EditText input = (EditText) findViewById(R.id.editText1); 
      String a = input.getText().toString(); 
      String p = "poet"; 
      if (p.equalsIgnoreCase(a)) 
       score++; 
     }}); 
} 
} 

不要忘了添加在单击Xml文件中的事件。 如果您不声明然后使用FindViewById和btnName.setOnClickListenr()方法获取按钮方法