آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

سفارشی سازی ProgressDialog (حل شد)

sana ebadi  9 سال پیش  9 سال پیش
+1 0

سلام بچه ها 

من توی برنامه از یه progressDialog(Horizonal)  استفاده کردم.

حالا خواستم کاستومش کنم . اون مدرسی که داره اموزشاشو میبینم (متریال دیزاین)  قشنگ هر کدی که زدن انجام شد 

و من همون کدا رو استفاده کردم ولی مثل اون نشد.میتونه از چی باشه ؟  minSdk = 15 من هست. هم Tittle ایشون راست چین هست هم پروگرس بار ارتفاعش زیاد نیست. در اخر هم کدای مربوط به فایل xmlرو میذارم.

این تصویر برنامه ی من

.

برنامه استاد

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item
android:height="6dp">
<shape>

<corners
android:radius="4dp"/>
<solid
android:color="#9b9a9a"/>
</shape>
</item>
<item
android:height="6dp">
<clip>
<shape>
<corners
android:radius="4dp"/>
<gradient
android:startColor="#1fadc6"
android:endColor="#020e78"/>
</shape>

</clip>

</item>

</layer-list>
 

ممنون میشم راهنمایی کنید.

+1 0
به نظر من مهم اینکه شما مفهوم آموزش رو درک کردید اینکه حالا چرا ارتفاع این کوچیک بزرگ هست مهم نیست . (9 سال پیش)
+1 0
بله مفهومو که متوجه شدم ولی من روی یه سری چیزا خیلی حساسم و اگه مشکلمو پیدا نکنم دس بردار نیستم و شده برای پیدا کردن جواب مسئله چنتا اموزش دیگه رو یاد میگیرم و از این بابت خیلی خوشحال میشم. ممنون برای روحیه دادن (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد. مشاهده پاسخ صحیح
پاسخ به سوال 
Reza  9 سال پیش
+1 0

سلام

    من فکر میکنم اون کنترلی که این xml رو بهش اختصاص دادین چیزی غیر از لایه هست . لایه قرار بدین و فایل زیر رو به backGround اون بدید ( در ضمن کنترل شما چیز خاصی نداره که از layer-list استفاده کردین ، از shape استفاده کنین ) :

 

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <corners android:radius="4dip" />

    <size android:height="6dip" />

    <gradient
        android:endColor="#020e78"
        android:startColor="#1fadc6" />

</shape>
 

 

+1 0
متاسفانه ادیتور سایت مشکل داره ، و قابل کپی کردن نیست . (9 سال پیش)
0 0
ممنون از شما ولی این لایه ای که درست کردمو چجوری به progressست کنم ؟ از چه متد ی استفاده کنم ؟ من برای این فایل xmlاز این خط کد استفاده کردم progressDialog.setProgressDrawable(getResources().getDrawable(R.drawable.progress_shape)); الان از چی برای استفاده از این لایه استفاه کنم ؟ (9 سال پیش)
0 0
ببخشید من تازه متوجه منظورتون شدم من که از خود کنترل توی لی اوت استفاده نکردم.!!! بله اونجوریشو من بلدم . من همشو از روی خود کلاس کد زدم.و اون فایل xmlرو باید lyer_list استفاده میکردم و clip برای نشون دادن تمام ایتم ها و گردینت رو خوب نشون بده. الان کدای فایل کلاسمو میذارم که متوجه شین. با تشکر (9 سال پیش)
پاسخ به سوال 
sana ebadi  9 سال پیش
0 0

 پاسخ صحیح

کد های کلاس اصلی 

   final ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setProgress(0);
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.setTitle("در حال بار گذاری برنامه");
progressDialog.setMessage("لطفا صبر کنید ...");
progressDialog.setMax(100);
progressDialog.setProgressDrawable(getResources().getDrawable(R.drawable.progress_shape));
progressDialog.show();

Thread thread = new Thread(){

@Override
public void run() {
int jump = 0;
while (jump <100){
try {
sleep(400);
jump+=5;
progressDialog.setProgress(jump);
} catch (InterruptedException e) {
e.printStackTrace();
}

}
}
};

thread.start();

}
+1 0
آهان ببخشید ، حواسم نبود ، من با فرض کاستوم کنترل گفتم ، آخه خودم همیشه از کاستوم استفاده میکنم ، مثل روش آقای کاشی زاده در ساخت progressBar (9 سال پیش)
+1 0
اگه همین لایه xml منو به خطی که setProgressDrawable کردین ست کنین درست نمیشه ؟ (9 سال پیش)
+1 0
ممنون ن اصلا اون progressانجام نمیشه فقط برای clipاین کار انجام میشه (9 سال پیش)
0 0
اقا مشکل ارتفاع حل شد. مربوط به رزولوشن گوشی میشه. فقط میمونه راست چین شدن tittle که اونو خودم ردیف میکنم. خیلی ممنون (9 سال پیش)
+1 0
مگه شما واحد dip ندادین ؟ dip مستقل از پیکسل و رزولوشن هست . (9 سال پیش)
+1 0
بله ولی سایز گوشیو منظورمه توی جنی موشنی که من اجرا میکردم سایز گوشی کوچیک بود ولی واس استاد بزرگ بود واسه هعمین واسه ایشون کم ارتفاع دیده میشد.رو گوشی خودم که ارتفاعش 5 اینچ هست تست کردم ن خیلی خوب بود پس مشکلمو متوجه شدم . برای راست چین شدن هم متوجه خواهم شد.و با تشکر از شما (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .