Android自定義dialog 自下往上彈出的實例代碼
更新時間:2018年08月10日 17:09:39 作者:小周郎
本文通過實例代碼給大家介紹了Android自定義dialog 自下往上彈出效果,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
具體代碼如下所示:
package com.example.idmin.myapplication.wiget; import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.view.WindowManager; import android.widget.TextView; import com.example.idmin.myapplication.R; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; public class BottomDialog extends Dialog { @BindView(R.id.chang) TextView chang; @BindView(R.id.exite) TextView exite; @BindView(R.id.cancel) TextView cancel; private BottomDialogAlertListener listener; private Object param; private String text1; private String text2; private String cansleText; public BottomDialog(Context context, BottomDialogAlertListener listener, Object param, String text1, String text2, String cansleText) { super(context, R.style.dialog1); this.listener = listener; this.param = param; this.text1 = text1; this.text2 = text2; this.cansleText = cansleText; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog_bottom); ButterKnife.bind(this); setCancelable(false); setCanceledOnTouchOutside(false); if (listener != null) { listener.onDialogCreate(this, param); } setView(); } private void setView() { chang.setText(text1); exite.setText(text2); cancel.setText(cansleText); } @OnClick({R.id.chang, R.id.exite, R.id.cancel}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.chang: if (listener != null) { listener.chenge(this,param); } break; case R.id.exite: if (listener != null) { listener.excite(this,param); } break; case R.id.cancel: if (listener != null) { listener.cancel(this,param); } break; } } @Override public void show() { super.show(); /** * 設置寬度全屏,要設置在show的后面 */ WindowManager.LayoutParams layoutParams = getWindow().getAttributes(); layoutParams.gravity = Gravity.BOTTOM; layoutParams.width = WindowManager.LayoutParams.MATCH_PARENT; layoutParams.height = WindowManager.LayoutParams.WRAP_CONTENT; getWindow().getDecorView().setPadding(0, 0, 0, 0); getWindow().setAttributes(layoutParams); } } <!-- 自定義dialog樣式 --> <style name="dialog1" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">false</item> <item name="android:windowNoTitle">true</item> <item name="android:background">@android:color/transparent</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:layout_width">match_parent</item> <!-- 進入和退出的動畫 --> <item name="android:windowAnimationStyle">@style/BottomDialogAnimation</item> </style> <!-- 進入和退出的動畫 --> <style name="BottomDialogAnimation"> <!--進入 --> <item name="android:windowEnterAnimation">@anim/dialog_enter_from_bottom</item> <!--退出--> <item name="android:windowExitAnimation">@anim/dialog_exit_to_bottom</item> </style> <!--dialog_enter_from_bottom --> <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:duration="200" android:fromYDelta="100%p" android:toYDelta="0"></translate> </set> <!--dialog_exit_to_bottom --> <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:duration="200" android:fromYDelta="0" android:toYDelta="100%p"></translate> </set>
總結(jié)
以上所述是小編給大家介紹的Android自定義dialog 自下往上彈出的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:
- Android自定義Dialog的2種常見方法
- Android自定義Dialog框樣式
- Android自定義Dialog原理實例解析
- Android 自定義加載動畫Dialog彈窗效果的示例代碼
- Android自定義底部彈出框ButtomDialog
- android自定義Dialog彈框和背景陰影顯示效果
- Android自定義Dialog實現(xiàn)通用圓角對話框
- Android 自定義Dialog去除title導航欄的解決方法
- Android自定義Dialog實現(xiàn)加載對話框效果
- Android編程自定義AlertDialog樣式的方法詳解
- 解決Android中自定義DialogFragment解決寬度和高度問題
- Android?自定義?Dialog?實現(xiàn)列表?單選、多選、搜索功能
相關(guān)文章
Java4Android開發(fā)教程(五)java的基本數(shù)據(jù)類型特征
這篇文章主要介紹了Java4Android開發(fā)教程的第五篇文章java的基本數(shù)據(jù)類型特征,需要的朋友可以參考下2014-10-10Android+SQLite數(shù)據(jù)庫實現(xiàn)的生詞記事本功能實例
這篇文章主要介紹了Android+SQLite數(shù)據(jù)庫實現(xiàn)的生詞記事本功能,結(jié)合具體實例形式分析了Android操作SQLite數(shù)據(jù)庫實現(xiàn)生詞記錄功能的操作步驟與相關(guān)注意事項,需要的朋友可以參考下2017-09-09Android下拉刷新SwipeRefreshLayout控件使用方法
這篇文章主要介紹了Android下拉刷新SwipeRefreshLayout控件使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11Android開發(fā)技巧之在a標簽或TextView控件中單擊鏈接彈出Activity(自定義動作)
a標簽以及TextView自動識別的特殊文本(網(wǎng)址、電話號、Email等),這些都可以通過單擊來觸發(fā)不同的動作;但如果讀者想在單擊鏈接時執(zhí)行任意自定義的動作,那么將要介紹的一定是你想要的了2013-01-01