Ich benutze Retrofit und der Server gibt JSON
Objekt als Antwort zurück. Ich möchte es in einem ArrayList
speichern und es an die nächste Aktivität übergeben, wo es in RecyclerView
angezeigt werden kann. Ich bekomme keinen Fehler, aber es gibt keine Ausgabe in der Anzeige Aktivität. Was könnte das Problem sein?Wie speichere ich die JSON-Antwort von meinem Server an eine Arraylist und gehe zur nächsten Aktivität über?
Hier ist meine Haupttätigkeit.
public class MainActivity extends AppCompatActivity {
public static final String ROOT_URL = "http://walletuncle.com/";
String username;
String password;
private Button makerequest;
private ProgressDialog pdialog;
private EditText edittextusername;
private EditText edittextpassword;
private String DataArray[] = new String[15];
private ArrayList<Result> dataarr = new ArrayList<>();
int i = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
makerequest = (Button) findViewById(R.id.btnObjRequest);
edittextpassword = (EditText) findViewById(R.id.editpassword);
edittextusername = (EditText) findViewById(R.id.editusername);
pdialog = new ProgressDialog(this);
pdialog.setMessage("wait kar be...");
pdialog.setCancelable(false);
makerequest.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
makejsonobjectrequest();
}
});
}
private void makejsonobjectrequest() {
username = edittextusername.getText().toString().trim();
password = edittextpassword.getText().toString().trim();
RestAdapter adapter = new RestAdapter.Builder()
.setEndpoint(ROOT_URL)
.build();
//creating object of our interface
DataApi data = adapter.create(DataApi.class);
//defining the method.
data.getposition(username, password, new Callback<Result>() {
@Override
public void success(Result result, Response response) {
dataarr = result;
Bundle b = new Bundle();
b.putSerializable("array", dataarr);
Intent intent = new Intent(getBaseContext(), Display.class);
intent.putExtras(b);
startActivity(intent);
}
@Override
public void failure(RetrofitError error) {
}
});
}
}
meine Schnittstelle zur Nachrüstung ist:
public interface DataApi {
//retrofit to get annotation with our url.
@GET("/myservice.asmx/UserLogin")
void getposition(@Query("UserId") String userid, @Query("password") String password, Callback<Result> result);
}
Überprüfen Sie mit Protokoll, kommt Ihre Antwort oder nicht? – sushildlh
E/dalvikvm: Konnte die Klasse 'android.graphics.drawable.RippleDrawable' nicht finden, die von der Methode android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering referenziert wurde – choi
Dies scheint ein Fehler zu sein, den ich beim Debugging gefunden habe – choi