2011-06-22 8 views
1

最初のボタンをクリックすると2つのボタンがあり、M値を文字列に割り当て、2番目のボタンで同じ文字列変数にF値を割り当てたいAndroid:ボタンで値を渡すスイッチケースを使用してクリック

下記のコード性別で

がnullの場合、文字列変数であり、我々はregmalebtnをクリックしたときに、私たちは、私はセット - 追加していないXML、第2ボタン

の文字列性別とFに値Mを渡す必要があります両方のボタンにテキストを入力します。私がこれをやっているときに、null値が渡されていて、nullポインタ例外が発生しています。

これを解決するにはどうすればよいですか?どんなヘルプも大いにありがとうございます

ありがとうございます...!

String gender = null; 
Button regmalebtn = (Button) findViewById(R.id.regmalebtn); 
    Button regfemalebtn = (Button) findViewById(R.id.regfemalebtn); 
    // Here in the above line I m getting the error// 
    public void onClick(View v) { 

     switch(v.getId()){ 

     case R.id.regmalebtn: 

    // gender = regmalebtn.getText().toString(); 
     gender.equals("M"); 
    // request.addProperty("gender",gender); 

      break; 

     case R.id.regfemalebtn: 

     // gender = regfemalebtn.getText().toString(); 
      gender.equals("F"); 
     // request.addProperty("gender", gender); 
      break; 
     default: 
      break; 

     } 
     } 
+0

gender.equals( "M");あなたが価値を割り当てる必要があるのではなく、性別の価値をMと比較していることを意味します。例gender = "M" –

答えて

1

このようにする必要があります。

あなたはこれらのステートメントのいずれかを使用してみました
Button regmalebtn = (Button) findViewById(R.id.regmalebtn); 
    regmalebtn.setOnClickListener(this); 

    Button regfemalebtn = (Button) findViewById(R.id.regfemalebtn); 
    regfemalebtn .setOnClickListener(this); 

    public void onClick(View v) 
    { 
     switch(v.getId()) 
     { 
      case R.id.regmalebtn: 
           gender = "M"; 
           break; 

     case R.id.regfemalebtn: 
           gender = "F"; 
           break; 

     default: 
           break; 
    } 
    } 
+0

私はこれをどこに割り当てるのですか?スイッチケースの内側? – Raj

+0

はい、スイッチケースにセットする必要があります。ここで私のコードを更新します。 –

+0

@Raj、Chiragが正しいです。あなたは値を割り当てようとしています –

1

:それらの両方がnullである

// gender = regmalebtn.getText().toString(); 

または

 gender.equals("F"); 

を。

、変数に値を代入するための正しい方法は次のとおりです。あなたの場合は

variable = value; 

、代わりに:

使用
gender.equals("F") 

gender = "F"; // or gender = new String("F"); 
0
**String gender = "";** 

Button regmalebtn = (Button) findViewById(R.id.regmalebtn); 
    regmalebtn.setOnClickListener(this); 

    Button regfemalebtn = (Button) findViewById(R.id.regfemalebtn); 
    regfemalebtn .setOnClickListener(this); 

    public void onClick(View v) 
    { 
     switch(v.getId()) 
     { 
      case R.id.regmalebtn: 
           gender = "M"; 
           break; 

     case R.id.regfemalebtn: 
           gender = "F"; 
           break; 

     default: 
           break; 
    } 
    } 
関連する問題