2017-05-11 9 views
0

私はAndroidスタジオで新しくなったのですか? 以下のフラグメントコードから、ボタンの1つがButtonである2つのテキストを比較しようとします。test_ansボタンは、同じ場合は 'true'アクティビティに移動します。しかし残念ながら、アプリケーションが停止している:(2つのテキストを比較する(ボタンから1つ、それをクリックして比較する)、Android

package com.xxx.xxx.xxx; 

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class Main extends AppCompatActivity { 

private String mAnswer = "xxx"; 
private Button mButtonAns; 

static { 
    System.loadLibrary("native-lib"); 
} 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mButtonAns = (Button)findViewById(R.id.test_ans); 
    mButtonAns.setOnClickListener(new View.OnClickListener(){ 

     @Override 
     public void onClick(View view) { 

      if (mButtonAns.getText() == mAnswer) { 
       Intent i = new Intent(Main.this, True.class); 
       startActivity(i); 
       //^go to true activity 

      } else { 
       //go to false activity 
      } 

     } 
    }); 
} 
} 

を私は、が赤くなっ@Overrideます。public void onClickの(ビュービュー)のgetText()を削除しようとしたのonClickが問題であるということでしょうか?助けてください; 2文字列を比較する(

+0

を比較するためのmatchesを使用することができ、あなたのAndroidManifest – eaglearms92

答えて

2

のためには、==の代わりにequalsを使用する必要が==は2 String

の値を比較します2 Stringequalsのポインタを比較します。
if (mAnswer.equals(mButtonAns.getText())) { 
    ... 
} 
+0

いやを再確認してください、(..良く見えますが、アプリはまだ開いてカント"残念ながら、XXXが停止しました") – eaglearms92

+0

@ eaglearms92クラッシュログを共有してください –

+0

ああ、気にしないで、私はマニフェストを宣言しませんでした..愚かな私、thxとにかく:D – eaglearms92

0
if (mButtonAns.getText().toString().equals(mAnswer)){ 
    //do something 
} 
0

あなたも同じ問題を抱えている誰かのために文字列

if (mAnswer.matches(mButtonAns.getText())) { ... }

関連する問題