【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果_第1頁
【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果_第2頁
【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果_第3頁
【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果_第4頁
【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果_第5頁
免費預覽已結束,剩余2頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

【移動應用開發(fā)技術】怎么在android中利用ProgressDialog實現一個全屏效果

怎么在android中利用ProgressDialog實現一個全屏效果?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。ProgressDialog的創(chuàng)建方式有兩種,一種是newDialog,一種是調用Dialog的靜態(tài)方法Dialog.show()。//

方式一:new

Dialog

final

ProgressDialog

dialog

=

new

ProgressDialog(this);

dialog.show();

//

方式二:使用靜態(tài)方式創(chuàng)建并顯示,這種進度條只能是圓形條,設置title和Message提示內容

ProgressDialog

dialog2

=

ProgressDialog.show(this,

"提示",

"正在登陸中");

//

方式三

使用靜態(tài)方式創(chuàng)建并顯示,這種進度條只能是圓形條,這里最后一個參數boolean

indeterminate設置是否是不明確的狀態(tài)

ProgressDialog

dialog3

=

ProgressDialog.show(this,

"提示",

"正在登陸中",

false);

//

方式四

使用靜態(tài)方式創(chuàng)建并顯示,這種進度條只能是圓形條,這里最后一個參數boolean

cancelable

設置是否進度條是可以取消的

ProgressDialog

dialog4

=

ProgressDialog.show(this,

"提示",

"正在登陸中",

false,

true);

//

方式五

使用靜態(tài)方式創(chuàng)建并顯示,這種進度條只能是圓形條,這里最后一個參數

DialogInterface.OnCancelListener

//

cancelListener用于監(jiān)聽進度條被取消

ProgressDialog

dialog5

=

ProgressDialog.show(this,

"提示",

"正在登陸中",

true,

true,

cancelListener);方式五中需要一個cancelListener,代碼如下:private

OnCancelListener

cancelListener

=

new

OnCancelListener()

{

@Override

public

void

onCancel(DialogInterface

dialog)

{

//

TODO

Auto-generated

method

stub

Toast.makeText(MainActivity.this,

"進度條被取消",

Toast.LENGTH_LONG).show();

}

};本文的知識點:1、實現ProgressDialog的全屏效果2、接口回調推薦的方式項目要求實現的效果.png剛開始實現的效果.png代碼實現:1、布局<?xml

version="1.0"

encoding="utf-8"?>

<LinearLayout

xmlns:android="/apk/res/android"

android:orientation="vertical"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:gravity="center">

<work.tool.AnimImageViewLoader

android:id="@+id/iv_load_anim"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="@drawable/anim_all_load"/>

<TextView

android:id="@+id/tv_all_load"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/tip_load_pay_wait_result"

android:textSize="26sp"

android:textColor="@color/c_white"

android:layout_marginTop="20dp"/>

<TextView

android:id="@+id/tv_all_load_other"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/tip_load_pay_wait_tip"

android:textSize="26sp"

android:textColor="@color/c_orange_1"

android:layout_marginTop="20dp"/>

<Button

android:id="@+id/btn_cancel"

android:layout_height="75dp"

android:layout_width="600dp"

android:layout_marginTop="20dp"

android:text="取消查詢"

android:background="@drawable/btn_white_gray7_selector"

android:textColor="#000000"

android:textSize="30sp"

/>

</LinearLayout>2、核心代碼

Window

window

=

getWindow();

WindowManager.LayoutParams

layoutParams

=

window.getAttributes();

layoutParams.width

=

WindowManager.LayoutParams.MATCH_PARENT;

layoutParams.height

=

WindowManager.LayoutParams.MATCH_PARENT;

layoutParams.gravity

=

gravity;

window.setAttributes(layoutParams);3、接口回調的實現方式

public

OnClickCancelListener

mOnClickCancelListener;

public

void

setOnClickCancelListener(OnClickCancelListener

onClickCancelListener){

this.mOnClickCancelListener

=

onClickCancelListener;

}

public

interface

OnClickCancelListener{

void

singleClick();

}4、接口回調的調用方式mLoadingProgressDialog.setOnClickCancelListener(new

LoadingProgressDialog.OnClickCancelListener()

{

@Override

public

void

singleClick()

{

LogUtil.d(TAG,"點擊取消查詢===========");

isContinueQuery

=

true;

dismissPayResultLoadingDialog();

}

});5、全部代碼實現public

class

LoadingProgressDialog

extends

ProgressDialog

{

private

static

final

String

TAG

=

LoadingProgressDialog.class.getSimpleName();

public

LoadingProgressDialog(Context

context)

{

super(context,R.style.style_custon_dialog);

setCancelable(false);

setCanceledOnTouchOutside(false);

}

@Override

protected

void

onCreate(Bundle

savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.custom_dialog_all_loading);

Window

window

=

getWindow();

WindowManager.LayoutParams

layoutParams

=

window.getAttributes();

layoutParams.width

=

WindowManager.LayoutParams.MATCH_PARENT;

layoutParams.height

=

WindowManager.LayoutParams.MATCH_PARENT;

layoutParams.gravity

=

gravity;

window.setAttributes(layoutParams);

Button

benCancel

=

(Button)

findViewById(R.id.btn_cancel);

benCancel.setOnClickListener(new

View.OnClickListener()

{

@Override

public

void

onClick(View

v)

{

LogUtil.d(TAG,"benCancel================");

mOnClickCancelListener.singleClick();

}

});

}

public

OnClickCancelListener

m

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論