Je suis la mise en œuvre d'une application Android. J'utilise le service web sur une activité. Je montre une boîte de dialogue de progression jusqu'à ce qu'elle charge la deuxième activité. Mais il ne s'affiche pas pour tout le temps et affiche l'écran noir pendant un certain temps. Il semble que l'application se bloque. Que devrais-je faire? J'ai perdu mes trois jours. J'utilise asynctask pour ces processus. Aidez-moi, s'il vous plaît .Application montrant un écran noir?
protected void onListItemClick(ListView l, View v, final int position,
long id) {
super.onListItemClick(l, v, position, id);
progressDialog = ProgressDialog.show(ProjectListActivity.this,
"Please wait...", "Loading...");
new Thread() {
public void run() {
try {
String project = titles.get(position - 1);
performBackgroundProcess(project);
} catch (Exception e) {
Log.e("tag", e.getMessage());
}
progressDialog.dismiss();
}
}.start();
}
private void performBackgroundProcess(String project) {
String spaceId = null;
String spaceName = null;
/*
* for (Space space : spaces){
* if(space.getName().equalsIgnoreCase((String) ((TextView)
* v).getText())){ spaceId = space.getId(); } }
*/
for (Space space : spaces) {
if (project.equals(space.getName())) {
newSpace = space;
}
}
spaceId = newSpace.getId();
spaceName = newSpace.getName();
/*
* Intent intent = new Intent(this, SpaceComponentsActivity.class);
* intent.putExtra("spaceId", spaceId); intent.putExtra("tabId", 0);
* intent.putExtra("className", "TicketListActivity"); TabSettings ts =
* new TabSettings(); ts.setSelTab(1); this.startActivity(intent);
*/
Intent intent = new Intent(this, SpaceComponentsActivity.class);
intent.putExtra("spaceId", spaceId);
intent.putExtra("tabId", 0);
intent.putExtra("spaceName", spaceName);
// intent.putExtra("className", "TicketListActivity");
TabSettings ts = new TabSettings();
ts.setSelTab(0);
ts.setSelTabClass("TicketListActivity");
this.startActivity(intent);
/*
* Toast.makeText(getApplicationContext(), ((TextView) v).getText(),
* Toast.LENGTH_SHORT).show();
*/
}
Où est votre code? Aveugle devinez que vous utilisez le fil principal pour appeler 'webService'.use http://developer.android.com/reference/android/os/AsyncTask.html pour appeler' wed service'. –
Je poste mon code. –
J'implémente toute la logique dans la méthode performBackgroundProcess. besoin de poster aussi? –