2016-12-10 24 views
-2

ログインページをMySQL PHPに接続したいのですが、ここでエラーが発生しました。フラグメントをandroid.content.Contextにキャストできません

これは私のlogcatです:

807/com.aeu.mlibrary.mlibraryaeu E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.aeu.mlibrary.mlibraryaeu, PID: 1807 
java.lang.ClassCastException: com.aeu.mlibrary.mlibraryaeu.LoginFragment cannot be cast to android.content.Context 
    at com.kosalgeek.asynctask.PostResponseAsyncTask.<init>(PostResponseAsyncTask.java:284) 
    at com.aeu.mlibrary.mlibraryaeu.LoginFragment.onClick(LoginFragment.java:82) 
    at android.view.View.performClick(View.java:4438) 
    at android.view.View$PerformClick.run(View.java:18422) 
    at android.os.Handler.handleCallback(Handler.java:733) 
    at android.os.Handler.dispatchMessage(Handler.java:95) 
    at android.os.Looper.loop(Looper.java:136) 
    at android.app.ActivityThread.main(ActivityThread.java:5001) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:515) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 
    at dalvik.system.NativeStart.main(Native Method) 

、これが私のloginFragment.javaでエラーラインである:

@Override 
public void onClick(View v) { 
    HashMap postData = new HashMap(); 
    postData.put("mobile", "android"); 
    postData.put("txtUsername", etUsername.getText().toString()); 
    postData.put("txtPassword", etPassword.getText().toString()); 


    PostResponseAsyncTask task = new PostResponseAsyncTask(LoginFragment.this, postData); 
    task.execute("http://10.0.3.2/mlibrary/HTML/login.php"); 
} 

私はあなたの助けみんなが必要です!

ありがとうございます。

+0

PostResponseAsyncTaskクラスがありますか? – Noorul

+0

@Ahamed私は人々からライブラリを使用してlibsに追加します – Onosibiw

+0

PostResponseAsyncTaskクラスのコンストラクタパラメータをチェックしてください。それが期待するパラメータのタイプを確認してください。問題を修正することができます。 – Noorul

答えて

0

getActvity(とLoginFragment.thisを交換)

PostResponseAsyncTask task = new PostResponseAsyncTask(getActivity(), postData); 
0

のgetContext(とLoginFragment.thisを置き換える):

PostResponseAsyncTask task = new PostResponseAsyncTask(getContext(), postData);

関連する問題