ساخت و نمایش یک ProgressBar ، با استفاده از تگ ProgressBar در فایل xml ، به همراه دو دکمه (Button) برای نمایش ProgressBar و عدم نمایش ProgressBar ، در برنامه نویسی اندروید
در این مبحث قصد داریم که چگونگی ساخت ProgressBar با استفاده از تگ ProgressBar در فایل xml را شرح بدهیم. البته بدون تگ ProgressBar در فایل xml نیز می توان یک ProgressBar ساخت ( آموزش شماره 2899 )، اما در برخی موارد، وجود تگ ProgressBar در فایل xml ، به اعمال تغییرات بیشتر برای ProgressBar کمک می کند.
همچنین از دو دکمه (Button) نیز برای تعیین نمایش و عدم نمایش ProgressBar استفاده می کنیم.
در این آموزش، فرض می کنیم که لایه گرافیکی متناظر با Activity ، در فایل activity_main.xml تعریف شده است. بنابراین کدهای فایل activity_main.xml را به صورت زیر می نویسیم :
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ProgressBar
android:id="@+id/progressBar1"
android:layout_width="match_parent"
android:layout_height="100dp"
android:indeterminate="false" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="visible" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="invisible" />
</LinearLayout>
با کدهای بالا، در لایه گرافیکی، یک ProgressBar و دو دکمه (Button) تعریف کرده ایم.
نام Activity را برابر MainActivity در نظر گرفته ایم، بنابراین کدهای آن را به صورت زیر می نویسیم (کدهای فایل MainActivity.java) :
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
public class MainActivity extends Activity {
public ProgressBar progressBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressBar = (ProgressBar) findViewById(R.id.progressBar1);
Button button_visible = (Button) findViewById(R.id.button1);
button_visible.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
progressBar.setVisibility(View.VISIBLE);
}
});
Button button_invisible = (Button) findViewById(R.id.button2);
button_invisible.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
progressBar.setVisibility(View.INVISIBLE);
}
});
}
}
با اجرای برنامه اندروید، progressBar نماش داده می شود (در حال چرخش) :

با اشاره بر روی دکمه invisible ، دیگر progressBar نمایش داده نمی شود :

با اشاره بر روی دکمه visible ، دوباره progressBar نمایش داده می شود :
