Ich habe versucht, meine Fortschrittsbalkenansicht in meiner Datei-Scanner-Anwendung zu arbeiten, und ich bin gründlich durch die richtige Kombination von Aktivitäten, Dienste, Threads und Handler ratlos.Update integrierten Fortschrittsbalken in ursprünglichen Aktivität
Hier ist die Struktur: Meine Aktivität enthält eine Horizontal-ProgressBar. Auf Menüpunkt klicken, spawn ich einen Service, der onCreate(), wo ich die Fortschrittsleiste aktualisieren möchte.
Meine Frage: Was vermisse ich?
- Aktivität "a" (mit ProgressBar)
2. "a" .onOptionsItemSelected(): Spawn Service "b"
3. "b" .onCreate(): Steuern Sie die ProgressBar in "a" // h ere ist, wo ich meine Probleme haben
Layout für die Progress Bar (1):
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_height="wrap_content"
android:max="100"
android:progress="0"
android:secondaryProgress="0"
android:layout_width="300px"
android:layout_marginLeft="10px"
android:id="@+id/progress_horizontal"
/>
"a" .onOptionsItemSelected (2):
public boolean onOptionsItemSelected(MenuItem item)
{
if (svc == null)
{
android.util.Log.v("@@@@@@@@@@@@@@@@@@@@@", "starting");
svc = new Intent(this, DoScan.class);
// done in "a".onCreate()
// hmap = new HashMap();
// hmap.put("tv", tv);
svc.putExtra("hmap", hmap);
startService(svc);
}
break;
}
"b" .onCreate () (3):
@Override
public void onCreate() {
super.onCreate();
//startThread();
TextView tv = (TextView) Peekaboo.hmap.get("tv");
tv.append("cocktail");
}
Was ich suche ist eine Möglichkeit für die Aktivität mit dem Server zu kommunizieren .. – montooner