Меня разочаровывали снова и снова попытки решить проблему, которую я получаю в Android Studio. Я знаю, что по inte rnet существует множество подобных вопросов, но ни один из них не работает со мной. Я пытаюсь протестировать приложение в LDPlayer. На самом деле у меня есть действие, открывающее другое действие:
Button btn = findViewById(R.id.button2);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, prac_ques.class);
startActivity(intent);
}
});
Это весь мой код. Открывающееся действие («действие A») получает данные из другого класса (класс B)
действие Код
public static String selected_ans = "";
RadioButton radioButton;
RadioGroup radioGroup;
public static RadioButton ch1;
public static RadioButton ch2;
public static RadioButton ch3;
public static RadioButton ch4;
public static TextView textView;
public static Button click;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_a);
radioGroup = findViewById(R.id.radioGroup);
int selectedId = radioGroup.getCheckedRadioButtonId();
radioButton = findViewById(selectedId);
ch1 = findViewById(R.id.radio1);
ch2 = findViewById(R.id.radio2);
ch3 = findViewById(R.id.radio3);
ch4 = findViewById(R.id.radio4);
selected_ans = selected_ans + radioButton.getText().toString();
class_a process = new class_a();
process.execute();
textView = findViewById(R.id.questions);
click = findViewById(R.id.button);
}
Вот класс код
public class class_a extends AsyncTask<Void , Void, Void> {
int over;
int ans;
String raw_dat = "";
String question = "";
String question2 = "";
String ch1 = "";
String ch2 = "";
String ch3 = "";
String ch4 = "";
String anss = "";
@Override
protected Void doInBackground(Void... voids) {
try {
URL url = new URL("json_url");
HttpURLConnection htc = (HttpURLConnection) url.openConnection();
InputStream inputStream = htc.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
String raw = "";
while (raw != null){
raw = br.readLine();
raw_dat = raw_dat+raw;
}
JSONArray jsonArray = new JSONArray(raw_dat);
for (int i = 0; i == 0; i++) {
JSONObject jo = jsonArray.getJSONObject(i);
question = "" + jo.get("question");
ch1 = "" + jo.get("cha");
ch2 = "" + jo.get("chb");
ch3 = "" + jo.get("chc");
ch4 = "" + jo.get("chd");
anss = "" + jo.get("ans");
}
for (int i = 1; i == 1; i++){
JSONObject jo = jsonArray.getJSONObject(i);
question2 = "" +jo.get("question");
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
activity_a.ch1.setText(ch1);
activity_a.ch2.setText(ch2);
activity_a.ch3.setText(ch3);
activity_a.ch4.setText(ch4);
activity_a.textView.setText(question);
activity_a.click.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
over++;
if (activity_a.selected_ans.equals(anss)){
ans++;
}
activity_a.textView.setText(question2);
activity_a.click.setOnClickListener(null);
activity_a.click.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
over++;
activity_a.textView.setText("over !!");
}
});
}
});
}
} У меня большие проблемы, помогите, пожалуйста .... Заранее спасибо.