国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Android 開(kāi)發(fā)使用PopupWindow實(shí)現(xiàn)彈出警告框的復(fù)用類(lèi)示例

瀏覽:44日期:2022-09-24 10:02:39

本文實(shí)例講述了Android 開(kāi)發(fā)使用PopupWindow實(shí)現(xiàn)彈出警告框的復(fù)用類(lèi)。分享給大家供大家參考,具體如下:

Android開(kāi)發(fā)中相信下圖所示界面大家都不陌生,該種彈出框的使用頻率也是極高的,所以我專門(mén)謝了個(gè)類(lèi)用于方便的彈出該界面。并把確定或取消后的邏輯通過(guò)抽象方法的方式讓用戶自己實(shí)現(xiàn),大大提高了開(kāi)發(fā)效率。下面是該類(lèi):

Android 開(kāi)發(fā)使用PopupWindow實(shí)現(xiàn)彈出警告框的復(fù)用類(lèi)示例

package com.***.popupwindow;import ******;public abstract class MyPopupWindow { private PopupWindow popupWindow; private Activity context; private String content; private String positiveWord = '確定'; private String negativeWord = '取消'; /** * 構(gòu)造函數(shù) * * @param context */ public MyPopupWindow(Activity context) { this.context = context; } /** * 顯示警示框 */ public void show() { View popView = View.inflate(context, R.layout.popup, null); popupWindow = new PopupWindow(context); popupWindow.setHeight(400); popupWindow.setWidth(700); popupWindow.setOutsideTouchable(true); popupWindow.setFocusable(true); popupWindow.setContentView(popView); popupWindow.showAtLocation(context.getWindow().getDecorView(), Gravity.CENTER, 0, 0); TextView tv_pop_text = (TextView) popView.findViewById(R.id.tv_pop_text); tv_pop_text.setText(content); Button bt_pop_sure = (Button) popView.findViewById(R.id.bt_pop_sure); bt_pop_sure.setText(positiveWord); bt_pop_sure.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {sureClick(); } }); Button bt_pop_cancel = (Button) popView.findViewById(R.id.bt_pop_cancel); bt_pop_cancel.setText(negativeWord); bt_pop_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {cancelClick(); } }); } /** * 確定鍵按下后執(zhí)行 */ public abstract void sureClick(); /** * 取消鍵按下后執(zhí)行 */ public abstract void cancelClick(); /** * 為警示設(shè)置警示內(nèi)容 * * @param content */ public void setContent(String content) { this.content = content; } /** * 設(shè)置確定鍵文字 * * @param positiveWord */ public void setPositiveWord(String positiveWord) { this.positiveWord = positiveWord; } /** * 設(shè)置取消鍵文字 * * @param negativeWord */ public void setNegativeWord(String negativeWord) { this.negativeWord = negativeWord; } /** * 手動(dòng)取消警示框 */ public void dismiss() { popupWindow.dismiss(); }}

其中彈出框用到的布局popup.xml代碼如下:

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' android:layout_width='match_parent' android:layout_height='match_parent' android:background='@android:color/white' android:orientation='vertical'> <TextView android: android:layout_width='match_parent' android:layout_height='wrap_content' android:layout_weight='1' android:gravity='center'/> <TextView android:layout_width='match_parent' android:layout_height='1px' android:background='@android:color/darker_gray'/> <LinearLayout android:layout_width='match_parent' android:layout_height='wrap_content' android:orientation='horizontal'> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:background='@android:color/transparent' android:layout_weight='1'/> <TextView android:layout_width='1px' android:layout_height='match_parent' android:background='@android:color/darker_gray'/> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:background='@android:color/transparent' android:layout_weight='1'/> </LinearLayout></LinearLayout>

下面簡(jiǎn)單的使用一下:在界面放一個(gè)按鈕,按鈕點(diǎn)擊后彈出警告框。代碼如下:

package com.toprs.popupwindow;import android.graphics.Color;import android.graphics.drawable.ColorDrawable;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.AttributeSet;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.ListView;import android.widget.PopupWindow;import android.widget.SeekBar;import android.widget.Toast;public class MainActivity extends AppCompatActivity { private PopupWindow popupWindow; private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {MyPopupWindow myPopupWindow = new MyPopupWindow(MainActivity.this) { @Override public void sureClick() { Toast.makeText(MainActivity.this, '確定', Toast.LENGTH_SHORT).show(); } @Override public void cancelClick() { Toast.makeText(MainActivity.this, '取消', Toast.LENGTH_SHORT).show(); }};myPopupWindow.setContent('確定退出?');myPopupWindow.show(); } }); }}

即如下效果:

Android 開(kāi)發(fā)使用PopupWindow實(shí)現(xiàn)彈出警告框的復(fù)用類(lèi)示例

So,以后使用只需要簡(jiǎn)單調(diào)用幾句代碼就好了!

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android開(kāi)發(fā)入門(mén)與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》及《Android資源操作技巧匯總》

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 欧美成人精品福利在线视频 | 九九在线精品视频播放 | 美女黄网站视频 | 免费国产高清精品一区在线 | 国产日韩欧美在线一二三四 | 久久国产精彩视频 | 欧美三级不卡在线观看视频 | 可以免费观看欧美一级毛片 | 在线视频精品视频 | 国产女人在线视频 | 奇米四色综合久久天天爱 | 中文字幕亚洲另类天堂 | 国产精品成人免费视频 | 成年网在线观看免费观看网址 | 久草在线视频看看 | 美女黄色在线看 | 99久久精品国产一区二区成人 | 久久成年视频 | 日本欧美一区二区三区高清 | 亚洲欧美不卡中文字幕 | 日本精品一区二区三区在线 | 亚洲欧美精品中字久久99 | 欧洲做人爱c欧美 | 91伊人影院 | 亚洲精品一区亚洲精品 | 中文字幕在线不卡 | 亚洲人成网国产最新在线 | 日韩专区亚洲综合久久 | a级高清免费 | 久久精品免费全国观看国产 | 成人免费国产欧美日韩你懂的 | 久久精品国产一区 | 中文字幕亚洲精品久久 | 无码精品一区二区三区免费视频 | 三级网站视频在线观看 | 成人在线黄色 | 国产成人精品免费久久久久 | 国产乱码精品一区二区三区卡 | 日韩一区三区 | 欧美最黄视频 | 久久精品一品道久久精品9 久久精品一区 |