ورود با اکانت گوگل
یا
آقای متریال

برای جستجو کلمه مورد نظر خود را وارد کنید

معرفی و آموزش لینیر پروگرس | Linear Progress

rouhollah.mz


اطلاعات نویسنده
پشتیبانی
برای دیدن اطلاعات تماس تهیه کننده این محصول باید محصول رو خریداری کرده باشید

به نام خدا آموزش لینیر پروگرس

سلام ، در خدمتتون هستیم با آموزش لینیر پروگرس Linear Progress

از مثال هایی که برای استفاده از پروگرس میشه زد ، استفاده ی اونها زمان رفرش صفحه یا به عنوان لودینگ و … میباشد.
__
برای اضافه کردن ProgressBar در اولین مرحله باید کتابخانه ی AppCompat رو در build.gradle وارد کنیم :

dependencies {  
'compile 'com.android.support:appcompat-v7:23.2.1
}

پس از اون باید مطمئن بشیم که اکتیویتی مورد نظر ما extend شده باشه از AppCompatActivity :

public class MainActivity extends AppCompatActivity {  
    ...
}

در مرحله ی بعد باید کافیه که ProgressBar رو در لیوت مورد نظر وارد کنیم :

<ProgressBar  
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

لینیر پروگرس داری چند نوع است :

Indeterminate | Determinate | Buffered | Indeterminate and Determinate

که نمونه های اون رو میتونید در تصویر مطلب مشاهده کنید .

 

برای ساختن هر یک از انواع لینیرپروگرس به این شیوه عمل میکنیم :

 

برای ساختن indeterminate ProgressBar باید android:indeterminate رو true قرار بدید :

<ProgressBar  
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:indeterminate="true"/>

 

برای ساختن Determinate ProgressBar باید android:indeterminate رو false قرار بدید :

<ProgressBar  
    android:id="@+id/progressBar"
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:indeterminate="false"
    android:max="100"
    android:progress="20"/>

برای مشخص کردن حداکثر پیشرفت میتونید از android:max استفاده کنید که بصورت پیشفرض بر روی ۱۰۰ هست .

برای تنظیم موقعیت پیش فرض پروگرس میتونید از android:progress استفاده کنید.

برای آپدیت موقعیت پیش فرض پروگرس میتونید در کلاس مورد نظرتون به این شیوه عمل کنید :

ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar);  
progressBar.setProgress(50);

 

برای ساختن Buffered ProgressBar باید android:indeterminate رو false قرار بدید :

<ProgressBar  
    android:id="@+id/progressBar"
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:indeterminate="false"
    android:max="100"
    android:progress="10"
    android:secondaryProgress="50"/>

برای مشخص کار مقدار اولیه Buffer پروگرس میتونید از android:secondaryProgress استفاده کنید.

برای آپدیت موقعیت پیش فرض پروگرس میتونید در کلاس مورد نظرتون به این شیوه عمل کنید :

ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar);

// set current progress
progressBar.setProgress(20);

// set buffered progress
progressBar.setSecondaryProgress(50);

 

برای ساختن Indeterminate and Determinate  ProgressBar باید android:indeterminate رو true قرار بدید :

<ProgressBar  
    android:id="@+id/progressBar"
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:indeterminate="true"/>

هرموقع که نیاز داشتید پروگرس رو از indeterminate  به determinate تغییر بدید میتونید از متد setIndeterminate(boolean indeterminate) استفاده کنید :

ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar);  
progressBar.setIndeterminate(false);

 

برای اینکه Style مورد نظر خودمون رو (رنگ پیشفرض) به LinearProgress بدیم باید به این شیوه عمل کنیم :
باید Custom Style خودمون رو در values-v21/styles.xml وارد کنیم :

<style name="LinearProgress" parent="Theme.AppCompat.Light">  
    <item name="colorAccent">@color/indigo</item>
    <item name="android:progressBackgroundTint">@color/pink</item>
</style>

و برای وارد کردن رنگ مورد نظر ، کافیه که کد رنگ رو بجای این قسمت وارد کنیم :

توجه داشته باشید که android:progressBackgroundTint فقط برای determinate ProgressBar کار میکنه .

@color/indigo | @color/pink

و تنها کار باقی مونده وارد کردن این Style برای ProgressBar مورد نظر ماست :

<ProgressBar  
    android:theme="@style/LinearProgress"
    style="@style/Widget.AppCompat.ProgressBar.Horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

 

نتیجه ی نهایی :

آموزش لینیر پروگرس

آموزش لینیر پروگرس

 

پروگرس بار در دیوایس هایی که نسخه ی اندروید آنها کمتر از Lollipop هست ، به حالت استایل متریال نشون داده نمیشه : 

 

آموزش لینیر پروگرس

آموزش لینیر پروگرس

دیدگاه هایی که برای این مطلب ارسال شده

  1. ﻧﻮﯾﺴﻨﺪﻩ ﺩﯾﺪﮔﺎﻩ: رضا مرداد ۳۱, ۱۳۹۵

    سلام ممنون از آموزش مفیدتون
    ممکن هست یه اسلایدشو دقیقا مثل اسلایدشوی کافه بازار آموزش بدید؟ ممنون از زحمات شما

    • ﻧﻮﯾﺴﻨﺪﻩ ﺩﯾﺪﮔﺎﻩ: Rouhollah.Mz مرداد ۳۱, ۱۳۹۵

      سلام ، خواهش میکنم .
      آموزش مورد نظرتون رو میتونید در این لینک ببینید :
      http://mrmaterial.ir/%d۸%a۷%d۸%b۳%d۹%۸۴%d۸%a۷%db%۸c%d۸%af%d۸%b۱-%d۹%be%db%۸c%d۸%b۴%d۸%b۱%d۹%۸۱%d۸%aa%d۹%۸۷-%d۸%a۷%d۹%۸۶%d۸%af%d۸%b۱%d۹%۸۸%db%۸c%d۸%af-%d۸%a۸%d۸%af%d۹%۸۸%d۹%۸۶-%da%a۹%d۸%aa%d۸%a۷%d۸%a۸%d۸%ae%d۸%a۷%d۹%۸۶/

  2. ﻧﻮﯾﺴﻨﺪﻩ ﺩﯾﺪﮔﺎﻩ: darkness مرداد ۳۱, ۱۳۹۵

    عالی بود

    • ﻧﻮﯾﺴﻨﺪﻩ ﺩﯾﺪﮔﺎﻩ: Rouhollah.Mz مرداد ۳۱, ۱۳۹۵

      نظر لطف شماست

شما هم دیدگاهی برای این مطلب ارسال کنید

مطالب مرتبط

مطالب تصادفی

لوگوی دوستان

هایپر تمپ | HyperTemp