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

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

Android編程自定義扁平化對(duì)話框示例

2019-12-12 02:34:20
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Android編程自定義扁平化對(duì)話框。分享給大家供大家參考,具體如下:

平時(shí)我們開發(fā)的大多數(shù)的Android、iOS的APP,它們的風(fēng)格都是擬物化設(shè)計(jì)。如Android 4.X、iOS 7、WP8采用的是扁平化設(shè)計(jì),可以看出扁平化設(shè)計(jì)是未來UI設(shè)計(jì)的趨勢(shì)。其實(shí)扁平化設(shè)計(jì)要比擬物化設(shè)計(jì)要簡(jiǎn)單一點(diǎn),扁平化設(shè)計(jì)更加的簡(jiǎn)約,給人視覺上更加舒服。

Shamoo想到在Android平臺(tái)上弄一個(gè)扁平化的對(duì)話框。參考過一篇帖子,然后改了一下。

這個(gè)Demo比較簡(jiǎn)單,首先是一個(gè)dialog的布局文件,這個(gè)dialog的布局要實(shí)例化成對(duì)話框可以通過AlertDialog.Builder的setView方法,將LayoutInflater實(shí)例化的dialog布局設(shè)置對(duì)話框具體顯示內(nèi)容。效果圖如下:

下面直接貼代碼

DialogWindows.Java

package com.example.dialogwindows;import android.net.Uri;import android.os.Bundle;import android.app.Activity;import android.app.AlertDialog;import android.app.AlertDialog.Builder;import android.content.Context;import android.content.Intent;import android.view.LayoutInflater;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageButton;import android.widget.ImageView;import android.widget.Toast;public class DialogWindows extends Activity {  private Button button;  private View dialogView;  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.main);    button = (Button) findViewById(R.id.btn);    button.setOnClickListener(new OnClickListener() {      public void onClick(View v) {        Builder builder = myBuilder(DialogWindows.this);        final AlertDialog dialog = builder.show();        //點(diǎn)擊屏幕外側(cè),dialog不消失        dialog.setCanceledOnTouchOutside(false);        Button btnOK = (Button) dialogView.findViewById(R.id.btn_ok);        btnOK.setOnClickListener(new OnClickListener() {          public void onClick(View v) {            Toast.makeText(DialogWindows.this, "你點(diǎn)擊了確定按鈕", Toast.LENGTH_SHORT).show();            dialog.dismiss();          }        });        Button btnCancel = (Button) dialogView.findViewById(R.id.btn_cancel);        btnCancel.setOnClickListener(new OnClickListener() {        public void onClick(View v) {          Toast.makeText(DialogWindows.this, "你點(diǎn)擊了取消按鈕", Toast.LENGTH_SHORT).show();          dialog.dismiss();        }      });        ImageButton customviewtvimgCancel = (ImageButton) dialogView.findViewById(R.id.btn_exit);        customviewtvimgCancel.setOnClickListener(new OnClickListener() {          public void onClick(View v) {            Toast.makeText(DialogWindows.this, "你點(diǎn)擊了退出按鈕", Toast.LENGTH_SHORT).show();            dialog.dismiss();          }        });      }    });  }  protected Builder myBuilder(Context context) {    LayoutInflater inflater = getLayoutInflater();    AlertDialog.Builder builder = new AlertDialog.Builder(context);    dialogView = inflater.inflate(R.layout.dialog, null);    return builder.setView(dialogView);  }}

dialog.xml

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical" >  <!-- 標(biāo)題欄 -->  <RelativeLayout    android:id="@+id/dialog_title"    android:layout_width="fill_parent"    android:layout_height="wrap_content"    android:background="#1A94F9" >    <TextView      android:id="@+id/tv_title"      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:layout_centerVertical="true"      android:padding="10dp"      android:text="@string/about"      android:textColor="#000000" />    <ImageButton      android:id="@+id/btn_exit"      android:layout_width="40dp"      android:layout_height="40dp"      android:layout_alignParentRight="true"      android:layout_centerVertical="true"      android:background="@drawable/canceltor" />  </RelativeLayout>  <!-- 顯示的內(nèi)容 -->  <LinearLayout    android:id="@+id/dialog_msg"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:orientation="vertical"    android:layout_below="@id/dialog_title"    android:padding="20dp" >    <TextView      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:text="@string/author"      android:textColor="#ffffff" />    <TextView      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:linksClickable="true"      android:text="@string/blog"      android:textColor="#ffffff" />  </LinearLayout>  <!-- 底部按鈕 -->  <LinearLayout    android:id="@+id/customviewlayLink"    android:layout_width="fill_parent"    android:layout_height="wrap_content"    android:layout_below="@id/dialog_msg"    android:orientation="horizontal"    android:paddingLeft="20dp"    android:paddingRight="20dp"    android:paddingBottom="20dp" >    <Button      android:id="@+id/btn_ok"      android:layout_width="fill_parent"      android:layout_height="40dp"      android:background="@drawable/linkbtnbged"      android:linksClickable="true"      android:layout_weight="1"      android:layout_marginRight="10dp"      android:text="@string/btn_ok" />    <Button      android:id="@+id/btn_cancel"      android:layout_width="fill_parent"      android:layout_height="40dp"      android:linksClickable="true"      android:background="@drawable/linkbtnbged"      android:text="@string/btn_cancel"      android:layout_marginLeft="10dp"      android:layout_weight="1" />  </LinearLayout></RelativeLayout>

main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="match_parent"  android:layout_height="match_parent" >  <Button    android:id="@+id/btn"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_centerHorizontal="true"    android:layout_centerVertical="true"    android:text="@string/show_dialog" /></RelativeLayout>

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android調(diào)試技巧與常見問題解決方法匯總》、《Android基本組件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)

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

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 胶州市| 游戏| 长葛市| 西青区| 廉江市| 呼玛县| 岳阳市| 新田县| 昌江| 即墨市| 巧家县| 桐庐县| 柳州市| 叶城县| 五台县| 和静县| 莱芜市| 霍邱县| 苗栗县| 黄平县| 浠水县| 尚义县| 临桂县| 绥化市| 美姑县| 普兰店市| 龙门县| 昔阳县| 乌拉特前旗| 旌德县| 蒙城县| 长泰县| 井研县| 清水县| 永宁县| 汕头市| 唐山市| 漯河市| 沅江市| 南郑县| 体育|