Android - Fortschritt Kreis Tutorial

Der einfachste Weg, um einen Kreis zu machen Fortschritt wird durch Verwendung einer Klasse namens ProgressDialog. Der Ladebalken kann auch über dieser Klasse vorgenommen werden. Die einzige logische Unterschied zwischen Bar und Kreis ist, dass der ehemalige wird verwendet, wenn die Gesamtzeit für das Warten auf eine bestimmte Aufgabe, während die später wissen, wird verwendet, wenn Sie nicht wissen, die Wartezeit
Um dies zu, müssen Sie ein Objekt dieser Klasse instanziiert. Die Syntax ist.
ProgressDialog progress = new ProgressDialog(this);
Jetzt können Sie einige Eigenschaften dieses Dialogfeld festgelegt. Wie beispielsweise, seinen Stil, seine Text etc
progress.setMessage("Downloading Music :) ");
progress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progress.setIndeterminate(true);
Zusätzlich zu diesen Verfahren gibt es noch andere Methoden, die von der Klasse bereitgestellt werden ProgressDialog
Sr.NoBeschreibung
1getMax ()
Diese Methode liefert den Maximalwert des Fortschritts
2incrementProgressBy (int Unterschied)
Dieses Verfahren erhöht die Fortschrittsanzeige durch die Differenz der Wert als Parameter übergeben
3setIndeterminate (boolean unbestimmt)
Dieses Verfahren setzen Sie die Fortschrittsanzeige, wie bestimmte oder unbestimmte
4setMax (int max)
Diese Methode setzen Sie den Maximalwert der Fortschrittsdialog
5setProgress (int value)
Diese Methode wird verwendet, um den Fortschrittsdialog mit einigen spezifischen Wert zu aktualisieren
6show (Context Kontext CharSequence Titel, CharSequence Nachricht)
Dies ist eine statische Methode, verwendet werden, um Statusdialog Anzeigen

Beispiel

Dieses Beispiel zeigt die Verwendung von Spinndialogfenster. Es zeigen einen Spinnfortschrittsdialog auf die Taste drücken.
Um bei diesem Beispiel zu experimentieren, müssen Sie diese auf einem Gerät auf, nachdem die Entwicklung der Anwendung gemäß den folgenden Schritten ausgeführt werden.
SchritteBezeichnung
1Sie werden Android Studio verwenden, um ein Android-Anwendung unter einem Paket com.example.sairamkrishna.myapplication schaffen ;. Bei der Erstellung dieses Projekt, stellen Sie sicher SDK Ziel und Kompilieren Sie mit der neuesten Version des Android SDK zu höheren Ebenen der APIs verwenden.
2Ändern src / MainActivity.java-Datei, um die Fortschritte Code hinzufügen, um die Spinnfortschrittsdialogfeld angezeigt werden soll.
3Ändern Sie Datei res / layout / activity_main.xml zum jeweiligen XML-Code hinzufügen.
4Führen Sie die Anwendung, und wählen Sie einen laufenden Android-Gerät und installieren Sie die Anwendung und überprüfen Sie die Ergebnisse.
Im Folgenden ist der Gehalt des modifizierten Haupttätigkeit Datei src / MainActivity.java.
package com.example.sairamkrishna.myapplication;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {
   Button b1;
   private  ProgressDialog progressBar;
   private int progressBarStatus = 0;
   private Handler progressBarbHandler = new Handler();
   private long fileSize = 0;
   
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      b1=(Button)findViewById(R.id.button);
      
      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            progressBar = new ProgressDialog(v.getContext());
            progressBar.setCancelable(true);
            progressBar.setMessage("File downloading ...");
            progressBar.setProgressStyle(ProgressDialog.STYLE_SPINNER);
            progressBar.setProgress(0);
            progressBar.setMax(100);
            progressBar.show();
            progressBarStatus = 0;
            
            fileSize = 0;
            new Thread(new Runnable() {
               public void run() {
                  while (progressBarStatus < 100) {
                     progressBarStatus = downloadFile();
                     
                     try {
                        Thread.sleep(1000);
                     }
                     
                     catch (InterruptedException e) {
                        e.printStackTrace();
                     }
                     
                     progressBarbHandler.post(new Runnable() {
                        public void run() {
                           progressBar.setProgress(progressBarStatus);
                        }
                     });
                  }
                  
                  if (progressBarStatus >= 100) {
                     try {
                        Thread.sleep(2000);
                     }
                     
                     catch (InterruptedException e) {
                        e.printStackTrace();
                     }
                     progressBar.dismiss();
                  }
               }
            }).start();
         }
      });
   }
   public int downloadFile() {
      while (fileSize <= 1000000) {
         fileSize++;
         
         if (fileSize == 100000) {
            return 10;
         }
         
         else if (fileSize == 200000) {
            return 20;
         }
         
         else if (fileSize == 300000) {
            return 30;
         }
         
         else if (fileSize == 400000) {
            return 40;
         }
         
         else if (fileSize == 500000) {
            return 50;
         }
         
         else if (fileSize == 700000) {
            return 70;
         }
         else if (fileSize == 800000) {
            return 80;
         }
      }
      return 100;
   }
   
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.menu_main, menu);
      return true;
   }
   
   @Override
   public boolean onOptionsItemSelected(MenuItem item) {
      // Handle action bar item clicks here. The action bar will
      // automatically handle clicks on the Home/Up button, so long
      // as you specify a parent activity in AndroidManifest.xml.
      
      int id = item.getItemId();
      
      //noinspection SimplifiableIfStatement
      if (id == R.id.action_settings) {
         return true;
      }
      return super.onOptionsItemSelected(item);
   }
}
Ändern Sie den Inhalt der res / layout / activity_main.xml der folgenden
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
   android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
   
   <TextView android:text="Music Palyer" android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textview"
      android:textSize="35dp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true" />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point"
      android:id="@+id/textView"
      android:layout_below="@+id/textview"
      android:layout_centerHorizontal="true"
      android:textColor="#ff7aff24"
      android:textSize="35dp" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="download"
      android:id="@+id/button"
      android:layout_alignParentBottom="true"
      android:layout_centerHorizontal="true"
      android:layout_marginBottom="112dp" />
      
   <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:src="@drawable/abc"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>
Ändern Sie die res / Werte / string.xml der folgenden
<resources>
   <string name="app_name">My Application</string>
   <string name="hello_world">Hello world!</string>
   <string name="action_settings">Settings</string>
</resources>
Dies ist der Standard AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.progressdialog"
   android:versionCode="1"
   android:versionName="1.0" >

   <application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name="com.example.sairamkrishna.myapplication.MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
   </application>
</manifest>
Lassen Sie uns versuchen, um Ihre Anwendung auszuführen. Um die App vom Android Studio ausführen, öffnen Sie einen der Aktivität Dateien Ihres Projekts und klicken Sie auf Eclipse-Run IconAusführen-Symbol in der Symbolleiste. Vor dem Start der Anwendung wird Android Studio Display folgende Fenster, um eine Option, wo Sie Ihre Android-Anwendung ausgeführt werden soll.

Drücken Sie einfach die Taste, um die Fortschrittsdialog zu starten. Nach dem Pressen folgende Bildschirm scheint,
Android Fortschritt Dialog Tutorial

Share on Google Plus

About ptjqatar

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 التعليقات:

Kommentar veröffentlichen