安卓:在下载应用显示通知栏(Android: show notification bar on do

2019-06-25 15:57发布

我想说明的通知栏时,应用程序在Android的下载。 我想吧是一样的一个表明,当一个应用程序从市场下载。 任何帮助吗?

Answer 1:

我觉得这个链接可以帮助你: http://united-coders.com/nico-heid/show-progressbar-in-notification-area-like-google-does-when-downloading-from-android

这是download_progress(并更改进度条的风格,用自己android:progressDrawable

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:padding="5dp">

<TextView android:id="@+id/status_text" android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:layout_alignParentTop="true"
    android:text="@string/download_notification_message" />

<ProgressBar android:id="@+id/status_progress"
    android:layout_width="fill_parent" android:layout_height="5dp"
    android:layout_below="@id/status_text"
    android:layout_marginTop="10dp"
    android:progressDrawable="@drawable/notification_progress_bar"
    style="@android:style/Widget.ProgressBar.Horizontal"
    android:indeterminate="false" android:indeterminateOnly="false" />   </RelativeLayout> 

notification_progress_bar:

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android">   
 <item android:id="@android:id/background">
    <shape>
        <gradient
                android:startColor="#000001"
                android:centerColor="#0b131e"
                android:centerY="0.75"
                android:endColor="#0d1522"
                android:angle="270"
        />
    </shape>
</item>
<item android:id="@android:id/secondaryProgress">
    <clip>
        <shape>
            <gradient
                    android:startColor="#234"
                    android:centerColor="#234"
                    android:centerY="0.75"
                    android:endColor="#a24"
                    android:angle="270"
            />
        </shape>
    </clip>
</item>

<item  
    android:id="@android:id/progress">  
    <clip>  
        <shape>   
            <gradient  
                    android:startColor="#44000000"  
                    android:centerColor="#44000000"  
                    android:centerY="0.75"  
                    android:endColor="#44000000"  
                    android:angle="270"  
            />  
        </shape>  
    </clip>  
</item>  



Answer 2:

试用通知栏的代码

void showProgress(String file_path){
        dialog = new Dialog(DownloadFileDemo1.this);
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        dialog.setContentView(R.layout.myprogressdialog);
        dialog.setTitle("Download Progress");

        TextView text = (TextView) dialog.findViewById(R.id.tv1);
        text.setText("Downloading file from ... " + file_path);
        cur_val = (TextView) dialog.findViewById(R.id.cur_pg_tv);
        cur_val.setText("Starting download...");
        dialog.show();

        pb = (ProgressBar)dialog.findViewById(R.id.progress_bar);
        pb.setProgress(0);
        pb.setProgressDrawable(getResources().getDrawable(R.drawable.green_progress));
    }


文章来源: Android: show notification bar on downloading application