2016-05-16 20 views
0

これは私のコードで、問題が発生した場所です。nullオブジェクトリファレンスを解決するには

public void onClick(View arg0) { 
    switch (arg0.getId()){ 
     case R.id.login: 
      String nama = user.getText().toString(); 
      String sandi = pass.getText().toString(); 
      new AttemptLogin().execute(nama,sandi); 
      break; 
} 

と、これはAttemptLogin(上の私のコードです)

class AttemptLogin extends AsyncTask<String,String,String>{ 
    boolean failure = false; 
protected String doInBackground(String... args) { 
     int success; 
     String username = args[0] ; 
     String password = args[1]; 
     try { 
      List<NameValuePair> params = new ArrayList<NameValuePair>(); 
      params.add(new BasicNameValuePair("username",username)); 
      params.add(new BasicNameValuePair("password",password)); 
      ...etc 
      } 

、これはそうLogCat、

LogCat : null object reference

ですが、私は(のonClickから文字列を取得したいです)、tryLogin()のdoInBackground()に値を渡します。それについての解決策は何ですか? ごめんなさい、それは初心者の質問です、 があなたのatentionのためにどうもありがとうございます、私たちを助けてください:)

+2

あなたが適切 'user'と' pass'フィールドを初期化することがありますか? –

+0

あなたの質問を更新して、ユーザー、パスなどを初期化するコードを含めてください。アクティビティクラス全体を含める必要があります。 – ishmaelMakitla

+0

@HelloWorldあなたの応答、問題解決のおかげでありがとう、私は私のStringの変数に正しいidを呼ばなかった。 – hambaBiasa

答えて

1

をお使いのエラーで問題を見ている内にあるように見えます:この時点で

String nama = user.getText().toString(); 
String sandi = pass.getText().toString(); 

あなたあなたは、その後の活動に

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     ..... 
     ..... 
     EditText user= (EditText) findViewById(R.id.**XXXXXXX**); //error here 
     EditText pass= (EditText) findViewById(R.id.**YYYYYYY**); //error here 
     ..... 
     ..... 

} 
をしている場合は、オブジェクト「ユーザー」または「パス」はNULLで、 あなたのOnCreateメソッド

をご確認ください。 (ユーザー!= NULL){ 文字列のNAMA = user.getText()場合エルス

あなたはユーザ名とパスワードの断片

public View onCreateView(LayoutInflater inflater,ViewGroup container, 
      Bundle savedInstanceState) { 

     View view = inflater.inflate(R.layout.fragment_one, container, false); 


      ..... 
     ..... 
     EditText user= (EditText)view. findViewById(R.id.**XXXXXXX**); //error here 
     EditText pass= (EditText)view. findViewById(R.id.**YYYYYYY**); //error here 
     ..... 
     ..... 

     return view; 

    } 
+0

@VishweshJainkuniyaとDaniloCalzettaは大変ありがとう、ありがとう、アンドロイドであなたの経験に感謝し、良い解決策を提案します。 – hambaBiasa

0
  1. チェックヌル状態にある場合は、条件
  2. た場合にそれを置きます。 toString();

}

+0

お寄せいただきありがとうございます、私はあなたのソリューションに感謝しています。 – hambaBiasa

関連する問題