国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

詳解android dialog自定義實例

2020-02-21 17:36:05
字體:
供稿:網(wǎng)友

現(xiàn)在很多應(yīng)用程序的提示對話框都很有個性的,如果你使用的對話框樣子還是傳統(tǒng)的對話框,是不是有點LOST了呢?今天武林技術(shù)頻道小編就給大家講講詳解android dialog自定義實例。
第一個需求:簡單的自定義dialog
需求:創(chuàng)建一個dialog,該dialog具備以下功能
1.有一個窗口可以顯示文章
2.根據(jù)需求顯示
1)點擊同意(不同意),觸發(fā)對應(yīng)的事件(同意的事件會彈出一個Toast,不同意則會關(guān)閉程序)
2)點擊關(guān)閉,關(guān)閉dialog
1.在main.xml文件中設(shè)定一個按鈕,點擊會彈出dialog

復(fù)制代碼 代碼如下:

xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >


2.創(chuàng)建dialog的內(nèi)容布局,布局中設(shè)定了使用相對布局設(shè)定了三個按鈕,其中兩個一起出現(xiàn)(同意和不同意),另外一個單獨出現(xiàn)(關(guān)閉)默認是兩個出現(xiàn)

?

復(fù)制代碼 代碼如下:

?


private TextView btnClose = null;
private TextView btnAgree = null;
private TextView btnDisagree = null;
private WebView mWebView = null;
public MyDialog(Context context) {
super(context, R.style.item_tnc_dialog);
setCancelable(false); // 阻止返回鍵的響應(yīng)
setContentView(R.layout.dialog_view);
getWindow().setLayout(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
setUpView();
}
private void setUpView() {
mWebView = (WebView) findViewById(R.id.item_tnc_dialog_webview);
btnClose = (TextView) findViewById(R.id.item_tnc_dialog_close);
btnAgree = (TextView) findViewById(R.id.item_tnc_dialog_agree);
btnDisagree = (TextView) findViewById(R.id.item_tnc_dialog_disagree);
btnClose.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
dismiss();
}
});
btnDisagree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
System.exit(0);
}
});
btnAgree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getContext(), "YOU SELECTED AGREE",
Toast.LENGTH_SHORT).show();
dismiss();
}
});
showDialog();
}
/** 加載webview的內(nèi)容 */
public void showDialog() {
String localHtml = "file:///android_asset/los.html";
if (mWebView != null) {
mWebView.getSettings().setDefaultTextEncodingName("utf-8");
mWebView.loadUrl(localHtml);
}
buttonsDisplayTwo(false);
}
/** 當(dāng)true的時候,出現(xiàn)同意和不同意兩個選項,反之是關(guān)閉選項 */
private void buttonsDisplayTwo(boolean two) {
btnAgree.setVisibility(two ? View.VISIBLE : View.GONE);
btnDisagree.setVisibility(two ? View.VISIBLE : View.GONE);
btnClose.setVisibility(two ? View.GONE : View.VISIBLE);
}


3.main.activity的代碼就不寫了。。直接寫自定義的dialog代碼

?

復(fù)制代碼 代碼如下:

?


private TextView btnClose = null;
private TextView btnAgree = null;
private TextView btnDisagree = null;
private WebView mWebView = null;
public MyDialog(Context context) {
super(context, R.style.item_tnc_dialog);
setCancelable(false); // 阻止返回鍵的響應(yīng)
setContentView(R.layout.dialog_view);
getWindow().setLayout(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
setUpView();
}
private void setUpView() {
mWebView = (WebView) findViewById(R.id.item_tnc_dialog_webview);
btnClose = (TextView) findViewById(R.id.item_tnc_dialog_close);
btnAgree = (TextView) findViewById(R.id.item_tnc_dialog_agree);
btnDisagree = (TextView) findViewById(R.id.item_tnc_dialog_disagree);
btnClose.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
dismiss();
}
});
btnDisagree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
System.exit(0);
}
});
btnAgree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getContext(), "YOU SELECTED AGREE",
Toast.LENGTH_SHORT).show();
dismiss();
}
});
showDialog();
}
/** 加載webview的內(nèi)容 */
public void showDialog() {
String localHtml = "file:///android_asset/los.html";
if (mWebView != null) {
mWebView.getSettings().setDefaultTextEncodingName("utf-8");
mWebView.loadUrl(localHtml);
}
buttonsDisplayTwo(false);
}
/** 當(dāng)true的時候,出現(xiàn)同意和不同意兩個選項,反之是關(guān)閉選項 */
private void buttonsDisplayTwo(boolean two) {
btnAgree.setVisibility(two ? View.VISIBLE : View.GONE);
btnDisagree.setVisibility(two ? View.VISIBLE : View.GONE);
btnClose.setVisibility(two ? View.GONE : View.VISIBLE);
}

以上就是詳解android dialog自定義實例的介紹,更多內(nèi)容請繼續(xù)關(guān)注武林技術(shù)頻道!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 长春市| 榆林市| 桃园市| 峨眉山市| 泰顺县| 温宿县| 资源县| 都兰县| 斗六市| 彭山县| 雷州市| 邢台市| 太白县| 襄城县| 黑山县| 正宁县| 榕江县| 黄陵县| 合肥市| 丹凤县| 修文县| 平潭县| 中卫市| 德清县| 历史| 云林县| 巴林左旗| 常熟市| 垣曲县| 旺苍县| 繁峙县| 大庆市| 安宁市| 黄龙县| 磐石市| 望城县| 鱼台县| 芷江| 平遥县| 五峰| 松溪县|