0

EditText名前の付いたコンポーネントのテキストを取得して、textfield「facebook」と等しいかどうかを確認しようとしています。しかし、それは機能せず、私は私の人生のために理由を見つけることができません。また、ifステートメントmyでは画像のIDであると想定されています。

public class Guess extends Activity {

    ImageView image;
    ImageView stat;
    Button okButton;
    EditText textfield;

    Integer my;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.guess);

        final Bundle bundle = this.getIntent().getExtras();
        int pic = bundle.getInt("myimage");
        final int resid = bundle.getInt("resourceID");

        my = pic;

        image = (ImageView) findViewById(R.id.imageView1);
        image.setImageResource(pic);
        image.setAdjustViewBounds(true);

        stat = (ImageView) findViewById(R.id.imageView2);
        stat.setImageResource(R.drawable.incorrect);

        okButton = (Button) findViewById(R.id.button1);
        okButton.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                // TODO Auto-generated method stub

                textfield = (EditText) findViewById(R.id.editText1);
                if("2130837510".equals(my.toString()) && "facebook".equals(textfield.getText()));
                {
                    stat.setImageResource(R.drawable.correct);
                }
            }
        });
    }
}
4

2 に答える 2

3

textfield.getText()は、文字列ではなく編集可能を返します。それを機能させるには、textfield.getText()。toString()を使用して実際のStringオブジェクトを渡します。

于 2012-05-02T19:34:42.577 に答える
1

ifステートメントの最後にセミコロンがあります

if(1 == 2);
{
    System.out.println("passed");
}

したがって、以下のコードはとにかく実行されます。

于 2012-05-02T19:52:20.063 に答える