全部產品
Search
文件中心

Mobile Platform as a Service:圖片彈窗

更新時間:Aug 07, 2024

AUImageDialog(原 SalesPromotionLimitDialog)提供一個帶頂部標題、三級文案、底部確認按鈕或者底部左右按鈕,且中間包含一個 ImageView 的對話方塊。該組件可用於限流的訊息提示。

效果圖

介面說明

public interface OnItemClickListener {
    void onItemClick(int index);
}

/**
 * 擷取 AUImageDialog 執行個體
 *
 * @param context context 對象
 * @return 返回一個 AUImageDialog 執行個體
 */
public static AUImageDialog getInstance(Context context)

/**
 * 關閉監聽
 *
 * @param mCloseBtnClickListener
 */
public void setCloseBtnClickListener(View.OnClickListener mCloseBtnClickListener) 


/**
 * 設定一級標題文案
 */
public void setTitle(CharSequence title) 

/**
 * 設定一級標題文案字型大小,單位為 sp
 *
 * @param size
 */
public void setTitleTextSize(float size)

/**
 * 設定一級標題可見度
 *
 * @param visibility
 */
public void setTitleTextVisibility(int visibility)
}

/**
 * 設定二級標題可見度
 *
 * @param visibility
 */
public void setSubTitleTextVisibility(int visibility)

/**
 * 設定一級標題顏色
 *
 * @param color
 */
public void setTitleTextColor(int color)

/**
 * 設定二級標題文案
 *
 * @param title
 */
public void setSubTitle(CharSequence title) 

/**
 * 設定二級標題字型大小,單位為 sp
 *
 * @param size
 */
public void setSubTitleTextSize(float size)

/**
 * 設定二級標題文案顏色
 *
 * @param color
 */
public void setSubTitleTextColor(int color) 

/**
 * 設定三級標題文案
 *
 * @param text
 */
public void setThirdTitleText(String text)

/**
 * 設定三級標題顏色
 *
 * @param color
 */
public void setThirdTitleTextColor(int color)

/**
 * 設定 ImageView 的背景
 *
 * @param drawable
 */
public void setLogoBackground(Drawable drawable)

/**
 * 設定 ImageView 的背景
 *
 * @param resid
 */
public void setLogoBackgroundResource(int resid) 

/**
 * 設定 ImageView 的背景顏色
 *
 * @param color
 */
public void setLogoBackgroundColor(int color) 

/**
 * 設定對話方塊的背景透明度
 *
 * @param alpha
 */
public void setBackgroundTransparency(float alpha)

/**
 * 返回是否使用動畫
 */
public boolean isUsdAnim() 

/**
 * 設定對話方塊顯示、消失時是否使用動畫,預設為 true
 *
 * @param usdAnim
 */
public void setUsdAnim(boolean usdAnim)

/**
 * 設定關閉按鈕是否可見
 *
 * @param visibility
 */
public void setCloseButtonVisibility(int visibility) 

/**
 * 設定確認按鈕文案
 *
 * @param text
 */
public void setConfirmBtnText(String text)


/**
 * 返回確認按鈕
 */
public Button getConfirmBtn() 

/**
 * 設定確認按鈕點擊監聽
 *
 * @param clickListener
 */
public void setOnConfirmBtnClickListener(View.OnClickListener clickListener)


/**
 * 不帶動畫的顯示對話方塊
 */
public void showWithoutAnim() 

/**
 * 設定倒計時
 * @param seconds 倒計時秒
 * @param tickColor
 * @param action
 * @param clickListener
 * @param timerListener
 */
public void showWithTimer(int seconds, String tickColor, String action, View.OnClickListener clickListener, TimerListener timerListener) 

public void showWithTimer(int seconds, View.OnClickListener clickListener, TimerListener timerListener)

/**
 * 擷取預設的倒計時顏色
 * @return
 */
public String getDefaultTimeColorStr()

/**
 * 不帶動畫的 dismiss dialog
 */
public void dismissWithoutAnim()

@Override
public void dismiss() 


public boolean isCanceledOnTouch() {
    return canceledOnTouch;
}

/**
 * 設定是否點擊中間圖片時對話方塊自動取消
 *
 * @param canceledOnTouch
 */
public void setCanceledOnTouch(boolean canceledOnTouch)


/**
 * 設定列表按鈕
 * @param buttonListInfo
 * @param listener
 */
public void setButtonListInfo(List<String> buttonListInfo, OnItemClickListener listener)

public ImageView getLogoImageView() {
    return bgImageView;
}

public TextView getTitleTextView() {
    return titleTextView_1;
}

public TextView getSubTitleTextView() {
    return titleTextView_2;
}

public TextView getThirdTitleTextView() {
    return titleTextView_3;
}

public ImageView getBottomLine() {
    return bottomLine;
}

程式碼範例

AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.showWithTimer(5, null, null);

AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setCanceledOnTouch(true);
dialog.setTitle("標題單行");
dialog.setSubTitle("說明目前狀態、提示使用者解決方案,最好不要超過兩行。");
dialog.setConfirmBtnText("行動按鈕");
dialog.showWithoutAnim();

AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setCanceledOnTouch(true);
dialog.setTitle("一級文案");
dialog.setSubTitle("二級文案");
dialog.setThirdTitleText("同意xxx協議");
dialog.setConfirmBtnText("行動按鈕");
dialog.showWithoutAnim();

AUImageDialog dialog = AUImageDialog.getInstance(this);
dialog.setTitle("標題單行");
dialog.setSubTitle("標題文字的字數盡量控制在三行內,並且單行最右側盡量不要是標點符號。");
dialog.setButtonListInfo(getData(), new AUImageDialog.OnItemClickListener() {
    @Override
    public void onItemClick(int index) {

    }
});
dialog.showWithoutAnim();