変数group_id
に問題があります。このようなコードがあると、group_idをfinalとして宣言する必要があると言います。 try{...}
の値を応答文字列の値に変更し、後でUserGroupRequest
で使用する必要があるため、最終的にはできません。最終的な変数をどうやって調べることができますか?
私がAndroidスタジオでgroup_idを最終的なint配列に変更する自動修正を押すと、tryキャッチの変数の値が正しくなります。しかし、それはgroup_idが最終的なので、0に戻って以来、ちょっと残っていません。私が意味するところは、プログラムが問題なくデータベースからIDを取得するということです。
私はどのように変数が最終的に来ることができますか?ここで
おかげ
はコードです:
final EditText etGroupName = (EditText) findViewById(R.id.etGroupName);
final Button bRegisterGroup = (Button) findViewById(R.id.bRegisterGroup);
Intent intent = getIntent();
final int user_id = intent.getIntExtra("user_id", 0);
final String firstname = intent.getStringExtra("firstname");
final String lastname = intent.getStringExtra("lastname");
final String mail = intent.getStringExtra("mail");
int group_id = 0;
bRegisterGroup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String groupname = etGroupName.getText().toString();
Response.Listener<String> responseListener = new Response.Listener<String>(){
@Override
public void onResponse(String response) {
try {
JSONObject jsonResponse = new JSONObject(response);
boolean success = jsonResponse.getBoolean("success");
group_id = jsonResponse.getInt("group_id");
if(success){
Intent intent = new Intent(RegisterGroupActivity.this, UserAreaActivity.class);
intent.putExtra("firstname", firstname);
intent.putExtra("lastname", lastname);
intent.putExtra("mail", mail);
RegisterGroupActivity.this.startActivity(intent);
}
else{
AlertDialog.Builder builder1 = new AlertDialog.Builder(RegisterGroupActivity.this);
builder1.setMessage("Register Failed").setNegativeButton("Retry", null).create().show();
}
} catch (JSONException e) {
e.printStackTrace();
etGroupName.setText("fel");
}
}
};
RegisterGroupRequest registerGroupRequest = new RegisterGroupRequest(groupname,responseListener);
RequestQueue queue = Volley.newRequestQueue(RegisterGroupActivity.this);
queue.add(registerGroupRequest);
UserGroupRequest groupRequest = new UserGroupRequest(user_id, group_id, "admin", responseListener);
queue.add(groupRequest);
}
});
}
}
することができます:あなたはこの
ようにそれを行うことができます ここでは上記の例のように、あなたのコードですそれをグローバル変数として定義します。 –
あなたのgroup_idをクラス変数として宣言してください。 –
「最終変数」...それは全く変数ではありません**!それは**定数**です! –